[openwrt/openwrt] realtek: switch HP-1920-48G to new shared gpio driver

LEDE Commits lede-commits at lists.infradead.org
Sun Jun 22 02:13:06 PDT 2025


robimarko pushed a commit to openwrt/openwrt.git, branch main:
https://git.openwrt.org/502b2f4ee5a4a823f2350aa45e70f98b8a6c3fd3

commit 502b2f4ee5a4a823f2350aa45e70f98b8a6c3fd3
Author: Joe Holden <jwh at zorins.us>
AuthorDate: Sun May 25 12:13:30 2025 +0000

    realtek: switch HP-1920-48G to new shared gpio driver
    
    This allows the SFPs to work without manually switching port type.
    
    Signed-off-by: Joe Holden <jwh at zorins.us>
    Link: https://github.com/openwrt/openwrt/pull/18914
    Signed-off-by: Robert Marko <robimarko at gmail.com>
---
 target/linux/realtek/dts/rtl8393_hpe_1920-48g.dts | 132 +++++++++++-----------
 1 file changed, 64 insertions(+), 68 deletions(-)

diff --git a/target/linux/realtek/dts/rtl8393_hpe_1920-48g.dts b/target/linux/realtek/dts/rtl8393_hpe_1920-48g.dts
index 651ae69864..2f6f75e148 100644
--- a/target/linux/realtek/dts/rtl8393_hpe_1920-48g.dts
+++ b/target/linux/realtek/dts/rtl8393_hpe_1920-48g.dts
@@ -6,81 +6,77 @@
 	compatible = "hpe,1920-48g", "realtek,rtl8393-soc";
 	model = "HPE 1920-48G (JG927A)";
 
-	i2c0: i2c-gpio-0 {
-		compatible = "i2c-gpio";
-		sda-gpios = <&gpio0 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
-		scl-gpios = <&gpio0 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
-		i2c-gpio,delay-us = <2>;
-		#address-cells = <1>;
-		#size-cells = <0>;
-	};
+        i2c-gpio-shared0 {
+                compatible = "i2c-gpio-shared";
+                scl-gpios = <&gpio0 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+                #address-cells = <1>;
+                #size-cells = <0>;
 
-	sfp0: sfp-p49 {
-		compatible = "sff,sfp";
-		i2c-bus = <&i2c0>;
-		los-gpio = <&gpio0 20 GPIO_ACTIVE_HIGH>;
-		mod-def0-gpio = <&gpio0 19 GPIO_ACTIVE_LOW>;
-		// tx-fault unconnected (TODO?)
-		// tx-disable connected to RTL8214FC (TODO?)
-	};
+                i2c0: i2c at 0 {
+                        sda-gpios = <&gpio0 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+                        i2c-gpio,delay-us = <2>;
+                };
 
-	i2c1: i2c-gpio-1 {
-		compatible = "i2c-gpio";
-		sda-gpios = <&gpio0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
-		scl-gpios = <&gpio0 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
-		i2c-gpio,delay-us = <2>;
-		#address-cells = <1>;
-		#size-cells = <0>;
-	};
+                i2c2: i2c at 2 {
+                        sda-gpios = <&gpio0 21 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+                        i2c-gpio,delay-us = <2>;
 
-	sfp1: sfp-p50 {
-		compatible = "sff,sfp";
-		i2c-bus = <&i2c1>;
-		los-gpio = <&gpio0 13 GPIO_ACTIVE_HIGH>;
-		mod-def0-gpio = <&gpio0 12 GPIO_ACTIVE_LOW>;
-		// tx-fault unconnected (TODO?)
-		// tx-disable connected to RTL8214FC (TODO?)
-	};
+                };
+        };
 
-	// not enabled due to shared I2C clock
-	i2c2: i2c-gpio-2 {
-		status = "disabled";
-		compatible = "i2c-gpio";
-		sda-gpios = <&gpio0 21 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
-		scl-gpios = <&gpio0 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
-		i2c-gpio,delay-us = <2>;
-		#address-cells = <1>;
-		#size-cells = <0>;
-	};
+        i2c-gpio-shared1 {
+                compatible = "i2c-gpio-shared";
+                scl-gpios = <&gpio0 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+                #address-cells = <1>;
+                #size-cells = <0>;
 
-	sfp2: sfp-p51 {
-		compatible = "sff,sfp";
-		i2c-bus = <&i2c2>;
-		los-gpio = <&gpio0 23 GPIO_ACTIVE_HIGH>;
-		mod-def0-gpio = <&gpio0 22 GPIO_ACTIVE_LOW>;
-		// tx-fault unconnected (TODO?)
-		// tx-disable connected to RTL8214FC (TODO?)
-	};
+                i2c1: i2c at 1 {
+                        sda-gpios = <&gpio0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+                        i2c-gpio,delay-us = <2>;
+                };
 
-	// not enabled due to shared I2C clock
-	i2c3: i2c-gpio-3 {
-		status = "disabled";
-		compatible = "i2c-gpio";
-		sda-gpios = <&gpio0 14 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
-		scl-gpios = <&gpio0 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
-		i2c-gpio,delay-us = <2>;
-		#address-cells = <1>;
-		#size-cells = <0>;
-	};
+                i2c3: i2c at 3 {
+                        sda-gpios = <&gpio0 14 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+                        i2c-gpio,delay-us = <2>;
 
-	sfp3: sfp-p52 {
-		compatible = "sff,sfp";
-		i2c-bus = <&i2c3>;
-		los-gpio = <&gpio0 16 GPIO_ACTIVE_HIGH>;
-		mod-def0-gpio = <&gpio0 15 GPIO_ACTIVE_LOW>;
-		// tx-fault unconnected (TODO?)
-		// tx-disable connected to RTL8214FC (TODO?)
-	};
+                };
+        };
+
+        sfp0: sfp-p49 {
+                compatible = "sff,sfp";
+                i2c-bus = <&i2c0>;
+                los-gpio = <&gpio0 20 GPIO_ACTIVE_HIGH>;
+                mod-def0-gpio = <&gpio0 19 GPIO_ACTIVE_LOW>;
+                // tx-fault unconnected (TODO?)
+                // tx-disable connected to RTL8214FC (TODO?)
+        };
+
+        sfp1: sfp-p50 {
+                compatible = "sff,sfp";
+                i2c-bus = <&i2c1>;
+                los-gpio = <&gpio0 13 GPIO_ACTIVE_HIGH>;
+                mod-def0-gpio = <&gpio0 12 GPIO_ACTIVE_LOW>;
+                // tx-fault unconnected (TODO?)
+                // tx-disable connected to RTL8214FC (TODO?)
+        };
+
+        sfp2: sfp-p51 {
+                compatible = "sff,sfp";
+                i2c-bus = <&i2c2>;
+                los-gpio = <&gpio0 23 GPIO_ACTIVE_HIGH>;
+                mod-def0-gpio = <&gpio0 22 GPIO_ACTIVE_LOW>;
+                // tx-fault unconnected (TODO?)
+                // tx-disable connected to RTL8214FC (TODO?)
+        };
+
+        sfp3: sfp-p52 {
+                compatible = "sff,sfp";
+                i2c-bus = <&i2c3>;
+                los-gpio = <&gpio0 16 GPIO_ACTIVE_HIGH>;
+                mod-def0-gpio = <&gpio0 15 GPIO_ACTIVE_LOW>;
+                // tx-fault unconnected (TODO?)
+                // tx-disable connected to RTL8214FC (TODO?)
+        };
 
 };
 




More information about the lede-commits mailing list