18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ci%YAML 1.2
38c2ecf20Sopenharmony_ci---
48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/clock/qcom,sdm845-dispcc.yaml#
58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_cititle: Qualcomm Display Clock & Reset Controller Binding for SDM845
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_cimaintainers:
108c2ecf20Sopenharmony_ci  - Taniya Das <tdas@codeaurora.org>
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_cidescription: |
138c2ecf20Sopenharmony_ci  Qualcomm display clock control module which supports the clocks, resets and
148c2ecf20Sopenharmony_ci  power domains on SDM845.
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ci  See also dt-bindings/clock/qcom,dispcc-sdm845.h.
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_ciproperties:
198c2ecf20Sopenharmony_ci  compatible:
208c2ecf20Sopenharmony_ci    const: qcom,sdm845-dispcc
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ci  # NOTE: sdm845.dtsi existed for quite some time and specified no clocks.
238c2ecf20Sopenharmony_ci  # The code had to use hardcoded mechanisms to find the input clocks.
248c2ecf20Sopenharmony_ci  # New dts files should have these clocks.
258c2ecf20Sopenharmony_ci  clocks:
268c2ecf20Sopenharmony_ci    items:
278c2ecf20Sopenharmony_ci      - description: Board XO source
288c2ecf20Sopenharmony_ci      - description: GPLL0 source from GCC
298c2ecf20Sopenharmony_ci      - description: GPLL0 div source from GCC
308c2ecf20Sopenharmony_ci      - description: Byte clock from DSI PHY0
318c2ecf20Sopenharmony_ci      - description: Pixel clock from DSI PHY0
328c2ecf20Sopenharmony_ci      - description: Byte clock from DSI PHY1
338c2ecf20Sopenharmony_ci      - description: Pixel clock from DSI PHY1
348c2ecf20Sopenharmony_ci      - description: Link clock from DP PHY
358c2ecf20Sopenharmony_ci      - description: VCO DIV clock from DP PHY
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ci  clock-names:
388c2ecf20Sopenharmony_ci    items:
398c2ecf20Sopenharmony_ci      - const: bi_tcxo
408c2ecf20Sopenharmony_ci      - const: gcc_disp_gpll0_clk_src
418c2ecf20Sopenharmony_ci      - const: gcc_disp_gpll0_div_clk_src
428c2ecf20Sopenharmony_ci      - const: dsi0_phy_pll_out_byteclk
438c2ecf20Sopenharmony_ci      - const: dsi0_phy_pll_out_dsiclk
448c2ecf20Sopenharmony_ci      - const: dsi1_phy_pll_out_byteclk
458c2ecf20Sopenharmony_ci      - const: dsi1_phy_pll_out_dsiclk
468c2ecf20Sopenharmony_ci      - const: dp_link_clk_divsel_ten
478c2ecf20Sopenharmony_ci      - const: dp_vco_divided_clk_src_mux
488c2ecf20Sopenharmony_ci
498c2ecf20Sopenharmony_ci  '#clock-cells':
508c2ecf20Sopenharmony_ci    const: 1
518c2ecf20Sopenharmony_ci
528c2ecf20Sopenharmony_ci  '#reset-cells':
538c2ecf20Sopenharmony_ci    const: 1
548c2ecf20Sopenharmony_ci
558c2ecf20Sopenharmony_ci  '#power-domain-cells':
568c2ecf20Sopenharmony_ci    const: 1
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ci  reg:
598c2ecf20Sopenharmony_ci    maxItems: 1
608c2ecf20Sopenharmony_ci
618c2ecf20Sopenharmony_cirequired:
628c2ecf20Sopenharmony_ci  - compatible
638c2ecf20Sopenharmony_ci  - reg
648c2ecf20Sopenharmony_ci  - clocks
658c2ecf20Sopenharmony_ci  - clock-names
668c2ecf20Sopenharmony_ci  - '#clock-cells'
678c2ecf20Sopenharmony_ci  - '#reset-cells'
688c2ecf20Sopenharmony_ci  - '#power-domain-cells'
698c2ecf20Sopenharmony_ci
708c2ecf20Sopenharmony_ciadditionalProperties: false
718c2ecf20Sopenharmony_ci
728c2ecf20Sopenharmony_ciexamples:
738c2ecf20Sopenharmony_ci  - |
748c2ecf20Sopenharmony_ci    #include <dt-bindings/clock/qcom,gcc-sdm845.h>
758c2ecf20Sopenharmony_ci    #include <dt-bindings/clock/qcom,rpmh.h>
768c2ecf20Sopenharmony_ci    clock-controller@af00000 {
778c2ecf20Sopenharmony_ci      compatible = "qcom,sdm845-dispcc";
788c2ecf20Sopenharmony_ci      reg = <0x0af00000 0x10000>;
798c2ecf20Sopenharmony_ci      clocks = <&rpmhcc RPMH_CXO_CLK>,
808c2ecf20Sopenharmony_ci               <&gcc GCC_DISP_GPLL0_CLK_SRC>,
818c2ecf20Sopenharmony_ci               <&gcc GCC_DISP_GPLL0_DIV_CLK_SRC>,
828c2ecf20Sopenharmony_ci               <&dsi0_phy 0>,
838c2ecf20Sopenharmony_ci               <&dsi0_phy 1>,
848c2ecf20Sopenharmony_ci               <&dsi1_phy 0>,
858c2ecf20Sopenharmony_ci               <&dsi1_phy 1>,
868c2ecf20Sopenharmony_ci               <&dp_phy 0>,
878c2ecf20Sopenharmony_ci               <&dp_phy 1>;
888c2ecf20Sopenharmony_ci      clock-names = "bi_tcxo",
898c2ecf20Sopenharmony_ci                    "gcc_disp_gpll0_clk_src",
908c2ecf20Sopenharmony_ci                    "gcc_disp_gpll0_div_clk_src",
918c2ecf20Sopenharmony_ci                    "dsi0_phy_pll_out_byteclk",
928c2ecf20Sopenharmony_ci                    "dsi0_phy_pll_out_dsiclk",
938c2ecf20Sopenharmony_ci                    "dsi1_phy_pll_out_byteclk",
948c2ecf20Sopenharmony_ci                    "dsi1_phy_pll_out_dsiclk",
958c2ecf20Sopenharmony_ci                    "dp_link_clk_divsel_ten",
968c2ecf20Sopenharmony_ci                    "dp_vco_divided_clk_src_mux";
978c2ecf20Sopenharmony_ci      #clock-cells = <1>;
988c2ecf20Sopenharmony_ci      #reset-cells = <1>;
998c2ecf20Sopenharmony_ci      #power-domain-cells = <1>;
1008c2ecf20Sopenharmony_ci    };
1018c2ecf20Sopenharmony_ci...
102