From 12a38f93a47b9ff2c5fc209eb595f3b8fa2c2c7a Mon Sep 17 00:00:00 2001 From: Tonymac32 Date: Wed, 24 May 2017 02:07:12 -0400 Subject: [PATCH] rk3288 Update polling of thermal sensors Trip points at 70, 75, and 90 with increased polling speed --- .../102_dts_rk3288_thermal_tuning.patch | 123 ++++++++++++++++++ 1 file changed, 123 insertions(+) create mode 100644 patch/kernel/rockchip-default/102_dts_rk3288_thermal_tuning.patch diff --git a/patch/kernel/rockchip-default/102_dts_rk3288_thermal_tuning.patch b/patch/kernel/rockchip-default/102_dts_rk3288_thermal_tuning.patch new file mode 100644 index 000000000..bf666b65e --- /dev/null +++ b/patch/kernel/rockchip-default/102_dts_rk3288_thermal_tuning.patch @@ -0,0 +1,123 @@ +diff --git a/arch/arm/boot/dts/rk3288-miniarm.dts b/arch/arm/boot/dts/rk3288-miniarm.dts +index 3aefd31..c4e634c 100644 +--- a/arch/arm/boot/dts/rk3288-miniarm.dts ++++ b/arch/arm/boot/dts/rk3288-miniarm.dts +@@ -280,7 +280,7 @@ + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <750000>; +- regulator-max-microvolt = <1350000>; ++ regulator-max-microvolt = <1450000>; + regulator-name = "vdd_arm"; + regulator-ramp-delay = <6000>; + regulator-state-mem { +diff --git a/arch/arm/boot/dts/rk3288.dtsi b/arch/arm/boot/dts/rk3288.dtsi +index 6a876ed..56dd5c8 100644 +--- a/arch/arm/boot/dts/rk3288.dtsi ++++ b/arch/arm/boot/dts/rk3288.dtsi +@@ -49,6 +49,7 @@ + #include "skeleton.dtsi" + + / { ++ + compatible = "rockchip,rk3288"; + + interrupt-parent = <&gic>; +@@ -537,7 +538,79 @@ + }; + + thermal-zones { +- #include "rk3288-thermal.dtsi" ++ ++ reserve_thermal: reserve_thermal { ++ polling-delay-passive = <1000>; /* milliseconds */ ++ polling-delay = <5000>; /* milliseconds */ ++ ++ thermal-sensors = <&tsadc 0>; ++ }; ++ ++ cpu_thermal: cpu_thermal { ++ polling-delay-passive = <100>; /* milliseconds */ ++ polling-delay = <5000>; /* milliseconds */ ++ sustainable-power = <1200>; ++ thermal-sensors = <&tsadc 1>; ++ ++ trips { ++ cpu_alert0: cpu_alert0 { ++ temperature = <70000>; /* millicelsius */ ++ hysteresis = <2500>; /* millicelsius */ ++ type = "passive"; ++ }; ++ cpu_alert1: cpu_alert1 { ++ temperature = <75000>; /* millicelsius */ ++ hysteresis = <2500>; /* millicelsius */ ++ type = "passive"; ++ }; ++ cpu_crit: cpu_crit { ++ temperature = <90000>; /* millicelsius */ ++ hysteresis = <2000>; /* millicelsius */ ++ type = "critical"; ++ }; ++ }; ++ ++ cooling-maps { ++ ++ map0 { ++ trip = <&cpu_alert0>; ++ cooling-device = <&cpu0 THERMAL_NO_LIMIT 6>; ++ }; ++ ++ map1 { ++ trip = <&cpu_alert1>; ++ cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; ++ }; ++ }; ++ }; ++ ++gpu_thermal: gpu_thermal { ++ polling-delay-passive = <100>; /* milliseconds */ ++ polling-delay = <5000>; /* milliseconds */ ++ ++ thermal-sensors = <&tsadc 2>; ++ ++ trips { ++ gpu_alert0: gpu_alert0 { ++ temperature = <70000>; /* millicelsius */ ++ hysteresis = <2500>; /* 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>; ++ }; ++ }; ++}; + }; + + tsadc: tsadc@ff280000 { +@@ -554,6 +627,7 @@ + pinctrl-2 = <&otp_gpio>; + #thermal-sensor-cells = <1>; + rockchip,hw-tshut-temp = <95000>; ++ rockchip,grf = <&grf>; + status = "disabled"; + }; + +@@ -1311,7 +1385,7 @@ + #address-cells = <0>; + + reg = <0xffc01000 0x1000>, +- <0xffc02000 0x1000>, ++ <0xffc02000 0x2000>, + <0xffc04000 0x2000>, + <0xffc06000 0x2000>; + interrupts = ;