arm64: dts: mediatek: mt8188: add default thermal zones

Inspired by the vendor kernel but adapted to the upstream thermal
driver version.

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
Signed-off-by: Julien Panis <jpanis@baylibre.com>
Link: https://lore.kernel.org/r/20240603-mtk-thermal-mt818x-dtsi-v7-6-8c8e3c7a3643@baylibre.com
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
This commit is contained in:
Nicolas Pitre 2024-06-03 12:50:53 +02:00 committed by AngeloGioacchino Del Regno
parent d39aacd102
commit 48456547da
No known key found for this signature in database
GPG Key ID: 9A3604CFAD978478

View File

@ -13,6 +13,8 @@
#include <dt-bindings/pinctrl/mediatek,mt8188-pinfunc.h>
#include <dt-bindings/power/mediatek,mt8188-power.h>
#include <dt-bindings/reset/mt8188-resets.h>
#include <dt-bindings/thermal/thermal.h>
#include <dt-bindings/thermal/mediatek,lvts-thermal.h>
/ {
compatible = "mediatek,mt8188";
@ -418,6 +420,450 @@ psci {
method = "smc";
};
thermal_zones: thermal-zones {
cpu-little0-thermal {
polling-delay = <1000>;
polling-delay-passive = <150>;
thermal-sensors = <&lvts_mcu MT8188_MCU_LITTLE_CPU0>;
trips {
cpu_little0_alert0: trip-alert0 {
temperature = <85000>;
hysteresis = <2000>;
type = "passive";
};
cpu_little0_alert1: trip-alert1 {
temperature = <95000>;
hysteresis = <2000>;
type = "hot";
};
cpu_little0_crit: trip-crit {
temperature = <100000>;
hysteresis = <0>;
type = "critical";
};
};
cooling-maps {
map0 {
trip = <&cpu_little0_alert0>;
cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
cpu-little1-thermal {
polling-delay = <1000>;
polling-delay-passive = <150>;
thermal-sensors = <&lvts_mcu MT8188_MCU_LITTLE_CPU1>;
trips {
cpu_little1_alert0: trip-alert0 {
temperature = <85000>;
hysteresis = <2000>;
type = "passive";
};
cpu_little1_alert1: trip-alert1 {
temperature = <95000>;
hysteresis = <2000>;
type = "hot";
};
cpu_little1_crit: trip-crit {
temperature = <100000>;
hysteresis = <0>;
type = "critical";
};
};
cooling-maps {
map0 {
trip = <&cpu_little1_alert0>;
cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
cpu-little2-thermal {
polling-delay = <1000>;
polling-delay-passive = <150>;
thermal-sensors = <&lvts_mcu MT8188_MCU_LITTLE_CPU2>;
trips {
cpu_little2_alert0: trip-alert0 {
temperature = <85000>;
hysteresis = <2000>;
type = "passive";
};
cpu_little2_alert1: trip-alert1 {
temperature = <95000>;
hysteresis = <2000>;
type = "hot";
};
cpu_little2_crit: trip-crit {
temperature = <100000>;
hysteresis = <0>;
type = "critical";
};
};
cooling-maps {
map0 {
trip = <&cpu_little2_alert0>;
cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
cpu-little3-thermal {
polling-delay = <1000>;
polling-delay-passive = <150>;
thermal-sensors = <&lvts_mcu MT8188_MCU_LITTLE_CPU3>;
trips {
cpu_little3_alert0: trip-alert0 {
temperature = <85000>;
hysteresis = <2000>;
type = "passive";
};
cpu_little3_alert1: trip-alert1 {
temperature = <95000>;
hysteresis = <2000>;
type = "hot";
};
cpu_little3_crit: trip-crit {
temperature = <100000>;
hysteresis = <0>;
type = "critical";
};
};
cooling-maps {
map0 {
trip = <&cpu_little3_alert0>;
cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
cpu-big0-thermal {
polling-delay = <1000>;
polling-delay-passive = <100>;
thermal-sensors = <&lvts_mcu MT8188_MCU_BIG_CPU0>;
trips {
cpu_big0_alert0: trip-alert0 {
temperature = <85000>;
hysteresis = <2000>;
type = "passive";
};
cpu_big0_alert1: trip-alert1 {
temperature = <95000>;
hysteresis = <2000>;
type = "hot";
};
cpu_big0_crit: trip-crit {
temperature = <100000>;
hysteresis = <0>;
type = "critical";
};
};
cooling-maps {
map0 {
trip = <&cpu_big0_alert0>;
cooling-device = <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
cpu-big1-thermal {
polling-delay = <1000>;
polling-delay-passive = <100>;
thermal-sensors = <&lvts_mcu MT8188_MCU_BIG_CPU1>;
trips {
cpu_big1_alert0: trip-alert0 {
temperature = <85000>;
hysteresis = <2000>;
type = "passive";
};
cpu_big1_alert1: trip-alert1 {
temperature = <95000>;
hysteresis = <2000>;
type = "hot";
};
cpu_big1_crit: trip-crit {
temperature = <100000>;
hysteresis = <0>;
type = "critical";
};
};
cooling-maps {
map0 {
trip = <&cpu_big1_alert0>;
cooling-device = <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
apu-thermal {
polling-delay = <1000>;
polling-delay-passive = <250>;
thermal-sensors = <&lvts_ap MT8188_AP_APU>;
trips {
apu_alert0: trip-alert0 {
temperature = <85000>;
hysteresis = <2000>;
type = "passive";
};
apu_alert1: trip-alert1 {
temperature = <95000>;
hysteresis = <2000>;
type = "hot";
};
apu_crit: trip-crit {
temperature = <100000>;
hysteresis = <0>;
type = "critical";
};
};
};
gpu-thermal {
polling-delay = <1000>;
polling-delay-passive = <250>;
thermal-sensors = <&lvts_ap MT8188_AP_GPU0>;
trips {
gpu_alert0: trip-alert0 {
temperature = <85000>;
hysteresis = <2000>;
type = "passive";
};
gpu_alert1: trip-alert1 {
temperature = <95000>;
hysteresis = <2000>;
type = "hot";
};
gpu_crit: trip-crit {
temperature = <100000>;
hysteresis = <0>;
type = "critical";
};
};
cooling-maps {
map0 {
trip = <&gpu_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
gpu1-thermal {
polling-delay = <1000>;
polling-delay-passive = <250>;
thermal-sensors = <&lvts_ap MT8188_AP_GPU1>;
trips {
gpu1_alert0: trip-alert0 {
temperature = <85000>;
hysteresis = <2000>;
type = "passive";
};
gpu1_alert1: trip-alert1 {
temperature = <95000>;
hysteresis = <2000>;
type = "hot";
};
gpu1_crit: trip-crit {
temperature = <100000>;
hysteresis = <0>;
type = "critical";
};
};
cooling-maps {
map0 {
trip = <&gpu1_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
adsp-thermal {
polling-delay = <1000>;
polling-delay-passive = <250>;
thermal-sensors = <&lvts_ap MT8188_AP_ADSP>;
trips {
soc_alert0: trip-alert0 {
temperature = <85000>;
hysteresis = <2000>;
type = "passive";
};
soc_alert1: trip-alert1 {
temperature = <95000>;
hysteresis = <2000>;
type = "hot";
};
soc_crit: trip-crit {
temperature = <100000>;
hysteresis = <0>;
type = "critical";
};
};
};
vdo-thermal {
polling-delay = <1000>;
polling-delay-passive = <250>;
thermal-sensors = <&lvts_ap MT8188_AP_VDO>;
trips {
soc1_alert0: trip-alert0 {
temperature = <85000>;
hysteresis = <2000>;
type = "passive";
};
soc1_alert1: trip-alert1 {
temperature = <95000>;
hysteresis = <2000>;
type = "hot";
};
soc1_crit: trip-crit {
temperature = <100000>;
hysteresis = <0>;
type = "critical";
};
};
};
infra-thermal {
polling-delay = <1000>;
polling-delay-passive = <250>;
thermal-sensors = <&lvts_ap MT8188_AP_INFRA>;
trips {
soc2_alert0: trip-alert0 {
temperature = <85000>;
hysteresis = <2000>;
type = "passive";
};
soc2_alert1: trip-alert1 {
temperature = <95000>;
hysteresis = <2000>;
type = "hot";
};
soc2_crit: trip-crit {
temperature = <100000>;
hysteresis = <0>;
type = "critical";
};
};
};
cam1-thermal {
polling-delay = <1000>;
polling-delay-passive = <250>;
thermal-sensors = <&lvts_ap MT8188_AP_CAM1>;
trips {
cam1_alert0: trip-alert0 {
temperature = <85000>;
hysteresis = <2000>;
type = "passive";
};
cam1_alert1: trip-alert1 {
temperature = <95000>;
hysteresis = <2000>;
type = "hot";
};
cam1_crit: trip-crit {
temperature = <100000>;
hysteresis = <0>;
type = "critical";
};
};
};
cam2-thermal {
polling-delay = <1000>;
polling-delay-passive = <250>;
thermal-sensors = <&lvts_ap MT8188_AP_CAM2>;
trips {
cam2_alert0: trip-alert0 {
temperature = <85000>;
hysteresis = <2000>;
type = "passive";
};
cam2_alert1: trip-alert1 {
temperature = <95000>;
hysteresis = <2000>;
type = "hot";
};
cam2_crit: trip-crit {
temperature = <100000>;
hysteresis = <0>;
type = "critical";
};
};
};
};
timer: timer {
compatible = "arm,armv8-timer";
interrupt-parent = <&gic>;
@ -1322,6 +1768,7 @@ gpu: gpu@13000000 {
<&spm MT8188_POWER_DOMAIN_MFG3>,
<&spm MT8188_POWER_DOMAIN_MFG4>;
power-domain-names = "core0", "core1", "core2";
#cooling-cells = <2>;
status = "disabled";
};