ipq806x: add ipq806x specific tsens driver
[librecmc/librecmc.git] / target / linux / ipq806x / files-4.9 / arch / arm / boot / dts / qcom-ipq8064.dtsi
index 3893f456378c06446061b016312bebfd6592d65e..dd5575410608cf9ea72bb4dc0def4d8911491ca1 100644 (file)
        };
 
        thermal-zones {
-               cpu-thermal0 {
-                       polling-delay-passive = <250>;
-                       polling-delay = <1000>;
+               tsens_tz_sensor0 {
+                       polling-delay-passive = <0>;
+                       polling-delay = <0>;
+                       thermal-sensors = <&tsens 0>;
 
-                       thermal-sensors = <&gcc 5>;
-                       coefficients = <1132 0>;
+                       trips {
+                               cpu-critical-hi {
+                                       temperature = <125>;
+                                       hysteresis = <2>;
+                                       type = "critical_high";
+                               };
+
+                               cpu-config-hi {
+                                       temperature = <105>;
+                                       hysteresis = <2>;
+                                       type = "configurable_hi";
+                               };
+
+                               cpu-config-lo {
+                                       temperature = <95>;
+                                       hysteresis = <2>;
+                                       type = "configurable_lo";
+                               };
+
+                               cpu-critical-low {
+                                       temperature = <0>;
+                                       hysteresis = <2>;
+                                       type = "critical_low";
+                               };
+                       };
+               };
+
+               tsens_tz_sensor1 {
+                       polling-delay-passive = <0>;
+                       polling-delay = <0>;
+                       thermal-sensors = <&tsens 1>;
+
+                       trips {
+                               cpu-critical-hi {
+                                       temperature = <125>;
+                                       hysteresis = <2>;
+                                       type = "critical_high";
+                               };
+
+                               cpu-config-hi {
+                                       temperature = <105>;
+                                       hysteresis = <2>;
+                                       type = "configurable_hi";
+                               };
+
+                               cpu-config-lo {
+                                       temperature = <95>;
+                                       hysteresis = <2>;
+                                       type = "configurable_lo";
+                               };
+
+                               cpu-critical-low {
+                                       temperature = <0>;
+                                       hysteresis = <2>;
+                                       type = "critical_low";
+                               };
+                       };
+               };
+
+               tsens_tz_sensor2 {
+                       polling-delay-passive = <0>;
+                       polling-delay = <0>;
+                       thermal-sensors = <&tsens 2>;
+
+                       trips {
+                               cpu-critical-hi {
+                                       temperature = <125>;
+                                       hysteresis = <2>;
+                                       type = "critical_high";
+                               };
+
+                               cpu-config-hi {
+                                       temperature = <105>;
+                                       hysteresis = <2>;
+                                       type = "configurable_hi";
+                               };
+
+                               cpu-config-lo {
+                                       temperature = <95>;
+                                       hysteresis = <2>;
+                                       type = "configurable_lo";
+                               };
+
+                               cpu-critical-low {
+                                       temperature = <0>;
+                                       hysteresis = <2>;
+                                       type = "critical_low";
+                               };
+                       };
+               };
+
+               tsens_tz_sensor3 {
+                       polling-delay-passive = <0>;
+                       polling-delay = <0>;
+                       thermal-sensors = <&tsens 3>;
 
                        trips {
-                               cpu_alert0: trip0 {
-                                       temperature = <75000>;
-                                       hysteresis = <2000>;
-                                       type = "passive";
+                               cpu-critical-hi {
+                                       temperature = <125>;
+                                       hysteresis = <2>;
+                                       type = "critical_high";
+                               };
+
+                               cpu-config-hi {
+                                       temperature = <105>;
+                                       hysteresis = <2>;
+                                       type = "configurable_hi";
                                };
-                               cpu_crit0: trip1 {
-                                       temperature = <110000>;
-                                       hysteresis = <2000>;
-                                       type = "critical";
+
+                               cpu-config-lo {
+                                       temperature = <95>;
+                                       hysteresis = <2>;
+                                       type = "configurable_lo";
+                               };
+
+                               cpu-critical-low {
+                                       temperature = <0>;
+                                       hysteresis = <2>;
+                                       type = "critical_low";
                                };
                        };
                };
 
-               cpu-thermal1 {
-                       polling-delay-passive = <250>;
-                       polling-delay = <1000>;
+               tsens_tz_sensor4 {
+                       polling-delay-passive = <0>;
+                       polling-delay = <0>;
+                       thermal-sensors = <&tsens 4>;
+
+                       trips {
+                               cpu-critical-hi {
+                                       temperature = <125>;
+                                       hysteresis = <2>;
+                                       type = "critical_high";
+                               };
+
+                               cpu-config-hi {
+                                       temperature = <105>;
+                                       hysteresis = <2>;
+                                       type = "configurable_hi";
+                               };
+
+                               cpu-config-lo {
+                                       temperature = <95>;
+                                       hysteresis = <2>;
+                                       type = "configurable_lo";
+                               };
+
+                               cpu-critical-low {
+                                       temperature = <0>;
+                                       hysteresis = <2>;
+                                       type = "critical_low";
+                               };
+                       };
+               };
+
+               tsens_tz_sensor5 {
+                       polling-delay-passive = <0>;
+                       polling-delay = <0>;
+                       thermal-sensors = <&tsens 5>;
+
+                       trips {
+                               cpu-critical-hi {
+                                       temperature = <125>;
+                                       hysteresis = <2>;
+                                       type = "critical_high";
+                               };
+
+                               cpu-config-hi {
+                                       temperature = <105>;
+                                       hysteresis = <2>;
+                                       type = "configurable_hi";
+                               };
+
+                               cpu-config-lo {
+                                       temperature = <95>;
+                                       hysteresis = <2>;
+                                       type = "configurable_lo";
+                               };
+
+                               cpu-critical-low {
+                                       temperature = <0>;
+                                       hysteresis = <2>;
+                                       type = "critical_low";
+                               };
+                       };
+               };
 
-                       thermal-sensors = <&gcc 6>;
-                       coefficients = <1132 0>;
+               tsens_tz_sensor6 {
+                       polling-delay-passive = <0>;
+                       polling-delay = <0>;
+                       thermal-sensors = <&tsens 6>;
 
                        trips {
-                               cpu_alert1: trip0 {
-                                       temperature = <75000>;
-                                       hysteresis = <2000>;
-                                       type = "passive";
+                               cpu-critical-hi {
+                                       temperature = <125>;
+                                       hysteresis = <2>;
+                                       type = "critical_high";
+                               };
+
+                               cpu-config-hi {
+                                       temperature = <105>;
+                                       hysteresis = <2>;
+                                       type = "configurable_hi";
                                };
-                               cpu_crit1: trip1 {
-                                       temperature = <110000>;
-                                       hysteresis = <2000>;
-                                       type = "critical";
+
+                               cpu-config-lo {
+                                       temperature = <95>;
+                                       hysteresis = <2>;
+                                       type = "configurable_lo";
+                               };
+
+                               cpu-critical-low {
+                                       temperature = <0>;
+                                       hysteresis = <2>;
+                                       type = "critical_low";
                                };
                        };
                };
 
-               cpu-thermal2 {
-                       polling-delay-passive = <250>;
-                       polling-delay = <1000>;
+               tsens_tz_sensor7 {
+                       polling-delay-passive = <0>;
+                       polling-delay = <0>;
+                       thermal-sensors = <&tsens 7>;
 
-                       thermal-sensors = <&gcc 7>;
-                       coefficients = <1199 0>;
+                       trips {
+                               cpu-critical-hi {
+                                       temperature = <125>;
+                                       hysteresis = <2>;
+                                       type = "critical_high";
+                               };
+
+                               cpu-config-hi {
+                                       temperature = <105>;
+                                       hysteresis = <2>;
+                                       type = "configurable_hi";
+                               };
+
+                               cpu-config-lo {
+                                       temperature = <95>;
+                                       hysteresis = <2>;
+                                       type = "configurable_lo";
+                               };
+
+                               cpu-critical-low {
+                                       temperature = <0>;
+                                       hysteresis = <2>;
+                                       type = "critical_low";
+                               };
+                       };
+               };
+
+               tsens_tz_sensor8 {
+                       polling-delay-passive = <0>;
+                       polling-delay = <0>;
+                       thermal-sensors = <&tsens 8>;
 
                        trips {
-                               cpu_alert2: trip0 {
-                                       temperature = <75000>;
-                                       hysteresis = <2000>;
-                                       type = "passive";
+                               cpu-critical-hi {
+                                       temperature = <125>;
+                                       hysteresis = <2>;
+                                       type = "critical_high";
+                               };
+
+                               cpu-config-hi {
+                                       temperature = <105>;
+                                       hysteresis = <2>;
+                                       type = "configurable_hi";
                                };
-                               cpu_crit2: trip1 {
-                                       temperature = <110000>;
-                                       hysteresis = <2000>;
-                                       type = "critical";
+
+                               cpu-config-lo {
+                                       temperature = <95>;
+                                       hysteresis = <2>;
+                                       type = "configurable_lo";
+                               };
+
+                               cpu-critical-low {
+                                       temperature = <0>;
+                                       hysteresis = <2>;
+                                       type = "critical_low";
                                };
                        };
                };
 
-               cpu-thermal3 {
-                       polling-delay-passive = <250>;
-                       polling-delay = <1000>;
+               tsens_tz_sensor9 {
+                       polling-delay-passive = <0>;
+                       polling-delay = <0>;
+                       thermal-sensors = <&tsens 9>;
+
+                       trips {
+                               cpu-critical-hi {
+                                       temperature = <125>;
+                                       hysteresis = <2>;
+                                       type = "critical_high";
+                               };
+
+                               cpu-config-hi {
+                                       temperature = <105>;
+                                       hysteresis = <2>;
+                                       type = "configurable_hi";
+                               };
+
+                               cpu-config-lo {
+                                       temperature = <95>;
+                                       hysteresis = <2>;
+                                       type = "configurable_lo";
+                               };
+
+                               cpu-critical-low {
+                                       temperature = <0>;
+                                       hysteresis = <2>;
+                                       type = "critical_low";
+                               };
+                       };
+               };
 
-                       thermal-sensors = <&gcc 8>;
-                       coefficients = <1132 0>;
+               tsens_tz_sensor10 {
+                       polling-delay-passive = <0>;
+                       polling-delay = <0>;
+                       thermal-sensors = <&tsens 10>;
 
                        trips {
-                               cpu_alert3: trip0 {
-                                       temperature = <75000>;
-                                       hysteresis = <2000>;
-                                       type = "passive";
+                               cpu-critical-hi {
+                                       temperature = <125>;
+                                       hysteresis = <2>;
+                                       type = "critical_high";
                                };
-                               cpu_crit3: trip1 {
-                                       temperature = <110000>;
-                                       hysteresis = <2000>;
-                                       type = "critical";
+
+                               cpu-config-hi {
+                                       temperature = <105>;
+                                       hysteresis = <2>;
+                                       type = "configurable_hi";
+                               };
+
+                               cpu-config-lo {
+                                       temperature = <95>;
+                                       hysteresis = <2>;
+                                       type = "configurable_lo";
+                               };
+
+                               cpu-critical-low {
+                                       temperature = <0>;
+                                       hysteresis = <2>;
+                                       type = "critical_low";
                                };
                        };
                };
 
                qfprom: qfprom@700000 {
                        compatible = "qcom,qfprom", "syscon";
-                       reg = <0x00700000 0x1000>;
+                       reg = <0x700000 0x1000>;
                        #address-cells = <1>;
                        #size-cells = <1>;
-                       ranges;
-
-                       tsens_calib: calib {
+                       status = "okay";
+                       tsens_calib: calib@400 {
                                reg = <0x400 0x10>;
                        };
-                       tsens_backup: backup_calib {
+                       tsens_backup: backup@410 {
                                reg = <0x410 0x10>;
                        };
                };
                gcc: clock-controller@900000 {
                        compatible = "qcom,gcc-ipq8064";
                        reg = <0x00900000 0x4000>;
-                       nvmem-cells = <&tsens_calib>, <&tsens_backup>;
-                       nvmem-cell-names = "calib", "calib_backup";
                        #clock-cells = <1>;
                        #reset-cells = <1>;
                        #power-domain-cells = <1>;
+               };
+
+               tsens: thermal-sensor@900000 {
+                       compatible = "qcom,ipq8064-tsens";
+                       reg = <0x900000 0x3680>;
+                       nvmem-cells = <&tsens_calib>, <&tsens_backup>;
+                       nvmem-cell-names = "calib", "calib_backup";
+                       interrupts = <0 178 0>;
                        #thermal-sensor-cells = <1>;
                };