[PATCH v2 2/3] arm64: tegra: Add thermal zones for Tegra264
From: Thierry Reding
Date: Fri Aug 28 2026 - 07:52:25 EST
From: Thierry Reding <treding@xxxxxxxxxx>
Add the thermal zones exposed by the BPMP on Tegra264 so that cooling
devices can be attached to them in board-level DTS files.
Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
---
Changes in v2:
- move thermal header below DTS directory
- fix typo in include guard comment
---
arch/arm64/boot/dts/nvidia/tegra264.dtsi | 29 ++++++++++++++++++++++
.../boot/dts/nvidia/thermal/nvidia,tegra264-bpmp.h | 20 +++++++++++++++
2 files changed, 49 insertions(+)
diff --git a/arch/arm64/boot/dts/nvidia/tegra264.dtsi b/arch/arm64/boot/dts/nvidia/tegra264.dtsi
index 630c20523dcf..953d50af0c08 100644
--- a/arch/arm64/boot/dts/nvidia/tegra264.dtsi
+++ b/arch/arm64/boot/dts/nvidia/tegra264.dtsi
@@ -7,6 +7,8 @@
#include <dt-bindings/power/nvidia,tegra264-bpmp.h>
#include <dt-bindings/reset/nvidia,tegra264.h>
+#include "thermal/nvidia,tegra264-bpmp.h"
+
/ {
compatible = "nvidia,tegra264";
interrupt-parent = <&gic>;
@@ -4625,6 +4627,33 @@ sound {
status = "disabled";
};
+ thermal-zones {
+ cpu-thermal {
+ thermal-sensors = <&{/bpmp/thermal} TEGRA264_THERMAL_ZONE_CPU_MAX>;
+ status = "disabled";
+ };
+
+ gpu-thermal {
+ thermal-sensors = <&{/bpmp/thermal} TEGRA264_THERMAL_ZONE_GPU_MAX>;
+ status = "disabled";
+ };
+
+ soc012-thermal {
+ thermal-sensors = <&{/bpmp/thermal} TEGRA264_THERMAL_ZONE_SOC_012_MAX>;
+ status = "disabled";
+ };
+
+ soc345-thermal {
+ thermal-sensors = <&{/bpmp/thermal} TEGRA264_THERMAL_ZONE_SOC_345_MAX>;
+ status = "disabled";
+ };
+
+ tj-thermal {
+ thermal-sensors = <&{/bpmp/thermal} TEGRA264_THERMAL_ZONE_TJ_MAX>;
+ status = "disabled";
+ };
+ };
+
timer {
compatible = "arm,armv8-timer";
interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>,
diff --git a/arch/arm64/boot/dts/nvidia/thermal/nvidia,tegra264-bpmp.h b/arch/arm64/boot/dts/nvidia/thermal/nvidia,tegra264-bpmp.h
new file mode 100644
index 000000000000..29695881f4cc
--- /dev/null
+++ b/arch/arm64/boot/dts/nvidia/thermal/nvidia,tegra264-bpmp.h
@@ -0,0 +1,20 @@
+/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
+/* SPDX-FileCopyrightText: Copyright (c) 2023-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. */
+
+#ifndef DT_BINDINGS_THERMAL_NVIDIA_TEGRA264_BPMP_H
+#define DT_BINDINGS_THERMAL_NVIDIA_TEGRA264_BPMP_H
+
+#define TEGRA264_THERMAL_ZONE_TJ_MAX 0
+#define TEGRA264_THERMAL_ZONE_TJ_MIN 1
+#define TEGRA264_THERMAL_ZONE_GPU_AVG 2
+#define TEGRA264_THERMAL_ZONE_CPU_AVG 3
+#define TEGRA264_THERMAL_ZONE_SOC_012_AVG 4
+#define TEGRA264_THERMAL_ZONE_SOC_45_AVG 5
+#define TEGRA264_THERMAL_ZONE_SOC_3_AVG 6
+#define TEGRA264_THERMAL_ZONE_GPU_MAX 7
+#define TEGRA264_THERMAL_ZONE_CPU_MAX 8
+#define TEGRA264_THERMAL_ZONE_SOC_012_MAX 9
+#define TEGRA264_THERMAL_ZONE_SOC_345_MAX 10
+#define TEGRA264_THERMAL_ZONE_TJ_AVG 11
+
+#endif /* DT_BINDINGS_THERMAL_NVIDIA_TEGRA264_BPMP_H */
--
2.55.0