arm64: tegra: Add BPMP thermal sensor to Tegra186
authorMikko Perttunen <mperttunen@nvidia.com>
Mon, 24 Jul 2017 16:29:14 +0000 (19:29 +0300)
committerThierry Reding <treding@nvidia.com>
Thu, 19 Oct 2017 14:35:50 +0000 (16:35 +0200)
This adds the thermal sensor device provided by the BPMP, and the
relevant thermal sensors to the Tegra186 device tree.

Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
arch/arm64/boot/dts/nvidia/tegra186.dtsi

index 10c1107..0693dad 100644 (file)
@@ -4,6 +4,7 @@
 #include <dt-bindings/mailbox/tegra186-hsp.h>
 #include <dt-bindings/power/tegra186-powergate.h>
 #include <dt-bindings/reset/tegra186-reset.h>
+#include <dt-bindings/thermal/tegra186-bpmp-thermal.h>
 
 / {
        compatible = "nvidia,tegra186";
                        #size-cells = <0>;
                        status = "disabled";
                };
+
+               bpmp_thermal: thermal {
+                       compatible = "nvidia,tegra186-bpmp-thermal";
+                       #thermal-sensor-cells = <1>;
+               };
+       };
+
+       thermal-zones {
+               a57 {
+                       polling-delay = <0>;
+                       polling-delay-passive = <1000>;
+
+                       thermal-sensors =
+                               <&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_CPU>;
+
+                       trips {
+                               critical {
+                                       temperature = <101000>;
+                                       hysteresis = <0>;
+                                       type = "critical";
+                               };
+                       };
+
+                       cooling-maps {
+                       };
+               };
+
+               denver {
+                       polling-delay = <0>;
+                       polling-delay-passive = <1000>;
+
+                       thermal-sensors =
+                               <&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_AUX>;
+
+                       trips {
+                               critical {
+                                       temperature = <101000>;
+                                       hysteresis = <0>;
+                                       type = "critical";
+                               };
+                       };
+
+                       cooling-maps {
+                       };
+               };
+
+               gpu {
+                       polling-delay = <0>;
+                       polling-delay-passive = <1000>;
+
+                       thermal-sensors =
+                               <&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_GPU>;
+
+                       trips {
+                               critical {
+                                       temperature = <101000>;
+                                       hysteresis = <0>;
+                                       type = "critical";
+                               };
+                       };
+
+                       cooling-maps {
+                       };
+               };
+
+               pll {
+                       polling-delay = <0>;
+                       polling-delay-passive = <1000>;
+
+                       thermal-sensors =
+                               <&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_PLLX>;
+
+                       trips {
+                               critical {
+                                       temperature = <101000>;
+                                       hysteresis = <0>;
+                                       type = "critical";
+                               };
+                       };
+
+                       cooling-maps {
+                       };
+               };
+
+               always_on {
+                       polling-delay = <0>;
+                       polling-delay-passive = <1000>;
+
+                       thermal-sensors =
+                               <&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_AO>;
+
+                       trips {
+                               critical {
+                                       temperature = <101000>;
+                                       hysteresis = <0>;
+                                       type = "critical";
+                               };
+                       };
+
+                       cooling-maps {
+                       };
+               };
        };
 
        timer {