Merge tag 'for-5.15/parisc' of git://git.kernel.org/pub/scm/linux/kernel/git/deller...
[linux-2.6-microblaze.git] / arch / arm / boot / dts / tegra30-asus-nexus7-grouper-common.dtsi
index ae8300b..9732cd6 100644 (file)
                        compatible = "onnn,nct1008";
                        reg = <0x4c>;
                        vcc-supply = <&vdd_3v3_sys>;
+
+                       interrupt-parent = <&gpio>;
+                       interrupts = <TEGRA_GPIO(S, 3) IRQ_TYPE_EDGE_FALLING>;
+
                        #thermal-sensor-cells = <1>;
                };
 
        };
 
        thermal-zones {
-               cpu-thermal {
+               /*
+                * NCT72 has two sensors:
+                *
+                *      0: internal that monitors ambient/skin temperature
+                *      1: external that is connected to the CPU's diode
+                *
+                * Ideally we should use userspace thermal governor,
+                * but it's a much more complex solution.  The "skin"
+                * zone is a simpler solution which prevents Nexus 7
+                * from getting too hot from a user's tactile perspective.
+                * The CPU zone is intended to protect silicon from damage.
+                */
+
+               skin-thermal {
                        polling-delay-passive = <1000>; /* milliseconds */
                        polling-delay = <5000>; /* milliseconds */
 
-                       thermal-sensors = <&nct72 1>;
+                       thermal-sensors = <&nct72 0>;
 
                        trips {
-                               trip0: cpu-alert0 {
+                               trip0: skin-alert {
                                        /* throttle at 57C until temperature drops to 56.8C */
                                        temperature = <57000>;
                                        hysteresis = <200>;
                                        type = "passive";
                                };
 
-                               trip1: cpu-crit {
+                               trip1: skin-crit {
                                        /* shut down at 65C */
                                        temperature = <65000>;
                                        hysteresis = <2000>;
                                };
                        };
                };
+
+               cpu-thermal {
+                       polling-delay-passive = <1000>; /* milliseconds */
+                       polling-delay = <5000>; /* milliseconds */
+
+                       thermal-sensors = <&nct72 1>;
+
+                       trips {
+                               trip2: cpu-alert {
+                                       /* throttle at 85C until temperature drops to 84.8C */
+                                       temperature = <85000>;
+                                       hysteresis = <200>;
+                                       type = "passive";
+                               };
+
+                               trip3: cpu-crit {
+                                       /* shut down at 90C */
+                                       temperature = <90000>;
+                                       hysteresis = <2000>;
+                                       type = "critical";
+                               };
+                       };
+
+                       cooling-maps {
+                               map1 {
+                                       trip = <&trip2>;
+                                       cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+                                                        <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+                                                        <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+                                                        <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+                                                        <&actmon THERMAL_NO_LIMIT
+                                                                 THERMAL_NO_LIMIT>;
+                               };
+                       };
+               };
        };
 };