realtek: rtl838x: fix lan9 and lan10 on Netgear GS110TUP
authorJacob Potter <jacob@j4cbo.com>
Wed, 31 Dec 2025 19:45:31 +0000 (14:45 -0500)
committerHauke Mehrtens <hauke@hauke-m.de>
Fri, 2 Jan 2026 17:10:05 +0000 (18:10 +0100)
The GS110TUP's lan9 port is connected via a QSGMII PHY to SERDES 2, and
therefore should use the SWITCH_PORT_SDS macro instead of SWITCH_PORT. This
was missed in e956adfe because the GS110TUP is not particularly well
documented and the old code was confusing.

lan10 is an SFP and doesn't have an onboard PHY, so also remove its
associated PHY references and update it to match other devices' SFP ports.

Fixes: https://github.com/openwrt/openwrt/issues/21324
Signed-off-by: Jacob Potter <jacob@j4cbo.com>
Link: https://github.com/openwrt/openwrt/pull/21346
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
target/linux/realtek/dts/rtl8380_netgear_gs110tup-v1.dts

index b46aa57226bbfa33bf661504463afa6fbfdf04cf..f2f7afabbd62868cbcc2e80e0333dc20badffff3 100644 (file)
 
 &mdio_bus0 {
        EXTERNAL_PHY(16)
-       EXTERNAL_PHY(24)
 };
 
 &switch0 {
        ports {
-               SWITCH_PORT(16, 9, qsgmii)
+               SWITCH_PORT_SDS(16, 9, 2, qsgmii)
 
-               /* TODO: fixed link SFP is not right */
-               port24: port@24 {
+               port@24 {
                        reg = <24>;
-                       label = SWITCH_PORT_LABEL(10);
+                       label = "lan10";
                        pcs-handle = <&serdes4>;
-                       phy-handle = <&phy24>;
                        phy-mode = "1000base-x";
-                       fixed-link {
-                               speed = <1000>;
-                               full-duplex;
-                       };
+                       managed = "in-band-status";
+                       /* i2c and gpios not yet identified */
                };
        };
 };