[PATCH v2 6/7] arm64: dts: imx943-evk: Add fan node and enable active cooling on A55
From: Peng Fan (OSS)
Date: Fri Mar 20 2026 - 08:28:38 EST
From: Florin Leotescu <florin.leotescu@xxxxxxx>
Add pwm fan node and use it for A55 cooling.
Signed-off-by: Florin Leotescu <florin.leotescu@xxxxxxx>
Signed-off-by: Peng Fan <peng.fan@xxxxxxx>
---
arch/arm64/boot/dts/freescale/imx943-evk.dts | 56 ++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/imx943-evk.dts b/arch/arm64/boot/dts/freescale/imx943-evk.dts
index ec728efbe15cf0b97deade68445b23528325b082..7125c7fc6e32999fd279b9d01af0b210d1ab843d 100644
--- a/arch/arm64/boot/dts/freescale/imx943-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx943-evk.dts
@@ -7,6 +7,7 @@
#include "imx943.dtsi"
#include <dt-bindings/usb/pd.h>
+#include <dt-bindings/pwm/pwm.h>
#define BRD_SM_CTRL_BT_WAKE 0x8000 /*!< PCAL6416A-3 */
#define BRD_SM_CTRL_SD3_WAKE 0x8001 /*!< PCAL6416A-4 */
@@ -314,6 +315,20 @@ i2c@4 {
#address-cells = <1>;
#size-cells = <0>;
+ fan_controller: pwm@2f {
+ compatible = "microchip,emc2301", "microchip,emc2305";
+ reg = <0x2f>;
+ #pwm-cells = <3>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ fan0: fan@0 {
+ reg = <0x0>;
+ pwms = <&fan_controller 26000 1 PWM_POLARITY_INVERTED>;
+ #cooling-cells = <2>;
+ };
+ };
+
wm8962: codec@1a {
compatible = "wlf,wm8962";
reg = <0x1a>;
@@ -892,6 +907,47 @@ BRD_SM_CTRL_PCIE2_WAKE 1
BRD_SM_CTRL_BUTTON 1>;
};
+&thermal_zones {
+ a55-thermal {
+ trips {
+ atrip2: trip2 {
+ temperature = <55000>;
+ hysteresis = <2000>;
+ type = "active";
+ };
+
+ atrip3: trip3 {
+ temperature = <65000>;
+ hysteresis = <2000>;
+ type = "active";
+ };
+
+ atrip4: trip4 {
+ temperature = <75000>;
+ hysteresis = <2000>;
+ type = "active";
+ };
+ };
+
+ cooling-maps {
+ map1 {
+ trip = <&atrip2>;
+ cooling-device = <&fan0 4 6>;
+ };
+
+ map2 {
+ trip = <&atrip3>;
+ cooling-device = <&fan0 6 8>;
+ };
+
+ map3 {
+ trip = <&atrip4>;
+ cooling-device = <&fan0 8 10>;
+ };
+ };
+ };
+};
+
&usb2 {
dr_mode = "otg";
disable-over-current;
--
2.37.1