xref: /freebsd/sys/contrib/device-tree/Bindings/clock/qcom,gpucc.yaml (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1354d7675SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2c66ec88fSEmmanuel Vadot%YAML 1.2
3c66ec88fSEmmanuel Vadot---
4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/clock/qcom,gpucc.yaml#
5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6c66ec88fSEmmanuel Vadot
78bab661aSEmmanuel Vadottitle: Qualcomm Graphics Clock & Reset Controller
8c66ec88fSEmmanuel Vadot
9c66ec88fSEmmanuel Vadotmaintainers:
10aa1a8ff2SEmmanuel Vadot  - Taniya Das <quic_tdas@quicinc.com>
11c66ec88fSEmmanuel Vadot
12c66ec88fSEmmanuel Vadotdescription: |
138bab661aSEmmanuel Vadot  Qualcomm graphics clock control module provides the clocks, resets and power
148bab661aSEmmanuel Vadot  domains on Qualcomm SoCs.
15c66ec88fSEmmanuel Vadot
168bab661aSEmmanuel Vadot  See also::
178bab661aSEmmanuel Vadot    include/dt-bindings/clock/qcom,gpucc-sdm845.h
18fac71e4eSEmmanuel Vadot    include/dt-bindings/clock/qcom,gpucc-sa8775p.h
198bab661aSEmmanuel Vadot    include/dt-bindings/clock/qcom,gpucc-sc7180.h
208bab661aSEmmanuel Vadot    include/dt-bindings/clock/qcom,gpucc-sc7280.h
218bab661aSEmmanuel Vadot    include/dt-bindings/clock/qcom,gpucc-sc8280xp.h
228bab661aSEmmanuel Vadot    include/dt-bindings/clock/qcom,gpucc-sm6350.h
238bab661aSEmmanuel Vadot    include/dt-bindings/clock/qcom,gpucc-sm8150.h
248bab661aSEmmanuel Vadot    include/dt-bindings/clock/qcom,gpucc-sm8250.h
25cb7aa33aSEmmanuel Vadot    include/dt-bindings/clock/qcom,gpucc-sm8350.h
26c66ec88fSEmmanuel Vadot
27c66ec88fSEmmanuel Vadotproperties:
28c66ec88fSEmmanuel Vadot  compatible:
29c66ec88fSEmmanuel Vadot    enum:
30c66ec88fSEmmanuel Vadot      - qcom,sdm845-gpucc
31fac71e4eSEmmanuel Vadot      - qcom,sa8775p-gpucc
32c66ec88fSEmmanuel Vadot      - qcom,sc7180-gpucc
33354d7675SEmmanuel Vadot      - qcom,sc7280-gpucc
34354d7675SEmmanuel Vadot      - qcom,sc8180x-gpucc
357ef62cebSEmmanuel Vadot      - qcom,sc8280xp-gpucc
36c9ccf3a3SEmmanuel Vadot      - qcom,sm6350-gpucc
37c66ec88fSEmmanuel Vadot      - qcom,sm8150-gpucc
38c66ec88fSEmmanuel Vadot      - qcom,sm8250-gpucc
39cb7aa33aSEmmanuel Vadot      - qcom,sm8350-gpucc
40c66ec88fSEmmanuel Vadot
41c66ec88fSEmmanuel Vadot  clocks:
42c66ec88fSEmmanuel Vadot    items:
43c66ec88fSEmmanuel Vadot      - description: Board XO source
44c66ec88fSEmmanuel Vadot      - description: GPLL0 main branch source
45c66ec88fSEmmanuel Vadot      - description: GPLL0 div branch source
46c66ec88fSEmmanuel Vadot
47c66ec88fSEmmanuel Vadot  clock-names:
48c66ec88fSEmmanuel Vadot    items:
49c66ec88fSEmmanuel Vadot      - const: bi_tcxo
50c66ec88fSEmmanuel Vadot      - const: gcc_gpu_gpll0_clk_src
51c66ec88fSEmmanuel Vadot      - const: gcc_gpu_gpll0_div_clk_src
52c66ec88fSEmmanuel Vadot
53f126890aSEmmanuel Vadot  power-domains:
54f126890aSEmmanuel Vadot    maxItems: 1
55f126890aSEmmanuel Vadot
5601950c46SEmmanuel Vadot  vdd-gfx-supply:
5701950c46SEmmanuel Vadot    description: Regulator supply for the VDD_GFX pads
5801950c46SEmmanuel Vadot
59c66ec88fSEmmanuel Vadotrequired:
60c66ec88fSEmmanuel Vadot  - compatible
61c66ec88fSEmmanuel Vadot  - clocks
62c66ec88fSEmmanuel Vadot  - clock-names
63c66ec88fSEmmanuel Vadot  - '#power-domain-cells'
64c66ec88fSEmmanuel Vadot
6501950c46SEmmanuel Vadot# Require that power-domains and vdd-gfx-supply are not both present
6601950c46SEmmanuel Vadotnot:
6701950c46SEmmanuel Vadot  required:
6801950c46SEmmanuel Vadot    - power-domains
6901950c46SEmmanuel Vadot    - vdd-gfx-supply
7001950c46SEmmanuel Vadot
71*0e8011faSEmmanuel VadotallOf:
72*0e8011faSEmmanuel Vadot  - $ref: qcom,gcc.yaml#
73*0e8011faSEmmanuel Vadot
74*0e8011faSEmmanuel VadotunevaluatedProperties: false
75c66ec88fSEmmanuel Vadot
76c66ec88fSEmmanuel Vadotexamples:
77c66ec88fSEmmanuel Vadot  - |
78c66ec88fSEmmanuel Vadot    #include <dt-bindings/clock/qcom,gcc-sdm845.h>
79c66ec88fSEmmanuel Vadot    #include <dt-bindings/clock/qcom,rpmh.h>
80c66ec88fSEmmanuel Vadot    clock-controller@5090000 {
81c66ec88fSEmmanuel Vadot      compatible = "qcom,sdm845-gpucc";
82c66ec88fSEmmanuel Vadot      reg = <0x05090000 0x9000>;
83c66ec88fSEmmanuel Vadot      clocks = <&rpmhcc RPMH_CXO_CLK>,
84c66ec88fSEmmanuel Vadot               <&gcc GCC_GPU_GPLL0_CLK_SRC>,
85c66ec88fSEmmanuel Vadot               <&gcc GCC_GPU_GPLL0_DIV_CLK_SRC>;
86c66ec88fSEmmanuel Vadot      clock-names = "bi_tcxo",
87c66ec88fSEmmanuel Vadot                    "gcc_gpu_gpll0_clk_src",
88c66ec88fSEmmanuel Vadot                    "gcc_gpu_gpll0_div_clk_src";
89c66ec88fSEmmanuel Vadot      #clock-cells = <1>;
90c66ec88fSEmmanuel Vadot      #reset-cells = <1>;
91c66ec88fSEmmanuel Vadot      #power-domain-cells = <1>;
92c66ec88fSEmmanuel Vadot    };
93c66ec88fSEmmanuel Vadot...
94