Re: [PATCH V3] arm64: dts: ls1046a: Add TMU device tree support

2017-01-09 Thread Shawn Guo
On Wed, Jan 04, 2017 at 10:36:25AM +0800, Jia Hongtao wrote:
> Also add nodes and properties for thermal management support.
> 
> Signed-off-by: Jia Hongtao 

Applied, thanks.


[PATCH V3] arm64: dts: ls1046a: Add TMU device tree support

2017-01-03 Thread Jia Hongtao
Also add nodes and properties for thermal management support.

Signed-off-by: Jia Hongtao 
---
Changes for V3:
* Update the subject title according to Shawn Guo's comment.
* Fix some style issue.

Changes for V2:
* Update the subject title according to Shawn Guo's comment.
* Add comments for calibration data groups.
* Update "thermal-zones" property in a unified style with platform dts.

 arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi | 80 ++
 1 file changed, 80 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi 
b/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
index 38806ca..4a164b8 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
+++ b/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
@@ -45,6 +45,7 @@
  */
 
 #include 
+#include 
 
 / {
compatible = "fsl,ls1046a";
@@ -67,6 +68,7 @@
clocks = <&clockgen 1 0>;
next-level-cache = <&l2>;
cpu-idle-states = <&CPU_PH20>;
+   #cooling-cells = <2>;
};
 
cpu1: cpu@1 {
@@ -279,6 +281,84 @@
clocks = <&sysclk>;
};
 
+   tmu: tmu@1f0 {
+   compatible = "fsl,qoriq-tmu";
+   reg = <0x0 0x1f0 0x0 0x1>;
+   interrupts = <0 33 0x4>;
+   fsl,tmu-range = <0xb 0x9002a 0x6004c 0x30062>;
+   fsl,tmu-calibration =
+   /* Calibration data group 1 */
+   <0x 0x0026
+   0x0001 0x002d
+   0x0002 0x0032
+   0x0003 0x0039
+   0x0004 0x003f
+   0x0005 0x0046
+   0x0006 0x004d
+   0x0007 0x0054
+   0x0008 0x005a
+   0x0009 0x0061
+   0x000a 0x006a
+   0x000b 0x0071
+   /* Calibration data group 2 */
+   0x0001 0x0025
+   0x00010001 0x002c
+   0x00010002 0x0035
+   0x00010003 0x003d
+   0x00010004 0x0045
+   0x00010005 0x004e
+   0x00010006 0x0057
+   0x00010007 0x0061
+   0x00010008 0x006b
+   0x00010009 0x0076
+   /* Calibration data group 3 */
+   0x0002 0x0029
+   0x00020001 0x0033
+   0x00020002 0x003d
+   0x00020003 0x0049
+   0x00020004 0x0056
+   0x00020005 0x0061
+   0x00020006 0x006d
+   /* Calibration data group 4 */
+   0x0003 0x0021
+   0x00030001 0x002a
+   0x00030002 0x003c
+   0x00030003 0x004e>;
+   big-endian;
+   #thermal-sensor-cells = <1>;
+   };
+
+   thermal-zones {
+   cpu_thermal: cpu-thermal {
+   polling-delay-passive = <1000>;
+   polling-delay = <5000>;
+   thermal-sensors = <&tmu 3>;
+
+   trips {
+   cpu_alert: cpu-alert {
+   temperature = <85000>;
+   hysteresis = <2000>;
+   type = "passive";
+   };
+
+   cpu_crit: cpu-crit {
+   temperature = <95000>;
+   hysteresis = <2000>;
+   type = "critical";
+   };
+   };
+
+   cooling-maps {
+   map0 {
+   trip = <&cpu_alert>;
+   cooling-device =
+   <&cpu0 THERMAL_NO_LIMIT
+   THERM