]> git.ipfire.org Git - thirdparty/u-boot.git/commitdiff
arm64: zynqmp: Sync DTs with Linux v6.13-rc1
authorMichal Simek <michal.simek@amd.com>
Thu, 12 Dec 2024 09:41:44 +0000 (10:41 +0100)
committerMichal Simek <michal.simek@amd.com>
Tue, 14 Jan 2025 07:29:45 +0000 (08:29 +0100)
Sync zynqmp* DTS files with v6.13-rc1 Linux kernel including three patches
from Sean:
arm64: zynqmp: Enable AMS for all boards
arm64: zynqmp: Expose AMS to userspace as HWMON
arm64: zynqmp: Add thermal zones

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/06e466d64c9d8e718e2f06a76cc65d6da2a37a7b.1733996500.git.michal.simek@amd.com
arch/arm/dts/zynqmp-sm-k26-revA.dts
arch/arm/dts/zynqmp-zcu100-revC.dts
arch/arm/dts/zynqmp-zcu102-revA.dts
arch/arm/dts/zynqmp-zcu104-revA.dts
arch/arm/dts/zynqmp-zcu104-revC.dts
arch/arm/dts/zynqmp.dtsi

index 620f5185cc46f70455992ede1129712313717923..b514dc27f710a0ee143d4e4123f38f4ab40d8524 100644 (file)
                };
        };
 
-       ams {
-               compatible = "iio-hwmon";
-               io-channels = <&xilinx_ams 0>, <&xilinx_ams 1>, <&xilinx_ams 2>,
-                       <&xilinx_ams 3>, <&xilinx_ams 4>, <&xilinx_ams 5>,
-                       <&xilinx_ams 6>, <&xilinx_ams 7>, <&xilinx_ams 8>,
-                       <&xilinx_ams 9>, <&xilinx_ams 10>, <&xilinx_ams 11>,
-                       <&xilinx_ams 12>, <&xilinx_ams 13>, <&xilinx_ams 14>,
-                       <&xilinx_ams 15>, <&xilinx_ams 16>, <&xilinx_ams 17>,
-                       <&xilinx_ams 18>, <&xilinx_ams 19>, <&xilinx_ams 20>,
-                       <&xilinx_ams 21>, <&xilinx_ams 22>, <&xilinx_ams 23>,
-                       <&xilinx_ams 24>, <&xilinx_ams 25>, <&xilinx_ams 26>,
-                       <&xilinx_ams 27>, <&xilinx_ams 28>, <&xilinx_ams 29>;
-       };
-
        pwm-fan {
                compatible = "pwm-fan";
                status = "okay";
                          "", "", "", ""; /* 170 - 173 */
 };
 
-&xilinx_ams {
-       status = "okay";
-};
-
 &ams_ps {
        status = "okay";
 };
index c9051360931b71e27f1360d23910430209a09b5f..3542844e6977f0b9f32b0029c6e63cde61e101aa 100644 (file)
        status = "okay";
 };
 
-&xilinx_ams {
-       status = "okay";
-};
-
 &ams_ps {
        status = "okay";
 };
index dd63d22f45e781dad29edbbe22d5a8894540124b..955810ae7178009b0db0a42fa0ccb3ad5af4bfcf 100644 (file)
        status = "okay";
 };
 
-&xilinx_ams {
-       status = "okay";
-};
-
 &ams_ps {
        status = "okay";
 };
index 31effbf27a8e23d72b50f3e6fc2ca16fe567a9d3..64d822255ec54d0d818b37bd73e4740b7b7b84af 100644 (file)
        status = "okay";
 };
 
-&xilinx_ams {
-       status = "okay";
-};
-
 &ams_ps {
        status = "okay";
 };
index 999b2431bdf2f4f808c07ac8b5c370fe39586125..3e883d717c2f294cdfa43b0a120bc4c806f38822 100644 (file)
        status = "okay";
 };
 
-&xilinx_ams {
-       status = "okay";
-};
-
 &ams_ps {
        status = "okay";
 };
index 70ca5e6379fc7ec303939104606e502ad4daea26..e8750b08162d9dd3071f0fede6a9dc67dd30d40e 100644 (file)
@@ -18,6 +18,7 @@
 #include <dt-bindings/interrupt-controller/irq.h>
 #include <dt-bindings/power/xlnx-zynqmp-power.h>
 #include <dt-bindings/reset/xlnx-zynqmp-resets.h>
+#include <dt-bindings/thermal/thermal.h>
 
 / {
        compatible = "xlnx,zynqmp";
@@ -36,6 +37,7 @@
                #size-cells = <0>;
 
                cpu0: cpu@0 {
+                       #cooling-cells = <2>;
                        compatible = "arm,cortex-a53";
                        device_type = "cpu";
                        enable-method = "psci";
@@ -46,6 +48,7 @@
                };
 
                cpu1: cpu@1 {
+                       #cooling-cells = <2>;
                        compatible = "arm,cortex-a53";
                        device_type = "cpu";
                        enable-method = "psci";
@@ -56,6 +59,7 @@
                };
 
                cpu2: cpu@2 {
+                       #cooling-cells = <2>;
                        compatible = "arm,cortex-a53";
                        device_type = "cpu";
                        enable-method = "psci";
@@ -66,6 +70,7 @@
                };
 
                cpu3: cpu@3 {
+                       #cooling-cells = <2>;
                        compatible = "arm,cortex-a53";
                        device_type = "cpu";
                        enable-method = "psci";
                };
        };
 
+       ams {
+               compatible = "iio-hwmon";
+               io-channels = <&xilinx_ams 0>, <&xilinx_ams 1>, <&xilinx_ams 2>,
+                       <&xilinx_ams 3>, <&xilinx_ams 4>, <&xilinx_ams 5>,
+                       <&xilinx_ams 6>, <&xilinx_ams 7>, <&xilinx_ams 8>,
+                       <&xilinx_ams 9>, <&xilinx_ams 10>, <&xilinx_ams 11>,
+                       <&xilinx_ams 12>, <&xilinx_ams 13>, <&xilinx_ams 14>,
+                       <&xilinx_ams 15>, <&xilinx_ams 16>, <&xilinx_ams 17>,
+                       <&xilinx_ams 18>, <&xilinx_ams 19>, <&xilinx_ams 20>,
+                       <&xilinx_ams 21>, <&xilinx_ams 22>, <&xilinx_ams 23>,
+                       <&xilinx_ams 24>, <&xilinx_ams 25>, <&xilinx_ams 26>,
+                       <&xilinx_ams 27>, <&xilinx_ams 28>, <&xilinx_ams 29>;
+       };
+
+
+       tsens_apu: thermal-sensor-apu {
+               compatible = "generic-adc-thermal";
+               #thermal-sensor-cells = <0>;
+               io-channels = <&xilinx_ams 7>;
+               io-channel-names = "sensor-channel";
+       };
+
+       tsens_rpu: thermal-sensor-rpu {
+               compatible = "generic-adc-thermal";
+               #thermal-sensor-cells = <0>;
+               io-channels = <&xilinx_ams 8>;
+               io-channel-names = "sensor-channel";
+       };
+
+       tsens_pl: thermal-sensor-pl {
+               compatible = "generic-adc-thermal";
+               #thermal-sensor-cells = <0>;
+               io-channels = <&xilinx_ams 20>;
+               io-channel-names = "sensor-channel";
+       };
+
+       thermal-zones {
+               apu-thermal {
+                       polling-delay-passive = <1000>;
+                       polling-delay = <5000>;
+                       thermal-sensors = <&tsens_apu>;
+
+                       trips {
+                               apu_passive: passive {
+                                       temperature = <93000>;
+                                       hysteresis = <3500>;
+                                       type = "passive";
+                               };
+
+                               apu_critical: critical {
+                                       temperature = <96500>;
+                                       hysteresis = <3500>;
+                                       type = "critical";
+                               };
+                       };
+
+                       cooling-maps {
+                               map {
+                                       trip = <&apu_passive>;
+                                       cooling-device =
+                                               <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+                                               <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+                                               <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+                                               <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+                               };
+                       };
+               };
+
+               rpu-thermal {
+                       polling-delay = <10000>;
+                       thermal-sensors = <&tsens_rpu>;
+
+                       trips {
+                               critical {
+                                       temperature = <96500>;
+                                       hysteresis = <3500>;
+                                       type = "critical";
+                               };
+                       };
+               };
+
+               pl-thermal {
+                       polling-delay = <10000>;
+                       thermal-sensors = <&tsens_pl>;
+
+                       trips {
+                               critical {
+                                       temperature = <96500>;
+                                       hysteresis = <3500>;
+                                       type = "critical";
+                               };
+                       };
+               };
+       };
+
        amba: axi {
                compatible = "simple-bus";
                bootph-all;
 
                xilinx_ams: ams@ffa50000 {
                        compatible = "xlnx,zynqmp-ams";
-                       status = "disabled";
                        interrupt-parent = <&gic>;
                        interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
                        reg = <0x0 0xffa50000 0x0 0x800>;