OSDN Git Service

smb3: Add defines for new information level, FileIdInformation
[tomoyo/tomoyo-test1.git] / Documentation / devicetree / bindings / clock / qcom,gcc.yaml
1 # SPDX-License-Identifier: GPL-2.0-only
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/bindings/clock/qcom,gcc.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Qualcomm Global Clock & Reset Controller Binding
8
9 maintainers:
10   - Stephen Boyd <sboyd@kernel.org>
11   - Taniya Das <tdas@codeaurora.org>
12
13 description: |
14   Qualcomm global clock control module which supports the clocks, resets and
15   power domains.
16
17 properties:
18   compatible :
19     enum:
20        - qcom,gcc-apq8064
21        - qcom,gcc-apq8084
22        - qcom,gcc-ipq8064
23        - qcom,gcc-ipq4019
24        - qcom,gcc-ipq8074
25        - qcom,gcc-msm8660
26        - qcom,gcc-msm8916
27        - qcom,gcc-msm8960
28        - qcom,gcc-msm8974
29        - qcom,gcc-msm8974pro
30        - qcom,gcc-msm8974pro-ac
31        - qcom,gcc-msm8994
32        - qcom,gcc-msm8996
33        - qcom,gcc-msm8998
34        - qcom,gcc-mdm9615
35        - qcom,gcc-qcs404
36        - qcom,gcc-sc7180
37        - qcom,gcc-sdm630
38        - qcom,gcc-sdm660
39        - qcom,gcc-sdm845
40        - qcom,gcc-sm8150
41
42   clocks:
43     minItems: 1
44     maxItems: 3
45     items:
46       - description: Board XO source
47       - description: Board active XO source
48       - description: Sleep clock source
49
50   clock-names:
51     minItems: 1
52     maxItems: 3
53     items:
54       - const: bi_tcxo
55       - const: bi_tcxo_ao
56       - const: sleep_clk
57
58   '#clock-cells':
59     const: 1
60
61   '#reset-cells':
62     const: 1
63
64   '#power-domain-cells':
65     const: 1
66
67   reg:
68     maxItems: 1
69
70   nvmem-cells:
71     minItems: 1
72     maxItems: 2
73     description:
74       Qualcomm TSENS (thermal sensor device) on some devices can
75       be part of GCC and hence the TSENS properties can also be part
76       of the GCC/clock-controller node.
77       For more details on the TSENS properties please refer
78       Documentation/devicetree/bindings/thermal/qcom-tsens.txt
79
80   nvmem-cell-names:
81     minItems: 1
82     maxItems: 2
83     description:
84       Names for each nvmem-cells specified.
85     items:
86       - const: calib
87       - const: calib_backup
88
89   'thermal-sensor-cells':
90     const: 1
91
92   protected-clocks:
93     description:
94        Protected clock specifier list as per common clock binding
95
96 required:
97   - compatible
98   - reg
99   - '#clock-cells'
100   - '#reset-cells'
101   - '#power-domain-cells'
102
103 if:
104   properties:
105     compatible:
106       contains:
107         const: qcom,gcc-apq8064
108
109 then:
110   required:
111     - nvmem-cells
112     - nvmem-cell-names
113     - '#thermal-sensor-cells'
114
115 else:
116   if:
117     properties:
118       compatible:
119         contains:
120           enum:
121             - qcom,gcc-sm8150
122             - qcom,gcc-sc7180
123   then:
124     required:
125        - clocks
126        - clock-names
127
128
129 examples:
130   # Example for GCC for MSM8960:
131   - |
132     clock-controller@900000 {
133       compatible = "qcom,gcc-msm8960";
134       reg = <0x900000 0x4000>;
135       #clock-cells = <1>;
136       #reset-cells = <1>;
137       #power-domain-cells = <1>;
138     };
139
140
141   # Example of GCC with TSENS properties:
142   - |
143     clock-controller@900000 {
144       compatible = "qcom,gcc-apq8064";
145       reg = <0x00900000 0x4000>;
146       nvmem-cells = <&tsens_calib>, <&tsens_backup>;
147       nvmem-cell-names = "calib", "calib_backup";
148       #clock-cells = <1>;
149       #reset-cells = <1>;
150       #power-domain-cells = <1>;
151       #thermal-sensor-cells = <1>;
152     };
153
154   # Example of GCC with protected-clocks properties:
155   - |
156     clock-controller@100000 {
157       compatible = "qcom,gcc-sdm845";
158       reg = <0x100000 0x1f0000>;
159       protected-clocks = <187>, <188>, <189>, <190>, <191>;
160       #clock-cells = <1>;
161       #reset-cells = <1>;
162       #power-domain-cells = <1>;
163     };
164
165   # Example of GCC with clock node properties for SM8150:
166   - |
167     clock-controller@100000 {
168       compatible = "qcom,gcc-sm8150";
169       reg = <0x00100000 0x1f0000>;
170       clocks = <&rpmhcc 0>, <&rpmhcc 1>, <&sleep_clk>;
171       clock-names = "bi_tcxo", "bi_tcxo_ao", "sleep_clk";
172       #clock-cells = <1>;
173       #reset-cells = <1>;
174       #power-domain-cells = <1>;
175      };
176
177   # Example of GCC with clock nodes properties for SC7180:
178   - |
179     clock-controller@100000 {
180       compatible = "qcom,gcc-sc7180";
181       reg = <0x100000 0x1f0000>;
182       clocks = <&rpmhcc 0>, <&rpmhcc 1>;
183       clock-names = "bi_tcxo", "bi_tcxo_ao";
184       #clock-cells = <1>;
185       #reset-cells = <1>;
186       #power-domain-cells = <1>;
187     };
188 ...