]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
arm64: dts: qcom: lemans: Add GPU cooling
authorGaurav Kohli <quic_gkohli@quicinc.com>
Tue, 30 Dec 2025 12:33:26 +0000 (18:03 +0530)
committerBjorn Andersson <andersson@kernel.org>
Sat, 3 Jan 2026 15:49:46 +0000 (09:49 -0600)
Unlike the CPU, the GPU does not throttle its speed automatically when it
reaches high temperatures.

Set up GPU cooling by throttling the GPU speed
when reaching 105°C.

Signed-off-by: Gaurav Kohli <quic_gkohli@quicinc.com>
Signed-off-by: Akhil P Oommen <akhilpo@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20251230-a663-gpu-support-v9-2-186722e25387@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/lemans.dtsi

index 883f9e0ab45c98b9e128f3fa141d625431d89831..14d9f31e7086dd337c658cdb3989a4fd1c83092b 100644 (file)
@@ -21,6 +21,7 @@
 #include <dt-bindings/power/qcom-rpmpd.h>
 #include <dt-bindings/soc/qcom,gpr.h>
 #include <dt-bindings/soc/qcom,rpmh-rsc.h>
+#include <dt-bindings/thermal/thermal.h>
 
 / {
        interrupt-parent = <&intc>;
 
                        thermal-sensors = <&tsens0 5>;
 
+                       cooling-maps {
+                               map0 {
+                                       trip = <&gpuss0_alert0>;
+                                       cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+                               };
+                       };
+
                        trips {
-                               trip-point0 {
+                               gpuss0_alert0: trip-point0 {
                                        temperature = <105000>;
                                        hysteresis = <5000>;
                                        type = "passive";
 
                        thermal-sensors = <&tsens0 6>;
 
+                       cooling-maps {
+                               map0 {
+                                       trip = <&gpuss1_alert0>;
+                                       cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+                               };
+                       };
+
                        trips {
-                               trip-point0 {
+                               gpuss1_alert0: trip-point0 {
                                        temperature = <105000>;
                                        hysteresis = <5000>;
                                        type = "passive";
 
                        thermal-sensors = <&tsens0 7>;
 
+                       cooling-maps {
+                               map0 {
+                                       trip = <&gpuss2_alert0>;
+                                       cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+                               };
+                       };
+
                        trips {
-                               trip-point0 {
+                               gpuss2_alert0: trip-point0 {
                                        temperature = <105000>;
                                        hysteresis = <5000>;
                                        type = "passive";
 
                        thermal-sensors = <&tsens1 5>;
 
+                       cooling-maps {
+                               map0 {
+                                       trip = <&gpuss3_alert0>;
+                                       cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+                               };
+                       };
+
                        trips {
-                               trip-point0 {
+                               gpuss3_alert0: trip-point0 {
                                        temperature = <105000>;
                                        hysteresis = <5000>;
                                        type = "passive";
 
                        thermal-sensors = <&tsens1 6>;
 
+                       cooling-maps {
+                               map0 {
+                                       trip = <&gpuss4_alert0>;
+                                       cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+                               };
+                       };
+
                        trips {
-                               trip-point0 {
+                               gpuss4_alert0: trip-point0 {
                                        temperature = <105000>;
                                        hysteresis = <5000>;
                                        type = "passive";
 
                        thermal-sensors = <&tsens1 7>;
 
+                       cooling-maps {
+                               map0 {
+                                       trip = <&gpuss5_alert0>;
+                                       cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+                               };
+                       };
+
                        trips {
-                               trip-point0 {
+                               gpuss5_alert0: trip-point0 {
                                        temperature = <105000>;
                                        hysteresis = <5000>;
                                        type = "passive";