Add i.MX8QXP CPU thermal zone support.

Signed-off-by: Anson Huang <[email protected]>
---
Changes since V9:
        - change #thermal-sensor-cells value in to 1, since there are other
          thermal sensors inside system controller, it is just because there 
are still
          some issue, so system controller does NOT expose them for now, they 
could
          be exposed later, so it should be 1 from HW perspective.
---
 arch/arm64/boot/dts/freescale/imx8qxp.dtsi | 34 ++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/imx8qxp.dtsi 
b/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
index 4c3dd95..f532cba 100644
--- a/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
@@ -10,6 +10,7 @@
 #include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/interrupt-controller/arm-gic.h>
 #include <dt-bindings/pinctrl/pads-imx8qxp.h>
+#include <dt-bindings/thermal/thermal.h>
 
 / {
        interrupt-parent = <&gic>;
@@ -116,6 +117,12 @@
                rtc: rtc {
                        compatible = "fsl,imx8qxp-sc-rtc";
                };
+
+               tsens: thermal-sensor {
+                       compatible = "fsl,imx8qxp-sc-thermal", 
"fsl,imx-sc-thermal";
+                       #thermal-sensor-cells = <1>;
+                       imx,sensor-resource-id = <IMX_SC_R_SYSTEM>;
+               };
        };
 
        timer {
@@ -443,4 +450,31 @@
                        power-domains = <&pd IMX_SC_R_GPIO_7>;
                };
        };
+
+       thermal_zones: thermal-zones {
+               cpu-thermal0 {
+                       polling-delay-passive = <250>;
+                       polling-delay = <2000>;
+                       thermal-sensors = <&tsens 0>;
+                       trips {
+                               cpu_alert0: trip0 {
+                                       temperature = <107000>;
+                                       hysteresis = <2000>;
+                                       type = "passive";
+                               };
+                               cpu_crit0: trip1 {
+                                       temperature = <127000>;
+                                       hysteresis = <2000>;
+                                       type = "critical";
+                               };
+                       };
+                       cooling-maps {
+                               map0 {
+                                       trip = <&cpu_alert0>;
+                                       cooling-device =
+                                               <&A35_0 THERMAL_NO_LIMIT 
THERMAL_NO_LIMIT>;
+                               };
+                       };
+               };
+       };
 };
-- 
2.7.4

Reply via email to