arm64: dts: qcom: glymur: Add GPU cooling

The GPU does not throttle its speed automatically when it
reaches high temperatures. Set up GPU cooling by throttling
the GPU speed when it reaches 95°C.

Signed-off-by: Manaf Meethalavalappu Pallikunhi <manaf.pallikunhi@oss.qualcomm.com>
Signed-off-by: Akhil P Oommen <akhilpo@oss.qualcomm.com>
Acked-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://patch.msgid.link/20260522-glymur-gpu-dt-v5-5-562c406b210c@oss.qualcomm.com
Signed-off-by: Abel Vesa <abel.vesa@oss.qualcomm.com>
This commit is contained in:
Manaf Meethalavalappu Pallikunhi
2026-08-05 15:36:01 +03:00
committed by Abel Vesa
parent 8820700bfb
commit 6db0652c98
+184 -56
View File
@@ -22,6 +22,7 @@
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
#include <dt-bindings/soc/qcom,rpmh-rsc.h>
#include <dt-bindings/spmi/spmi.h>
#include <dt-bindings/thermal/thermal.h>
#include "glymur-ipcc.h"
@@ -8529,13 +8530,22 @@
};
thermal_gpu_0_0: gpu-0-0-thermal {
polling-delay-passive = <100>;
thermal-sensors = <&tsens7 1>;
cooling-maps {
map0 {
trip = <&gpu00_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
trips {
trip-point0 {
temperature = <90000>;
hysteresis = <5000>;
type = "hot";
gpu00_alert0: trip-point0 {
temperature = <95000>;
hysteresis = <1000>;
type = "passive";
};
gpu-0-0-critical {
@@ -8544,16 +8554,26 @@
type = "critical";
};
};
};
thermal_gpu_0_1: gpu-0-1-thermal {
polling-delay-passive = <100>;
thermal-sensors = <&tsens7 2>;
cooling-maps {
map0 {
trip = <&gpu01_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
trips {
trip-point0 {
temperature = <90000>;
hysteresis = <5000>;
type = "hot";
gpu01_alert0: trip-point0 {
temperature = <95000>;
hysteresis = <1000>;
type = "passive";
};
gpu-0-1-critical {
@@ -8565,13 +8585,22 @@
};
thermal_gpu_0_2: gpu-0-2-thermal {
polling-delay-passive = <100>;
thermal-sensors = <&tsens7 3>;
cooling-maps {
map0 {
trip = <&gpu02_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
trips {
trip-point0 {
temperature = <90000>;
hysteresis = <5000>;
type = "hot";
gpu02_alert0: trip-point0 {
temperature = <95000>;
hysteresis = <1000>;
type = "passive";
};
gpu-0-2-critical {
@@ -8583,13 +8612,22 @@
};
thermal_gpu_1_0: gpu-1-0-thermal {
polling-delay-passive = <100>;
thermal-sensors = <&tsens7 4>;
cooling-maps {
map0 {
trip = <&gpu10_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
trips {
trip-point0 {
temperature = <90000>;
hysteresis = <5000>;
type = "hot";
gpu10_alert0: trip-point0 {
temperature = <95000>;
hysteresis = <1000>;
type = "passive";
};
gpu-1-0-critical {
@@ -8601,13 +8639,22 @@
};
thermal_gpu_1_1: gpu-1-1-thermal {
polling-delay-passive = <100>;
thermal-sensors = <&tsens7 5>;
cooling-maps {
map0 {
trip = <&gpu11_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
trips {
trip-point0 {
temperature = <90000>;
hysteresis = <5000>;
type = "hot";
gpu11_alert0: trip-point0 {
temperature = <95000>;
hysteresis = <1000>;
type = "passive";
};
gpu-1-1-critical {
@@ -8619,13 +8666,22 @@
};
thermal_gpu_1_2: gpu-1-2-thermal {
polling-delay-passive = <100>;
thermal-sensors = <&tsens7 6>;
cooling-maps {
map0 {
trip = <&gpu12_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
trips {
trip-point0 {
temperature = <90000>;
hysteresis = <5000>;
type = "hot";
gpu12_alert0: trip-point0 {
temperature = <95000>;
hysteresis = <1000>;
type = "passive";
};
gpu-1-2-critical {
@@ -8637,13 +8693,22 @@
};
thermal_gpu_2_0: gpu-2-0-thermal {
polling-delay-passive = <100>;
thermal-sensors = <&tsens7 7>;
cooling-maps {
map0 {
trip = <&gpu20_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
trips {
trip-point0 {
temperature = <90000>;
hysteresis = <5000>;
type = "hot";
gpu20_alert0: trip-point0 {
temperature = <95000>;
hysteresis = <1000>;
type = "passive";
};
gpu-2-0-critical {
@@ -8655,13 +8720,22 @@
};
thermal_gpu_2_1: gpu-2-1-thermal {
polling-delay-passive = <100>;
thermal-sensors = <&tsens7 8>;
cooling-maps {
map0 {
trip = <&gpu21_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
trips {
trip-point0 {
temperature = <90000>;
hysteresis = <5000>;
type = "hot";
gpu21_alert0: trip-point0 {
temperature = <95000>;
hysteresis = <1000>;
type = "passive";
};
gpu-2-1-critical {
@@ -8673,13 +8747,22 @@
};
thermal_gpu_2_2: gpu-2-2-thermal {
polling-delay-passive = <100>;
thermal-sensors = <&tsens7 9>;
cooling-maps {
map0 {
trip = <&gpu22_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
trips {
trip-point0 {
temperature = <90000>;
hysteresis = <5000>;
type = "hot";
gpu22_alert0: trip-point0 {
temperature = <95000>;
hysteresis = <1000>;
type = "passive";
};
gpu-2-2-critical {
@@ -8691,13 +8774,22 @@
};
thermal_gpu_3_0: gpu-3-0-thermal {
polling-delay-passive = <100>;
thermal-sensors = <&tsens7 10>;
cooling-maps {
map0 {
trip = <&gpu30_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
trips {
trip-point0 {
temperature = <90000>;
hysteresis = <5000>;
type = "hot";
gpu30_alert0: trip-point0 {
temperature = <95000>;
hysteresis = <1000>;
type = "passive";
};
gpu-3-0-critical {
@@ -8709,13 +8801,22 @@
};
thermal_gpu_3_1: gpu-3-1-thermal {
polling-delay-passive = <100>;
thermal-sensors = <&tsens7 11>;
cooling-maps {
map0 {
trip = <&gpu31_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
trips {
trip-point0 {
temperature = <90000>;
hysteresis = <5000>;
type = "hot";
gpu31_alert0: trip-point0 {
temperature = <95000>;
hysteresis = <1000>;
type = "passive";
};
gpu-3-1-critical {
@@ -8727,13 +8828,22 @@
};
thermal_gpu_3_2: gpu-3-2-thermal {
polling-delay-passive = <100>;
thermal-sensors = <&tsens7 12>;
cooling-maps {
map0 {
trip = <&gpu32_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
trips {
trip-point0 {
temperature = <90000>;
hysteresis = <5000>;
type = "hot";
gpu32_alert0: trip-point0 {
temperature = <95000>;
hysteresis = <1000>;
type = "passive";
};
gpu-3-2-critical {
@@ -8745,13 +8855,22 @@
};
thermal_gpuss_0: gpuss-0-thermal {
polling-delay-passive = <100>;
thermal-sensors = <&tsens7 13>;
cooling-maps {
map0 {
trip = <&gpuss0_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
trips {
trip-point0 {
temperature = <90000>;
hysteresis = <5000>;
type = "hot";
gpuss0_alert0: trip-point0 {
temperature = <95000>;
hysteresis = <1000>;
type = "passive";
};
gpuss-0-critical {
@@ -8763,13 +8882,22 @@
};
thermal_gpuss_1: gpuss-1-thermal {
polling-delay-passive = <100>;
thermal-sensors = <&tsens7 14>;
cooling-maps {
map0 {
trip = <&gpuss1_alert0>;
cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
trips {
trip-point0 {
temperature = <90000>;
hysteresis = <5000>;
type = "hot";
gpuss1_alert0: trip-point0 {
temperature = <95000>;
hysteresis = <1000>;
type = "passive";
};
gpuss-1-critical {