arm64: dts: rockchip: add the IPA needed parameters for rk3399 thermal
authorRocky Hao <rocky.hao@rock-chips.com>
Thu, 26 May 2016 04:48:33 +0000 (12:48 +0800)
committerRocky Hao <rocky.hao@rock-chips.com>
Fri, 27 May 2016 06:11:55 +0000 (14:11 +0800)
according to our testing results, added the ipa parameters for both cpu
big cores and cpu little cores, and updated the  parameters for gpu.

for now,the gpu thermal zone is used only to get the gpu's temperature.

Change-Id: Ifc7708de9d880e0f9cd5da0bb71a135b0c381b45
Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
arch/arm64/boot/dts/rockchip/rk3399.dtsi

index 6e2a27b..529dd2e 100644 (file)
                        reg = <0x0 0x0>;
                        enable-method = "psci";
                        #cooling-cells = <2>; /* min followed by max */
+                       dynamic-power-coefficient = <121>;
                        clocks = <&cru ARMCLKL>;
                        cpu-idle-states = <&cpu_sleep>;
                        operating-points-v2 = <&cluster0_opp>;
                        reg = <0x0 0x100>;
                        enable-method = "psci";
                        #cooling-cells = <2>; /* min followed by max */
+                       dynamic-power-coefficient = <1068>;
                        clocks = <&cru ARMCLKB>;
                        cpu-idle-states = <&cpu_sleep>;
                        operating-points-v2 = <&cluster1_opp>;
        };
 
        thermal-zones {
-               cpu {
+               soc_thermal: soc-thermal {
                        polling-delay-passive = <100>; /* milliseconds */
                        polling-delay = <1000>; /* milliseconds */
+                       sustainable-power = <2600>; /* milliwatts */
 
                        thermal-sensors = <&tsadc 0>;
 
                        trips {
-                               cpu_alert0: cpu_alert0 {
+                               threshold: trip-point@0 {
                                        temperature = <70000>; /* millicelsius */
                                        hysteresis = <2000>; /* millicelsius */
                                        type = "passive";
                                };
-                               cpu_alert1: cpu_alert1 {
-                                       temperature = <75000>; /* millicelsius */
+                               target: trip-point@1 {
+                                       temperature = <85000>; /* millicelsius */
                                        hysteresis = <2000>; /* millicelsius */
                                        type = "passive";
                                };
-                               cpu_crit: cpu_crit {
+                               soc_crit: soc-crit {
                                        temperature = <95000>; /* millicelsius */
                                        hysteresis = <2000>; /* millicelsius */
                                        type = "critical";
 
                        cooling-maps {
                                map0 {
-                                       trip = <&cpu_alert0>;
+                                       trip = <&target>;
                                        cooling-device =
-                                               <&cpu_b0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+                                               <&cpu_l0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
                                };
                                map1 {
-                                       trip = <&cpu_alert1>;
+                                       trip = <&target>;
                                        cooling-device =
-                                               <&cpu_l0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
                                                <&cpu_b0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
                                };
+                               map2 {
+                                       trip = <&target>;
+                                       cooling-device =
+                                               <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+                               };
                        };
                };
 
-               gpu {
+               gpu_thermal: gpu-thermal {
                        polling-delay-passive = <100>; /* milliseconds */
                        polling-delay = <1000>; /* milliseconds */
 
                        thermal-sensors = <&tsadc 1>;
-
-                       trips {
-                               gpu_alert0: gpu_alert0 {
-                                       temperature = <75000>; /* millicelsius */
-                                       hysteresis = <2000>; /* millicelsius */
-                                       type = "passive";
-                               };
-                               gpu_crit: gpu_crit {
-                                       temperature = <95000>; /* millicelsius */
-                                       hysteresis = <2000>; /* millicelsius */
-                                       type = "critical";
-                               };
-                       };
-
-                       cooling-maps {
-                               map0 {
-                                       trip = <&gpu_alert0>;
-                                       cooling-device =
-                                               <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
-                               };
-                       };
                };
        };
 
                        compatible = "arm,mali-simple-power-model";
                        voltage = <900>;
                        frequency = <500>;
-                       static-power = <500>;
-                       dynamic-power = <1500>;
-                       ts = <20000 2000 (-20) 2>;
-                       thermal-zone = "gpu";
+                       static-power = <300>;
+                       dynamic-power = <1780>;
+                       ts = <32000 4700 (-80) 2>;
+                       thermal-zone = "gpu-thermal";
                };
        };