From: Akhil P Oommen <akhilpo@oss.qualcomm.com>
To: Will Deacon <will@kernel.org>,
Robin Murphy <robin.murphy@arm.com>,
Joerg Roedel <joro@8bytes.org>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Bjorn Andersson <andersson@kernel.org>,
Konrad Dybcio <konradybcio@kernel.org>,
Rob Clark <robin.clark@oss.qualcomm.com>,
Dmitry Baryshkov <lumag@kernel.org>,
Abhinav Kumar <abhinav.kumar@linux.dev>,
Jessica Zhang <jesszhan0024@gmail.com>,
Marijn Suijten <marijn.suijten@somainline.org>,
Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
Maxime Ripard <mripard@kernel.org>,
Thomas Zimmermann <tzimmermann@suse.de>,
David Airlie <airlied@gmail.com>, Simona Vetter <simona@ffwll.ch>
Cc: Sean Paul <sean@poorly.run>,
linux-arm-kernel@lists.infradead.org, iommu@lists.linux.dev,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org,
dri-devel@lists.freedesktop.org,
Akhil P Oommen <akhilpo@oss.qualcomm.com>,
Gaurav Kohli <gaurav.kohli@oss.qualcomm.com>
Subject: [PATCH 6/8] arm64: dts: qcom: kaanapali: Add GPU cooling
Date: Tue, 12 May 2026 03:53:20 +0530 [thread overview]
Message-ID: <20260512-kaana-gpu-dt-v1-6-13e1c07c2050@oss.qualcomm.com> (raw)
In-Reply-To: <20260512-kaana-gpu-dt-v1-0-13e1c07c2050@oss.qualcomm.com>
From: Gaurav Kohli <gaurav.kohli@oss.qualcomm.com>
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 <gaurav.kohli@oss.qualcomm.com>
Signed-off-by: Akhil P Oommen <akhilpo@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/kaanapali.dtsi | 165 ++++++++++++++++++++++++++------
1 file changed, 135 insertions(+), 30 deletions(-)
diff --git a/arch/arm64/boot/dts/qcom/kaanapali.dtsi b/arch/arm64/boot/dts/qcom/kaanapali.dtsi
index c57aea44218e..5089416ec32c 100644
--- a/arch/arm64/boot/dts/qcom/kaanapali.dtsi
+++ b/arch/arm64/boot/dts/qcom/kaanapali.dtsi
@@ -26,6 +26,7 @@
#include <dt-bindings/soc/qcom,gpr.h>
#include <dt-bindings/soc/qcom,rpmh-rsc.h>
#include <dt-bindings/sound/qcom,q6dsp-lpass-ports.h>
+#include <dt-bindings/thermal/thermal.h>
#include "kaanapali-ipcc.h"
@@ -7045,13 +7046,15 @@ nsphmx-3-critical {
};
gpuss-0-thermal {
+ polling-delay-passive = <200>;
+
thermal-sensors = <&tsens5 0>;
trips {
- gpuss-0-hot {
- temperature = <120000>;
+ gpuss_0_alert0: gpuss-0-alert0 {
+ temperature = <105000>;
hysteresis = <5000>;
- type = "hot";
+ type = "passive";
};
gpuss-0-critical {
@@ -7060,16 +7063,25 @@ gpuss-0-critical {
type = "critical";
};
};
+
+ cooling-maps {
+ map0 {
+ trip = <&gpuss_0_alert0>;
+ cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
};
gpuss-1-thermal {
+ polling-delay-passive = <200>;
+
thermal-sensors = <&tsens5 1>;
trips {
- gpuss-1-hot {
- temperature = <120000>;
+ gpuss_1_alert0: gpuss-1-alert0 {
+ temperature = <105000>;
hysteresis = <5000>;
- type = "hot";
+ type = "passive";
};
gpuss-1-critical {
@@ -7078,16 +7090,25 @@ gpuss-1-critical {
type = "critical";
};
};
+
+ cooling-maps {
+ map0 {
+ trip = <&gpuss_1_alert0>;
+ cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
};
gpuss-2-thermal {
+ polling-delay-passive = <200>;
+
thermal-sensors = <&tsens5 2>;
trips {
- gpuss-2-hot {
- temperature = <120000>;
+ gpuss_2_alert0: gpuss-2-alert0 {
+ temperature = <105000>;
hysteresis = <5000>;
- type = "hot";
+ type = "passive";
};
gpuss-2-critical {
@@ -7096,16 +7117,25 @@ gpuss-2-critical {
type = "critical";
};
};
+
+ cooling-maps {
+ map0 {
+ trip = <&gpuss_2_alert0>;
+ cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
};
gpuss-3-thermal {
+ polling-delay-passive = <200>;
+
thermal-sensors = <&tsens5 3>;
trips {
- gpuss-3-hot {
- temperature = <120000>;
+ gpuss_3_alert0: gpuss-3-alert0 {
+ temperature = <105000>;
hysteresis = <5000>;
- type = "hot";
+ type = "passive";
};
gpuss-3-critical {
@@ -7114,16 +7144,25 @@ gpuss-3-critical {
type = "critical";
};
};
+
+ cooling-maps {
+ map0 {
+ trip = <&gpuss_3_alert0>;
+ cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
};
gpuss-4-thermal {
+ polling-delay-passive = <200>;
+
thermal-sensors = <&tsens5 4>;
trips {
- gpuss-4-hot {
- temperature = <120000>;
+ gpuss_4_alert0: gpuss-4-alert0 {
+ temperature = <105000>;
hysteresis = <5000>;
- type = "hot";
+ type = "passive";
};
gpuss-4-critical {
@@ -7132,16 +7171,25 @@ gpuss-4-critical {
type = "critical";
};
};
+
+ cooling-maps {
+ map0 {
+ trip = <&gpuss_4_alert0>;
+ cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
};
gpuss-5-thermal {
+ polling-delay-passive = <200>;
+
thermal-sensors = <&tsens5 5>;
trips {
- gpuss-5-hot {
- temperature = <120000>;
+ gpuss_5_alert0: gpuss-5-alert0 {
+ temperature = <105000>;
hysteresis = <5000>;
- type = "hot";
+ type = "passive";
};
gpuss-5-critical {
@@ -7150,16 +7198,25 @@ gpuss-5-critical {
type = "critical";
};
};
+
+ cooling-maps {
+ map0 {
+ trip = <&gpuss_5_alert0>;
+ cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
};
gpuss-6-thermal {
+ polling-delay-passive = <200>;
+
thermal-sensors = <&tsens5 6>;
trips {
- gpuss-6-hot {
- temperature = <120000>;
+ gpuss_6_alert0: gpuss-6-alert0 {
+ temperature = <105000>;
hysteresis = <5000>;
- type = "hot";
+ type = "passive";
};
gpuss-6-critical {
@@ -7168,16 +7225,25 @@ gpuss-6-critical {
type = "critical";
};
};
+
+ cooling-maps {
+ map0 {
+ trip = <&gpuss_6_alert0>;
+ cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
};
gpuss-7-thermal {
+ polling-delay-passive = <200>;
+
thermal-sensors = <&tsens5 7>;
trips {
- gpuss-7-hot {
- temperature = <120000>;
+ gpuss_7_alert0: gpuss-7-alert0 {
+ temperature = <105000>;
hysteresis = <5000>;
- type = "hot";
+ type = "passive";
};
gpuss-7-critical {
@@ -7186,16 +7252,25 @@ gpuss-7-critical {
type = "critical";
};
};
+
+ cooling-maps {
+ map0 {
+ trip = <&gpuss_7_alert0>;
+ cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
};
gpuss-8-thermal {
+ polling-delay-passive = <200>;
+
thermal-sensors = <&tsens5 8>;
trips {
- gpuss-8-hot {
- temperature = <120000>;
+ gpuss_8_alert0: gpuss-8-alert0 {
+ temperature = <105000>;
hysteresis = <5000>;
- type = "hot";
+ type = "passive";
};
gpuss-8-critical {
@@ -7204,16 +7279,25 @@ gpuss-8-critical {
type = "critical";
};
};
+
+ cooling-maps {
+ map0 {
+ trip = <&gpuss_8_alert0>;
+ cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
};
gpuss-9-thermal {
+ polling-delay-passive = <200>;
+
thermal-sensors = <&tsens5 9>;
trips {
- gpuss-9-hot {
- temperature = <120000>;
+ gpuss_9_alert0: gpuss-9-alert0 {
+ temperature = <105000>;
hysteresis = <5000>;
- type = "hot";
+ type = "passive";
};
gpuss-9-critical {
@@ -7222,12 +7306,26 @@ gpuss-9-critical {
type = "critical";
};
};
+
+ cooling-maps {
+ map0 {
+ trip = <&gpuss_9_alert0>;
+ cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
};
gpuss-10-thermal {
+ polling-delay-passive = <200>;
+
thermal-sensors = <&tsens5 10>;
trips {
+ gpuss_10_alert0: gpuss-10-alert0 {
+ temperature = <105000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
gpuss-10-hot {
temperature = <120000>;
hysteresis = <5000>;
@@ -7240,6 +7338,13 @@ gpuss-10-critical {
type = "critical";
};
};
+
+ cooling-maps {
+ map0 {
+ trip = <&gpuss_10_alert0>;
+ cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
};
ddr-thermal {
--
2.51.0
next prev parent reply other threads:[~2026-05-11 22:24 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-11 22:23 [PATCH 0/8] arm64: dts: qcom: Devicetree support for Kaanapali GPU Akhil P Oommen
2026-05-11 22:23 ` [PATCH 1/8] dt-bindings: arm-smmu: Update the description for Kaanapali GPU SMMU Akhil P Oommen
2026-05-15 8:41 ` Krzysztof Kozlowski
2026-05-15 20:26 ` Akhil P Oommen
2026-05-16 4:35 ` Claude review: " Claude Code Review Bot
2026-05-11 22:23 ` [PATCH 2/8] dt-bindings: display/msm: gpu: Document Adreno 840 Akhil P Oommen
2026-05-16 4:35 ` Claude review: " Claude Code Review Bot
2026-05-11 22:23 ` [PATCH 3/8] arm64: dts: qcom: kaanapali: add the GPU SMMU node Akhil P Oommen
2026-05-13 16:51 ` Dmitry Baryshkov
2026-05-14 12:36 ` Konrad Dybcio
2026-05-16 4:35 ` Claude review: " Claude Code Review Bot
2026-05-11 22:23 ` [PATCH 4/8] arm64: dts: qcom: kaanapali: Add qfprom node Akhil P Oommen
2026-05-13 16:52 ` Dmitry Baryshkov
2026-05-14 12:44 ` Konrad Dybcio
2026-05-16 4:35 ` Claude review: " Claude Code Review Bot
2026-05-11 22:23 ` [PATCH 5/8] arm64: dts: qcom: Add GPU support for Kaanapali Akhil P Oommen
2026-05-13 16:53 ` Dmitry Baryshkov
2026-05-14 12:43 ` Konrad Dybcio
2026-05-15 22:08 ` Akhil P Oommen
2026-05-16 4:35 ` Claude review: " Claude Code Review Bot
2026-05-11 22:23 ` Akhil P Oommen [this message]
2026-05-13 17:53 ` [PATCH 6/8] arm64: dts: qcom: kaanapali: Add GPU cooling Dmitry Baryshkov
2026-05-14 6:47 ` Gaurav Kohli
2026-05-16 4:35 ` Claude review: " Claude Code Review Bot
2026-05-11 22:23 ` [PATCH 7/8] arm64: dts: qcom: kaanapali-mtp: Enable GPU Akhil P Oommen
2026-05-13 17:54 ` Dmitry Baryshkov
2026-05-14 12:36 ` Konrad Dybcio
2026-05-16 4:35 ` Claude review: " Claude Code Review Bot
2026-05-11 22:23 ` [PATCH 8/8] arm64: dts: qcom: kaanapali-qrd: " Akhil P Oommen
2026-05-13 17:54 ` Dmitry Baryshkov
2026-05-14 12:37 ` Konrad Dybcio
2026-05-16 4:35 ` Claude review: " Claude Code Review Bot
2026-05-16 4:35 ` Claude review: arm64: dts: qcom: Devicetree support for Kaanapali GPU Claude Code Review Bot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260512-kaana-gpu-dt-v1-6-13e1c07c2050@oss.qualcomm.com \
--to=akhilpo@oss.qualcomm.com \
--cc=abhinav.kumar@linux.dev \
--cc=airlied@gmail.com \
--cc=andersson@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=freedreno@lists.freedesktop.org \
--cc=gaurav.kohli@oss.qualcomm.com \
--cc=iommu@lists.linux.dev \
--cc=jesszhan0024@gmail.com \
--cc=joro@8bytes.org \
--cc=konradybcio@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lumag@kernel.org \
--cc=maarten.lankhorst@linux.intel.com \
--cc=marijn.suijten@somainline.org \
--cc=mripard@kernel.org \
--cc=robh@kernel.org \
--cc=robin.clark@oss.qualcomm.com \
--cc=robin.murphy@arm.com \
--cc=sean@poorly.run \
--cc=simona@ffwll.ch \
--cc=tzimmermann@suse.de \
--cc=will@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox