xref: /freebsd/sys/contrib/device-tree/Bindings/clock/qcom,videocc.yaml (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1354d7675SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
26be33864SEmmanuel Vadot%YAML 1.2
36be33864SEmmanuel Vadot---
46be33864SEmmanuel Vadot$id: http://devicetree.org/schemas/clock/qcom,videocc.yaml#
56be33864SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
66be33864SEmmanuel Vadot
78bab661aSEmmanuel Vadottitle: Qualcomm Video Clock & Reset Controller
86be33864SEmmanuel Vadot
96be33864SEmmanuel Vadotmaintainers:
10aa1a8ff2SEmmanuel Vadot  - Taniya Das <quic_tdas@quicinc.com>
116be33864SEmmanuel Vadot
126be33864SEmmanuel Vadotdescription: |
138bab661aSEmmanuel Vadot  Qualcomm video clock control module provides the clocks, resets and power
148bab661aSEmmanuel Vadot  domains on Qualcomm SoCs.
156be33864SEmmanuel Vadot
168bab661aSEmmanuel Vadot  See also::
178bab661aSEmmanuel Vadot    include/dt-bindings/clock/qcom,videocc-sc7180.h
188bab661aSEmmanuel Vadot    include/dt-bindings/clock/qcom,videocc-sc7280.h
198bab661aSEmmanuel Vadot    include/dt-bindings/clock/qcom,videocc-sdm845.h
208bab661aSEmmanuel Vadot    include/dt-bindings/clock/qcom,videocc-sm8150.h
218bab661aSEmmanuel Vadot    include/dt-bindings/clock/qcom,videocc-sm8250.h
226be33864SEmmanuel Vadot
236be33864SEmmanuel Vadotproperties:
246be33864SEmmanuel Vadot  compatible:
256be33864SEmmanuel Vadot    enum:
266be33864SEmmanuel Vadot      - qcom,sc7180-videocc
27354d7675SEmmanuel Vadot      - qcom,sc7280-videocc
286be33864SEmmanuel Vadot      - qcom,sdm845-videocc
296be33864SEmmanuel Vadot      - qcom,sm8150-videocc
306be33864SEmmanuel Vadot      - qcom,sm8250-videocc
316be33864SEmmanuel Vadot
326be33864SEmmanuel Vadot  clocks:
33cb7aa33aSEmmanuel Vadot    minItems: 1
34cb7aa33aSEmmanuel Vadot    maxItems: 3
356be33864SEmmanuel Vadot
366be33864SEmmanuel Vadot  clock-names:
37cb7aa33aSEmmanuel Vadot    minItems: 1
38cb7aa33aSEmmanuel Vadot    maxItems: 3
396be33864SEmmanuel Vadot
408cc087a1SEmmanuel Vadot  power-domains:
418cc087a1SEmmanuel Vadot    description:
428cc087a1SEmmanuel Vadot      A phandle and PM domain specifier for the MMCX power domain.
438cc087a1SEmmanuel Vadot    maxItems: 1
448cc087a1SEmmanuel Vadot
458cc087a1SEmmanuel Vadot  required-opps:
468cc087a1SEmmanuel Vadot    description:
478cc087a1SEmmanuel Vadot      A phandle to an OPP node describing required MMCX performance point.
488cc087a1SEmmanuel Vadot    maxItems: 1
498cc087a1SEmmanuel Vadot
506be33864SEmmanuel Vadotrequired:
516be33864SEmmanuel Vadot  - compatible
526be33864SEmmanuel Vadot  - clocks
536be33864SEmmanuel Vadot  - clock-names
546be33864SEmmanuel Vadot  - '#power-domain-cells'
556be33864SEmmanuel Vadot
56cb7aa33aSEmmanuel VadotallOf:
57*0e8011faSEmmanuel Vadot  - $ref: qcom,gcc.yaml#
58*0e8011faSEmmanuel Vadot
59cb7aa33aSEmmanuel Vadot  - if:
60cb7aa33aSEmmanuel Vadot      properties:
61cb7aa33aSEmmanuel Vadot        compatible:
62cb7aa33aSEmmanuel Vadot          enum:
63cb7aa33aSEmmanuel Vadot            - qcom,sc7180-videocc
64cb7aa33aSEmmanuel Vadot            - qcom,sdm845-videocc
65cb7aa33aSEmmanuel Vadot    then:
66cb7aa33aSEmmanuel Vadot      properties:
67cb7aa33aSEmmanuel Vadot        clocks:
68cb7aa33aSEmmanuel Vadot          items:
69cb7aa33aSEmmanuel Vadot            - description: Board XO source
70cb7aa33aSEmmanuel Vadot        clock-names:
71cb7aa33aSEmmanuel Vadot          items:
72cb7aa33aSEmmanuel Vadot            - const: bi_tcxo
73cb7aa33aSEmmanuel Vadot
74cb7aa33aSEmmanuel Vadot  - if:
75cb7aa33aSEmmanuel Vadot      properties:
76cb7aa33aSEmmanuel Vadot        compatible:
77cb7aa33aSEmmanuel Vadot          enum:
78cb7aa33aSEmmanuel Vadot            - qcom,sc7280-videocc
79cb7aa33aSEmmanuel Vadot    then:
80cb7aa33aSEmmanuel Vadot      properties:
81cb7aa33aSEmmanuel Vadot        clocks:
82cb7aa33aSEmmanuel Vadot          items:
83cb7aa33aSEmmanuel Vadot            - description: Board XO source
84cb7aa33aSEmmanuel Vadot            - description: Board active XO source
85cb7aa33aSEmmanuel Vadot        clock-names:
86cb7aa33aSEmmanuel Vadot          items:
87cb7aa33aSEmmanuel Vadot            - const: bi_tcxo
88cb7aa33aSEmmanuel Vadot            - const: bi_tcxo_ao
89cb7aa33aSEmmanuel Vadot
90cb7aa33aSEmmanuel Vadot  - if:
91cb7aa33aSEmmanuel Vadot      properties:
92cb7aa33aSEmmanuel Vadot        compatible:
93cb7aa33aSEmmanuel Vadot          enum:
94*0e8011faSEmmanuel Vadot            - qcom,sm8150-videocc
95*0e8011faSEmmanuel Vadot    then:
96*0e8011faSEmmanuel Vadot      properties:
97*0e8011faSEmmanuel Vadot        clocks:
98*0e8011faSEmmanuel Vadot          items:
99*0e8011faSEmmanuel Vadot            - description: AHB
100*0e8011faSEmmanuel Vadot            - description: Board XO source
101*0e8011faSEmmanuel Vadot        clock-names:
102*0e8011faSEmmanuel Vadot          items:
103*0e8011faSEmmanuel Vadot            - const: iface
104*0e8011faSEmmanuel Vadot            - const: bi_tcxo
105*0e8011faSEmmanuel Vadot
106*0e8011faSEmmanuel Vadot  - if:
107*0e8011faSEmmanuel Vadot      properties:
108*0e8011faSEmmanuel Vadot        compatible:
109*0e8011faSEmmanuel Vadot          enum:
110cb7aa33aSEmmanuel Vadot            - qcom,sm8250-videocc
111cb7aa33aSEmmanuel Vadot    then:
112cb7aa33aSEmmanuel Vadot      properties:
113cb7aa33aSEmmanuel Vadot        clocks:
114cb7aa33aSEmmanuel Vadot          items:
115cb7aa33aSEmmanuel Vadot            - description: AHB
116cb7aa33aSEmmanuel Vadot            - description: Board XO source
117cb7aa33aSEmmanuel Vadot            - description: Board active XO source
118cb7aa33aSEmmanuel Vadot        clock-names:
119cb7aa33aSEmmanuel Vadot          items:
120cb7aa33aSEmmanuel Vadot            - const: iface
121cb7aa33aSEmmanuel Vadot            - const: bi_tcxo
122cb7aa33aSEmmanuel Vadot            - const: bi_tcxo_ao
123cb7aa33aSEmmanuel Vadot
124*0e8011faSEmmanuel VadotunevaluatedProperties: false
1256be33864SEmmanuel Vadot
1266be33864SEmmanuel Vadotexamples:
1276be33864SEmmanuel Vadot  - |
1286be33864SEmmanuel Vadot    #include <dt-bindings/clock/qcom,rpmh.h>
129aa1a8ff2SEmmanuel Vadot    #include <dt-bindings/power/qcom,rpmhpd.h>
1306be33864SEmmanuel Vadot    clock-controller@ab00000 {
1316be33864SEmmanuel Vadot      compatible = "qcom,sdm845-videocc";
1326be33864SEmmanuel Vadot      reg = <0x0ab00000 0x10000>;
1336be33864SEmmanuel Vadot      clocks = <&rpmhcc RPMH_CXO_CLK>;
1346be33864SEmmanuel Vadot      clock-names = "bi_tcxo";
1356be33864SEmmanuel Vadot      #clock-cells = <1>;
1366be33864SEmmanuel Vadot      #reset-cells = <1>;
1376be33864SEmmanuel Vadot      #power-domain-cells = <1>;
138aa1a8ff2SEmmanuel Vadot      power-domains = <&rpmhpd RPMHPD_MMCX>;
1398cc087a1SEmmanuel Vadot      required-opps = <&rpmhpd_opp_low_svs>;
1406be33864SEmmanuel Vadot    };
1416be33864SEmmanuel Vadot...
142