From d282005732ccdbd0e0b6747a9bdf4649e5d9ee0c Mon Sep 17 00:00:00 2001 From: Rocky Hao Date: Thu, 30 Mar 2017 15:03:06 +0800 Subject: [PATCH] arm: dts: rockchip: update thermal config for rk3288 add cpus' dynamic power coefficient. rename the thermal zone's config and make it more readable. update temperature pooling interval and make the temperature control more effective. Change-Id: I75d21601b7e3f41a32d10bbcbb1fa9b47ed7da0f Signed-off-by: Rocky Hao --- arch/arm/boot/dts/rk3288.dtsi | 68 +++++++++++------------------------ 1 file changed, 21 insertions(+), 47 deletions(-) diff --git a/arch/arm/boot/dts/rk3288.dtsi b/arch/arm/boot/dts/rk3288.dtsi index f7601f4f7bed..1a8de87b02d1 100644 --- a/arch/arm/boot/dts/rk3288.dtsi +++ b/arch/arm/boot/dts/rk3288.dtsi @@ -98,6 +98,7 @@ resets = <&cru SRST_CORE0>; operating-points-v2 = <&cpu0_opp_table>; #cooling-cells = <2>; /* min followed by max */ + dynamic-power-coefficient = <322>; clocks = <&cru ARMCLK>; }; cpu1: cpu@501 { @@ -529,32 +530,25 @@ status = "disabled"; }; - thermal-zones { - reserve_thermal: reserve_thermal { - polling-delay-passive = <1000>; /* milliseconds */ - polling-delay = <5000>; /* milliseconds */ - - thermal-sensors = <&tsadc 0>; - }; - - cpu_thermal: cpu_thermal { - polling-delay-passive = <250>; /* milliseconds */ - polling-delay = <5000>; /* milliseconds */ + thermal_zones: thermal-zones { + soc_thermal: soc-thermal { + polling-delay-passive = <200>; /* milliseconds */ + polling-delay = <1000>; /* milliseconds */ + sustainable-power = <1200>; /* milliwatts */ thermal-sensors = <&tsadc 1>; - trips { - cpu_alert0: cpu_alert0 { - temperature = <70000>; /* millicelsius */ + threshold: trip-point@0 { + temperature = <75000>; /* millicelsius */ hysteresis = <2000>; /* millicelsius */ type = "passive"; }; - cpu_alert1: cpu_alert1 { - temperature = <80000>; /* millicelsius */ + target: trip-point@1 { + temperature = <85000>; /* millicelsius */ hysteresis = <2000>; /* millicelsius */ type = "passive"; }; - cpu_crit: cpu_crit { + soc_crit: soc-crit { temperature = <90000>; /* millicelsius */ hysteresis = <2000>; /* millicelsius */ type = "critical"; @@ -563,44 +557,24 @@ cooling-maps { map0 { - trip = <&cpu_alert0>; + trip = <&target>; cooling-device = - <&cpu0 THERMAL_NO_LIMIT 6>; + <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; + contribution = <1024>; }; map1 { - trip = <&cpu_alert1>; + trip = <&target>; cooling-device = - <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; + <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; + contribution = <1024>; }; }; }; - gpu_thermal: gpu_thermal { - polling-delay-passive = <250>; /* milliseconds */ - polling-delay = <5000>; /* milliseconds */ - + gpu_thermal: gpu-thermal { + polling-delay-passive = <200>; /* milliseconds */ + polling-delay = <1000>; /* milliseconds */ thermal-sensors = <&tsadc 2>; - - trips { - gpu_alert0: gpu_alert0 { - temperature = <80000>; /* millicelsius */ - hysteresis = <2000>; /* millicelsius */ - type = "passive"; - }; - gpu_crit: gpu_crit { - temperature = <90000>; /* millicelsius */ - hysteresis = <2000>; /* millicelsius */ - type = "critical"; - }; - }; - - cooling-maps { - map0 { - trip = <&gpu_alert0>; - cooling-device = - <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; - }; - }; }; }; @@ -1478,7 +1452,7 @@ static-power = <300>; dynamic-power = <396>; ts = <32000 4700 (-80) 2>; - thermal-zone = "gpu_thermal"; + thermal-zone = "gpu-thermal"; }; }; -- 2.34.1