On October 23, 2014 6:08:52 PM PDT, Caesar Wang <caesar.wang@xxxxxxxxxxxxxx> wrote:
Dmitry,Having tshut trigger is not the goal, tshut is the measure of last resort. If we can handle thermal conditions without triggering tshut, we achieved our goal.
å 2014/10/24 8:46, Dmitry Torokhov åé:
Hi Caesar,b/arch/arm/boot/dts/rk3288.dtsi
On Thu, Oct 23, 2014 at 05:40:06PM +0800, Caesar Wang wrote:
This patch is depend on rk3288-thermal.dtsi,or
it will compile error.
If the temperature over a period of time High,over 120C
the resulting TSHUT gave CRU module,let it reset
the entire chip,or via GPIO give PMIC.
Signed-off-by: Caesar Wang <caesar.wang@xxxxxxxxxxxxxx>
---
arch/arm/boot/dts/rk3288.dtsi | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/arch/arm/boot/dts/rk3288.dtsi
Hmmm....index cb18bb4..85fc17a 100644I do not think this is a good value. You have (in the other DTS file)
--- a/arch/arm/boot/dts/rk3288.dtsi
+++ b/arch/arm/boot/dts/rk3288.dtsi
@@ -15,6 +15,7 @@
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/pinctrl/rockchip.h>
#include <dt-bindings/clock/rk3288-cru.h>
+#include <dt-bindings/thermal/thermal.h>
#include "skeleton.dtsi"
/ {
@@ -66,6 +67,7 @@
216000 900000
126000 900000
>;
+ #cooling-cells = <2>; /* min followed by max */
clock-latency = <40000>;
clocks = <&cru ARMCLK>;
};
@@ -346,6 +348,19 @@
status = "disabled";
};
+ tsadc: tsadc@ff280000 {
+ compatible = "rockchip,rk3288-tsadc";
+ reg = <0xff280000 0x100>;
+ interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&cru SCLK_TSADC>, <&cru PCLK_TSADC>;
+ clock-names = "tsadc", "apb_pclk";
+ pinctrl-names = "default";
+ pinctrl-0 = <&otp_out>;
+ #thermal-sensor-cells = <1>;
+ hw-shut-temp = <120000>;
passive trip point at 80 and critical (which should result in orderly
shutdown) at 125. But here you define hardware-controlled shutdown at
120C, which is backwards. You should have:
passive <= critical <= hardware
but, the system will shutdown when temperature over critial value,
there is no chance of triggering the TSHUT.
If the temperature over a period of time High,as we know,
the resulting TSHUT gave CRU module,let it hot-reset the entire chip,
or via GPIO give PMIC cold-reset the entire chip.
Tshut triggering is " oh, crap, nothing we tried works" scenario.
Thanks.