Merge tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm...
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / clock / qcom,gcc.txt
1 Qualcomm Global Clock & Reset Controller Binding
2 ------------------------------------------------
3
4 Required properties :
5 - compatible : shall contain only one of the following:
6
7                         "qcom,gcc-apq8064"
8                         "qcom,gcc-apq8084"
9                         "qcom,gcc-ipq8064"
10                         "qcom,gcc-ipq4019"
11                         "qcom,gcc-ipq8074"
12                         "qcom,gcc-msm8660"
13                         "qcom,gcc-msm8916"
14                         "qcom,gcc-msm8960"
15                         "qcom,gcc-msm8974"
16                         "qcom,gcc-msm8974pro"
17                         "qcom,gcc-msm8974pro-ac"
18                         "qcom,gcc-msm8994"
19                         "qcom,gcc-msm8996"
20                         "qcom,gcc-msm8998"
21                         "qcom,gcc-mdm9615"
22                         "qcom,gcc-qcs404"
23                         "qcom,gcc-sdm630"
24                         "qcom,gcc-sdm660"
25                         "qcom,gcc-sdm845"
26
27 - reg : shall contain base register location and length
28 - #clock-cells : shall contain 1
29 - #reset-cells : shall contain 1
30
31 Optional properties :
32 - #power-domain-cells : shall contain 1
33 - Qualcomm TSENS (thermal sensor device) on some devices can
34 be part of GCC and hence the TSENS properties can also be
35 part of the GCC/clock-controller node.
36 For more details on the TSENS properties please refer
37 Documentation/devicetree/bindings/thermal/qcom-tsens.txt
38 - protected-clocks : Protected clock specifier list as per common clock
39  binding.
40
41 Example:
42         clock-controller@900000 {
43                 compatible = "qcom,gcc-msm8960";
44                 reg = <0x900000 0x4000>;
45                 #clock-cells = <1>;
46                 #reset-cells = <1>;
47                 #power-domain-cells = <1>;
48         };
49
50 Example of GCC with TSENS properties:
51         clock-controller@900000 {
52                 compatible = "qcom,gcc-apq8064";
53                 reg = <0x00900000 0x4000>;
54                 nvmem-cells = <&tsens_calib>, <&tsens_backup>;
55                 nvmem-cell-names = "calib", "calib_backup";
56                 #clock-cells = <1>;
57                 #reset-cells = <1>;
58                 #thermal-sensor-cells = <1>;
59         };
60
61 Example of GCC with protected-clocks properties:
62         clock-controller@100000 {
63                 compatible = "qcom,gcc-sdm845";
64                 reg = <0x100000 0x1f0000>;
65                 #clock-cells = <1>;
66                 #reset-cells = <1>;
67                 #power-domain-cells = <1>;
68                 protected-clocks = <GCC_QSPI_CORE_CLK>,
69                                    <GCC_QSPI_CORE_CLK_SRC>,
70                                    <GCC_QSPI_CNOC_PERIPH_AHB_CLK>,
71                                    <GCC_LPASS_Q6_AXI_CLK>,
72                                    <GCC_LPASS_SWAY_CLK>;
73         };