aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRajendra Nayak <rnayak@codeaurora.org>2016-08-17 01:18:45 -0400
committerAndy Gross <andy.gross@linaro.org>2016-09-02 14:48:19 -0400
commitc8c876898b2ba09d06151d027485107bb470878f (patch)
tree5350a239bf82b5acbf99619cbd52e79886498b51
parentc59ffb519357537f632eeea8bd35372cfab10474 (diff)
arm: dts: apq8064: Add thermal zones, tsens and qfprom nodes
TSENS is part of GCC, hence add TSENS properties as part of GCC node. Also add thermal zones and qfprom nodes. Update GCC bindings doc to mention the possibility of optional TSENS properties that can be part of GCC node. Acked-by: Eduardo Valentin <edubezval@gmail.com> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org> Signed-off-by: Andy Gross <andy.gross@linaro.org>
-rw-r--r--Documentation/devicetree/bindings/clock/qcom,gcc.txt16
-rw-r--r--arch/arm/boot/dts/qcom-apq8064.dtsi103
2 files changed, 119 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/clock/qcom,gcc.txt b/Documentation/devicetree/bindings/clock/qcom,gcc.txt
index 9a60fde32b02..ea893cbef73d 100644
--- a/Documentation/devicetree/bindings/clock/qcom,gcc.txt
+++ b/Documentation/devicetree/bindings/clock/qcom,gcc.txt
@@ -22,6 +22,11 @@ Required properties :
22 22
23Optional properties : 23Optional properties :
24- #power-domain-cells : shall contain 1 24- #power-domain-cells : shall contain 1
25- Qualcomm TSENS (thermal sensor device) on some devices can
26be part of GCC and hence the TSENS properties can also be
27part of the GCC/clock-controller node.
28For more details on the TSENS properties please refer
29Documentation/devicetree/bindings/thermal/qcom-tsens.txt
25 30
26Example: 31Example:
27 clock-controller@900000 { 32 clock-controller@900000 {
@@ -31,3 +36,14 @@ Example:
31 #reset-cells = <1>; 36 #reset-cells = <1>;
32 #power-domain-cells = <1>; 37 #power-domain-cells = <1>;
33 }; 38 };
39
40Example of GCC with TSENS properties:
41 clock-controller@900000 {
42 compatible = "qcom,gcc-apq8064";
43 reg = <0x00900000 0x4000>;
44 nvmem-cells = <&tsens_calib>, <&tsens_backup>;
45 nvmem-cell-names = "calib", "calib_backup";
46 #clock-cells = <1>;
47 #reset-cells = <1>;
48 #thermal-sensor-cells = <1>;
49 };
diff --git a/arch/arm/boot/dts/qcom-apq8064.dtsi b/arch/arm/boot/dts/qcom-apq8064.dtsi
index 7e43416e250f..1dbe697b2e90 100644
--- a/arch/arm/boot/dts/qcom-apq8064.dtsi
+++ b/arch/arm/boot/dts/qcom-apq8064.dtsi
@@ -87,6 +87,92 @@
87 }; 87 };
88 }; 88 };
89 89
90 thermal-zones {
91 cpu-thermal0 {
92 polling-delay-passive = <250>;
93 polling-delay = <1000>;
94
95 thermal-sensors = <&gcc 7>;
96 coefficients = <1199 0>;
97
98 trips {
99 cpu_alert0: trip0 {
100 temperature = <75000>;
101 hysteresis = <2000>;
102 type = "passive";
103 };
104 cpu_crit0: trip1 {
105 temperature = <110000>;
106 hysteresis = <2000>;
107 type = "critical";
108 };
109 };
110 };
111
112 cpu-thermal1 {
113 polling-delay-passive = <250>;
114 polling-delay = <1000>;
115
116 thermal-sensors = <&gcc 8>;
117 coefficients = <1132 0>;
118
119 trips {
120 cpu_alert1: trip0 {
121 temperature = <75000>;
122 hysteresis = <2000>;
123 type = "passive";
124 };
125 cpu_crit1: trip1 {
126 temperature = <110000>;
127 hysteresis = <2000>;
128 type = "critical";
129 };
130 };
131 };
132
133 cpu-thermal2 {
134 polling-delay-passive = <250>;
135 polling-delay = <1000>;
136
137 thermal-sensors = <&gcc 9>;
138 coefficients = <1199 0>;
139
140 trips {
141 cpu_alert2: trip0 {
142 temperature = <75000>;
143 hysteresis = <2000>;
144 type = "passive";
145 };
146 cpu_crit2: trip1 {
147 temperature = <110000>;
148 hysteresis = <2000>;
149 type = "critical";
150 };
151 };
152 };
153
154 cpu-thermal3 {
155 polling-delay-passive = <250>;
156 polling-delay = <1000>;
157
158 thermal-sensors = <&gcc 10>;
159 coefficients = <1132 0>;
160
161 trips {
162 cpu_alert3: trip0 {
163 temperature = <75000>;
164 hysteresis = <2000>;
165 type = "passive";
166 };
167 cpu_crit3: trip1 {
168 temperature = <110000>;
169 hysteresis = <2000>;
170 type = "critical";
171 };
172 };
173 };
174 };
175
90 cpu-pmu { 176 cpu-pmu {
91 compatible = "qcom,krait-pmu"; 177 compatible = "qcom,krait-pmu";
92 interrupts = <1 10 0x304>; 178 interrupts = <1 10 0x304>;
@@ -649,11 +735,28 @@
649 }; 735 };
650 }; 736 };
651 737
738 qfprom: qfprom@700000 {
739 compatible = "qcom,qfprom";
740 reg = <0x00700000 0x1000>;
741 #address-cells = <1>;
742 #size-cells = <1>;
743 ranges;
744 tsens_calib: calib {
745 reg = <0x404 0x10>;
746 };
747 tsens_backup: backup_calib {
748 reg = <0x414 0x10>;
749 };
750 };
751
652 gcc: clock-controller@900000 { 752 gcc: clock-controller@900000 {
653 compatible = "qcom,gcc-apq8064"; 753 compatible = "qcom,gcc-apq8064";
654 reg = <0x00900000 0x4000>; 754 reg = <0x00900000 0x4000>;
755 nvmem-cells = <&tsens_calib>, <&tsens_backup>;
756 nvmem-cell-names = "calib", "calib_backup";
655 #clock-cells = <1>; 757 #clock-cells = <1>;
656 #reset-cells = <1>; 758 #reset-cells = <1>;
759 #thermal-sensor-cells = <1>;
657 }; 760 };
658 761
659 lcc: clock-controller@28000000 { 762 lcc: clock-controller@28000000 {