xref: /freebsd/sys/contrib/device-tree/Bindings/clock/qcom,dispcc-sm6125.yaml (revision aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145)
1c9ccf3a3SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2c9ccf3a3SEmmanuel Vadot%YAML 1.2
3c9ccf3a3SEmmanuel Vadot---
4c9ccf3a3SEmmanuel Vadot$id: http://devicetree.org/schemas/clock/qcom,dispcc-sm6125.yaml#
5c9ccf3a3SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6c9ccf3a3SEmmanuel Vadot
78bab661aSEmmanuel Vadottitle: Qualcomm Display Clock Controller on SM6125
8c9ccf3a3SEmmanuel Vadot
9c9ccf3a3SEmmanuel Vadotmaintainers:
10c9ccf3a3SEmmanuel Vadot  - Martin Botka <martin.botka@somainline.org>
11c9ccf3a3SEmmanuel Vadot
12c9ccf3a3SEmmanuel Vadotdescription: |
138bab661aSEmmanuel Vadot  Qualcomm display clock control module provides the clocks and power domains
148bab661aSEmmanuel Vadot  on SM6125.
15c9ccf3a3SEmmanuel Vadot
168bab661aSEmmanuel Vadot  See also:: include/dt-bindings/clock/qcom,dispcc-sm6125.h
17c9ccf3a3SEmmanuel Vadot
18c9ccf3a3SEmmanuel Vadotproperties:
19c9ccf3a3SEmmanuel Vadot  compatible:
20c9ccf3a3SEmmanuel Vadot    enum:
21c9ccf3a3SEmmanuel Vadot      - qcom,sm6125-dispcc
22c9ccf3a3SEmmanuel Vadot
23c9ccf3a3SEmmanuel Vadot  clocks:
24c9ccf3a3SEmmanuel Vadot    items:
25c9ccf3a3SEmmanuel Vadot      - description: Board XO source
26c9ccf3a3SEmmanuel Vadot      - description: Byte clock from DSI PHY0
27c9ccf3a3SEmmanuel Vadot      - description: Pixel clock from DSI PHY0
28c9ccf3a3SEmmanuel Vadot      - description: Pixel clock from DSI PHY1
29c9ccf3a3SEmmanuel Vadot      - description: Link clock from DP PHY
30c9ccf3a3SEmmanuel Vadot      - description: VCO DIV clock from DP PHY
31c9ccf3a3SEmmanuel Vadot      - description: AHB config clock from GCC
32*aa1a8ff2SEmmanuel Vadot      - description: GPLL0 div source from GCC
33c9ccf3a3SEmmanuel Vadot
34c9ccf3a3SEmmanuel Vadot  clock-names:
35c9ccf3a3SEmmanuel Vadot    items:
36c9ccf3a3SEmmanuel Vadot      - const: bi_tcxo
37c9ccf3a3SEmmanuel Vadot      - const: dsi0_phy_pll_out_byteclk
38c9ccf3a3SEmmanuel Vadot      - const: dsi0_phy_pll_out_dsiclk
39c9ccf3a3SEmmanuel Vadot      - const: dsi1_phy_pll_out_dsiclk
40c9ccf3a3SEmmanuel Vadot      - const: dp_phy_pll_link_clk
41c9ccf3a3SEmmanuel Vadot      - const: dp_phy_pll_vco_div_clk
42c9ccf3a3SEmmanuel Vadot      - const: cfg_ahb_clk
43*aa1a8ff2SEmmanuel Vadot      - const: gcc_disp_gpll0_div_clk_src
44c9ccf3a3SEmmanuel Vadot
45c9ccf3a3SEmmanuel Vadot  '#clock-cells':
46c9ccf3a3SEmmanuel Vadot    const: 1
47c9ccf3a3SEmmanuel Vadot
48c9ccf3a3SEmmanuel Vadot  '#power-domain-cells':
49c9ccf3a3SEmmanuel Vadot    const: 1
50c9ccf3a3SEmmanuel Vadot
51*aa1a8ff2SEmmanuel Vadot  power-domains:
52*aa1a8ff2SEmmanuel Vadot    description:
53*aa1a8ff2SEmmanuel Vadot      A phandle and PM domain specifier for the CX power domain.
54*aa1a8ff2SEmmanuel Vadot    maxItems: 1
55*aa1a8ff2SEmmanuel Vadot
56*aa1a8ff2SEmmanuel Vadot  required-opps:
57*aa1a8ff2SEmmanuel Vadot    description:
58*aa1a8ff2SEmmanuel Vadot      A phandle to an OPP node describing the power domain's performance point.
59*aa1a8ff2SEmmanuel Vadot    maxItems: 1
60*aa1a8ff2SEmmanuel Vadot
61c9ccf3a3SEmmanuel Vadot  reg:
62c9ccf3a3SEmmanuel Vadot    maxItems: 1
63c9ccf3a3SEmmanuel Vadot
64c9ccf3a3SEmmanuel Vadotrequired:
65c9ccf3a3SEmmanuel Vadot  - compatible
66c9ccf3a3SEmmanuel Vadot  - reg
67c9ccf3a3SEmmanuel Vadot  - clocks
68c9ccf3a3SEmmanuel Vadot  - clock-names
69c9ccf3a3SEmmanuel Vadot  - '#clock-cells'
70c9ccf3a3SEmmanuel Vadot  - '#power-domain-cells'
71c9ccf3a3SEmmanuel Vadot
72c9ccf3a3SEmmanuel VadotadditionalProperties: false
73c9ccf3a3SEmmanuel Vadot
74c9ccf3a3SEmmanuel Vadotexamples:
75c9ccf3a3SEmmanuel Vadot  - |
76c9ccf3a3SEmmanuel Vadot    #include <dt-bindings/clock/qcom,rpmcc.h>
77c9ccf3a3SEmmanuel Vadot    #include <dt-bindings/clock/qcom,gcc-sm6125.h>
78*aa1a8ff2SEmmanuel Vadot    #include <dt-bindings/power/qcom-rpmpd.h>
79c9ccf3a3SEmmanuel Vadot    clock-controller@5f00000 {
80c9ccf3a3SEmmanuel Vadot      compatible = "qcom,sm6125-dispcc";
81c9ccf3a3SEmmanuel Vadot      reg = <0x5f00000 0x20000>;
82*aa1a8ff2SEmmanuel Vadot
83c9ccf3a3SEmmanuel Vadot      clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
84c9ccf3a3SEmmanuel Vadot               <&dsi0_phy 0>,
85c9ccf3a3SEmmanuel Vadot               <&dsi0_phy 1>,
86c9ccf3a3SEmmanuel Vadot               <&dsi1_phy 1>,
87c9ccf3a3SEmmanuel Vadot               <&dp_phy 0>,
88c9ccf3a3SEmmanuel Vadot               <&dp_phy 1>,
89*aa1a8ff2SEmmanuel Vadot               <&gcc GCC_DISP_AHB_CLK>,
90*aa1a8ff2SEmmanuel Vadot               <&gcc GCC_DISP_GPLL0_DIV_CLK_SRC>;
91c9ccf3a3SEmmanuel Vadot      clock-names = "bi_tcxo",
92c9ccf3a3SEmmanuel Vadot                    "dsi0_phy_pll_out_byteclk",
93c9ccf3a3SEmmanuel Vadot                    "dsi0_phy_pll_out_dsiclk",
94c9ccf3a3SEmmanuel Vadot                    "dsi1_phy_pll_out_dsiclk",
95c9ccf3a3SEmmanuel Vadot                    "dp_phy_pll_link_clk",
96c9ccf3a3SEmmanuel Vadot                    "dp_phy_pll_vco_div_clk",
97*aa1a8ff2SEmmanuel Vadot                    "cfg_ahb_clk",
98*aa1a8ff2SEmmanuel Vadot                    "gcc_disp_gpll0_div_clk_src";
99*aa1a8ff2SEmmanuel Vadot
100*aa1a8ff2SEmmanuel Vadot      required-opps = <&rpmhpd_opp_ret>;
101*aa1a8ff2SEmmanuel Vadot      power-domains = <&rpmpd SM6125_VDDCX>;
102*aa1a8ff2SEmmanuel Vadot
103c9ccf3a3SEmmanuel Vadot      #clock-cells = <1>;
104c9ccf3a3SEmmanuel Vadot      #power-domain-cells = <1>;
105c9ccf3a3SEmmanuel Vadot    };
106c9ccf3a3SEmmanuel Vadot...
107