Commit 9843a223 authored by Lukasz Majewski's avatar Lukasz Majewski Committed by Kukjin Kim

ARM: dts: Provide dt bindings identical for Exynos TMU

Presented device tree bindings provide data already hardcoded in the
exynos_tmu_data.c file.
After this commit, it should be possible to reuse common thermal core
framework in Exynos SoCs.
Signed-off-by: default avatarLukasz Majewski <l.majewski@samsung.com>
Acked-by: default avatarEduardo Valentin <edubezval@gmail.com>
Signed-off-by: default avatarKukjin Kim <kgene@kernel.org>
parent 6562504d
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
*/ */
#include "skeleton.dtsi" #include "skeleton.dtsi"
#include "exynos4-cpu-thermal.dtsi"
#include <dt-bindings/clock/exynos3250.h> #include <dt-bindings/clock/exynos3250.h>
/ { / {
...@@ -193,6 +194,7 @@ tmu: tmu@100C0000 { ...@@ -193,6 +194,7 @@ tmu: tmu@100C0000 {
interrupts = <0 216 0>; interrupts = <0 216 0>;
clocks = <&cmu CLK_TMU_APBIF>; clocks = <&cmu CLK_TMU_APBIF>;
clock-names = "tmu_apbif"; clock-names = "tmu_apbif";
#include "exynos4412-tmu-sensor-conf.dtsi"
status = "disabled"; status = "disabled";
}; };
......
...@@ -663,6 +663,10 @@ fimd: fimd@11c00000 { ...@@ -663,6 +663,10 @@ fimd: fimd@11c00000 {
status = "disabled"; status = "disabled";
}; };
tmu: tmu@100C0000 {
#include "exynos4412-tmu-sensor-conf.dtsi"
};
ppmu_dmc0: ppmu_dmc0@106a0000 { ppmu_dmc0: ppmu_dmc0@106a0000 {
compatible = "samsung,exynos-ppmu"; compatible = "samsung,exynos-ppmu";
reg = <0x106a0000 0x2000>; reg = <0x106a0000 0x2000>;
......
...@@ -21,6 +21,7 @@ ...@@ -21,6 +21,7 @@
#include "exynos4.dtsi" #include "exynos4.dtsi"
#include "exynos4210-pinctrl.dtsi" #include "exynos4210-pinctrl.dtsi"
#include "exynos4-cpu-thermal.dtsi"
/ { / {
compatible = "samsung,exynos4210", "samsung,exynos4"; compatible = "samsung,exynos4210", "samsung,exynos4";
...@@ -156,16 +157,38 @@ pinctrl_2: pinctrl@03860000 { ...@@ -156,16 +157,38 @@ pinctrl_2: pinctrl@03860000 {
reg = <0x03860000 0x1000>; reg = <0x03860000 0x1000>;
}; };
tmu@100C0000 { tmu: tmu@100C0000 {
compatible = "samsung,exynos4210-tmu"; compatible = "samsung,exynos4210-tmu";
interrupt-parent = <&combiner>; interrupt-parent = <&combiner>;
reg = <0x100C0000 0x100>; reg = <0x100C0000 0x100>;
interrupts = <2 4>; interrupts = <2 4>;
clocks = <&clock CLK_TMU_APBIF>; clocks = <&clock CLK_TMU_APBIF>;
clock-names = "tmu_apbif"; clock-names = "tmu_apbif";
samsung,tmu_gain = <15>;
samsung,tmu_reference_voltage = <7>;
status = "disabled"; status = "disabled";
}; };
thermal-zones {
cpu_thermal: cpu-thermal {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&tmu 0>;
trips {
cpu_alert0: cpu-alert-0 {
temperature = <85000>; /* millicelsius */
};
cpu_alert1: cpu-alert-1 {
temperature = <100000>; /* millicelsius */
};
cpu_alert2: cpu-alert-2 {
temperature = <110000>; /* millicelsius */
};
};
};
};
g2d@12800000 { g2d@12800000 {
compatible = "samsung,s5pv210-g2d"; compatible = "samsung,s5pv210-g2d";
reg = <0x12800000 0x1000>; reg = <0x12800000 0x1000>;
......
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
#include "exynos4.dtsi" #include "exynos4.dtsi"
#include "exynos4x12-pinctrl.dtsi" #include "exynos4x12-pinctrl.dtsi"
#include "exynos4-cpu-thermal.dtsi"
/ { / {
aliases { aliases {
......
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
#include <dt-bindings/clock/exynos5250.h> #include <dt-bindings/clock/exynos5250.h>
#include "exynos5.dtsi" #include "exynos5.dtsi"
#include "exynos5250-pinctrl.dtsi" #include "exynos5250-pinctrl.dtsi"
#include "exynos4-cpu-thermal.dtsi"
#include <dt-bindings/clock/exynos-audss-clk.h> #include <dt-bindings/clock/exynos-audss-clk.h>
/ { / {
...@@ -238,16 +238,21 @@ rtc: rtc@101E0000 { ...@@ -238,16 +238,21 @@ rtc: rtc@101E0000 {
status = "disabled"; status = "disabled";
}; };
tmu@10060000 { tmu: tmu@10060000 {
compatible = "samsung,exynos5250-tmu"; compatible = "samsung,exynos5250-tmu";
reg = <0x10060000 0x100>; reg = <0x10060000 0x100>;
interrupts = <0 65 0>; interrupts = <0 65 0>;
clocks = <&clock CLK_TMU>; clocks = <&clock CLK_TMU>;
clock-names = "tmu_apbif"; clock-names = "tmu_apbif";
#include "exynos4412-tmu-sensor-conf.dtsi"
}; };
thermal-zones { thermal-zones {
cpu_thermal: cpu-thermal { cpu_thermal: cpu-thermal {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&tmu 0>;
cooling-maps { cooling-maps {
map0 { map0 {
/* Corresponds to 800MHz at freq_table */ /* Corresponds to 800MHz at freq_table */
......
...@@ -782,6 +782,7 @@ tmu_cpu0: tmu@10060000 { ...@@ -782,6 +782,7 @@ tmu_cpu0: tmu@10060000 {
interrupts = <0 65 0>; interrupts = <0 65 0>;
clocks = <&clock CLK_TMU>; clocks = <&clock CLK_TMU>;
clock-names = "tmu_apbif"; clock-names = "tmu_apbif";
#include "exynos4412-tmu-sensor-conf.dtsi"
}; };
tmu_cpu1: tmu@10064000 { tmu_cpu1: tmu@10064000 {
...@@ -790,6 +791,7 @@ tmu_cpu1: tmu@10064000 { ...@@ -790,6 +791,7 @@ tmu_cpu1: tmu@10064000 {
interrupts = <0 183 0>; interrupts = <0 183 0>;
clocks = <&clock CLK_TMU>; clocks = <&clock CLK_TMU>;
clock-names = "tmu_apbif"; clock-names = "tmu_apbif";
#include "exynos4412-tmu-sensor-conf.dtsi"
}; };
tmu_cpu2: tmu@10068000 { tmu_cpu2: tmu@10068000 {
...@@ -798,6 +800,7 @@ tmu_cpu2: tmu@10068000 { ...@@ -798,6 +800,7 @@ tmu_cpu2: tmu@10068000 {
interrupts = <0 184 0>; interrupts = <0 184 0>;
clocks = <&clock CLK_TMU>, <&clock CLK_TMU>; clocks = <&clock CLK_TMU>, <&clock CLK_TMU>;
clock-names = "tmu_apbif", "tmu_triminfo_apbif"; clock-names = "tmu_apbif", "tmu_triminfo_apbif";
#include "exynos4412-tmu-sensor-conf.dtsi"
}; };
tmu_cpu3: tmu@1006c000 { tmu_cpu3: tmu@1006c000 {
...@@ -806,6 +809,7 @@ tmu_cpu3: tmu@1006c000 { ...@@ -806,6 +809,7 @@ tmu_cpu3: tmu@1006c000 {
interrupts = <0 185 0>; interrupts = <0 185 0>;
clocks = <&clock CLK_TMU>, <&clock CLK_TMU_GPU>; clocks = <&clock CLK_TMU>, <&clock CLK_TMU_GPU>;
clock-names = "tmu_apbif", "tmu_triminfo_apbif"; clock-names = "tmu_apbif", "tmu_triminfo_apbif";
#include "exynos4412-tmu-sensor-conf.dtsi"
}; };
tmu_gpu: tmu@100a0000 { tmu_gpu: tmu@100a0000 {
...@@ -814,6 +818,30 @@ tmu_gpu: tmu@100a0000 { ...@@ -814,6 +818,30 @@ tmu_gpu: tmu@100a0000 {
interrupts = <0 215 0>; interrupts = <0 215 0>;
clocks = <&clock CLK_TMU_GPU>, <&clock CLK_TMU>; clocks = <&clock CLK_TMU_GPU>, <&clock CLK_TMU>;
clock-names = "tmu_apbif", "tmu_triminfo_apbif"; clock-names = "tmu_apbif", "tmu_triminfo_apbif";
#include "exynos4412-tmu-sensor-conf.dtsi"
};
thermal-zones {
cpu0_thermal: cpu0-thermal {
thermal-sensors = <&tmu_cpu0>;
#include "exynos5420-trip-points.dtsi"
};
cpu1_thermal: cpu1-thermal {
thermal-sensors = <&tmu_cpu1>;
#include "exynos5420-trip-points.dtsi"
};
cpu2_thermal: cpu2-thermal {
thermal-sensors = <&tmu_cpu2>;
#include "exynos5420-trip-points.dtsi"
};
cpu3_thermal: cpu3-thermal {
thermal-sensors = <&tmu_cpu3>;
#include "exynos5420-trip-points.dtsi"
};
gpu_thermal: gpu-thermal {
thermal-sensors = <&tmu_gpu>;
#include "exynos5420-trip-points.dtsi"
};
}; };
watchdog: watchdog@101D0000 { watchdog: watchdog@101D0000 {
......
...@@ -219,6 +219,7 @@ tmuctrl_0: tmuctrl@160118 { ...@@ -219,6 +219,7 @@ tmuctrl_0: tmuctrl@160118 {
interrupts = <0 58 0>; interrupts = <0 58 0>;
clocks = <&clock CLK_B_125>; clocks = <&clock CLK_B_125>;
clock-names = "tmu_apbif"; clock-names = "tmu_apbif";
#include "exynos5440-tmu-sensor-conf.dtsi"
}; };
tmuctrl_1: tmuctrl@16011C { tmuctrl_1: tmuctrl@16011C {
...@@ -227,6 +228,7 @@ tmuctrl_1: tmuctrl@16011C { ...@@ -227,6 +228,7 @@ tmuctrl_1: tmuctrl@16011C {
interrupts = <0 58 0>; interrupts = <0 58 0>;
clocks = <&clock CLK_B_125>; clocks = <&clock CLK_B_125>;
clock-names = "tmu_apbif"; clock-names = "tmu_apbif";
#include "exynos5440-tmu-sensor-conf.dtsi"
}; };
tmuctrl_2: tmuctrl@160120 { tmuctrl_2: tmuctrl@160120 {
...@@ -235,6 +237,22 @@ tmuctrl_2: tmuctrl@160120 { ...@@ -235,6 +237,22 @@ tmuctrl_2: tmuctrl@160120 {
interrupts = <0 58 0>; interrupts = <0 58 0>;
clocks = <&clock CLK_B_125>; clocks = <&clock CLK_B_125>;
clock-names = "tmu_apbif"; clock-names = "tmu_apbif";
#include "exynos5440-tmu-sensor-conf.dtsi"
};
thermal-zones {
cpu0_thermal: cpu0-thermal {
thermal-sensors = <&tmuctrl_0>;
#include "exynos5440-trip-points.dtsi"
};
cpu1_thermal: cpu1-thermal {
thermal-sensors = <&tmuctrl_1>;
#include "exynos5440-trip-points.dtsi"
};
cpu2_thermal: cpu2-thermal {
thermal-sensors = <&tmuctrl_2>;
#include "exynos5440-trip-points.dtsi"
};
}; };
sata@210000 { sata@210000 {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment