[openwrt/openwrt] realtek: HPE 1920-48G-PoE: allow fan speed control

LEDE Commits lede-commits at lists.infradead.org
Sun Feb 9 12:37:50 PST 2025


svanheule pushed a commit to openwrt/openwrt.git, branch main:
https://git.openwrt.org/cbd1acbad3448280a180640e2a1a37a7144e1fb3

commit cbd1acbad3448280a180640e2a1a37a7144e1fb3
Author: Evan Jobling <evan at jobling.au>
AuthorDate: Thu Jan 23 00:13:35 2025 +0000

    realtek: HPE 1920-48G-PoE: allow fan speed control
    
    The JG928A has an RTL8231 on the aux mdio bus. Add it to dts to expose
    the GPIO pins used to control and monitor the fan speed. To enable speed
    control, add the appropriate kernel driver module to DEVICE_PACKAGES.
    
    Of note, this does not control all fans for the unit. The power supply
    fans are not controlled.
    
    Signed-off-by: Evan Jobling <evan at jobling.au>
    Link: https://github.com/openwrt/openwrt/pull/17699
    Signed-off-by: Sander Vanheule <sander at svanheule.net>
---
 .../linux/realtek/dts/rtl8393_hpe_1920-48g-poe.dts | 29 ++++++++++++++++++++++
 target/linux/realtek/image/rtl839x.mk              |  2 +-
 2 files changed, 30 insertions(+), 1 deletion(-)

diff --git a/target/linux/realtek/dts/rtl8393_hpe_1920-48g-poe.dts b/target/linux/realtek/dts/rtl8393_hpe_1920-48g-poe.dts
index e242775434..9765f80d88 100644
--- a/target/linux/realtek/dts/rtl8393_hpe_1920-48g-poe.dts
+++ b/target/linux/realtek/dts/rtl8393_hpe_1920-48g-poe.dts
@@ -5,8 +5,37 @@
 / {
 	compatible = "hpe,1920-48g-poe", "realtek,rtl8393-soc";
 	model = "HPE 1920-48G-PoE (JG928A)";
+
+	gpio_fan_array {
+		compatible = "gpio-fan";
+
+		gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>;
+		gpio-fan,speed-map =    <5000 0>,
+					<8200 1>;
+
+		alarm-gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
+		#cooling-cells = <2>;
+	};
 };
 
 &uart1 {
 	status = "okay";
 };
+
+&mdio_aux {
+	status = "okay";
+
+	gpio1: expander at 0 {
+		compatible = "realtek,rtl8231";
+		reg = <0>;
+
+		gpio-controller;
+		#gpio-cells = <2>;
+		gpio-ranges = <&gpio1 0 0 37>;
+
+		led-controller {
+			compatible = "realtek,rtl8231-leds";
+			status = "disabled";
+		};
+	};
+};
diff --git a/target/linux/realtek/image/rtl839x.mk b/target/linux/realtek/image/rtl839x.mk
index 14d23ff371..5f9b6d56c6 100644
--- a/target/linux/realtek/image/rtl839x.mk
+++ b/target/linux/realtek/image/rtl839x.mk
@@ -21,7 +21,7 @@ define Device/hpe_1920-48g-poe
   $(Device/hpe_1920)
   SOC := rtl8393
   DEVICE_MODEL := 1920-48G-PoE (JG928A)
-  DEVICE_PACKAGES += realtek-poe
+  DEVICE_PACKAGES += realtek-poe kmod-hwmon-gpiofan
   H3C_DEVICE_ID := 0x0001002b
 endef
 TARGET_DEVICES += hpe_1920-48g-poe




More information about the lede-commits mailing list