]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
realtek: phy: Use single initialization for RTL8214FC
authorMarkus Stockhausen <markus.stockhausen@gmx.de>
Mon, 12 Jan 2026 08:44:33 +0000 (09:44 +0100)
committerRobert Marko <robimarko@gmail.com>
Thu, 15 Jan 2026 14:26:44 +0000 (15:26 +0100)
There are currently two code paths to initialize the RTL8214FC. One is
for RTL838x, the other for RTL839x. With the recently added minimum
setup sequence the phy will come up and pass traffic on any device.
Use this als the reference implementation and drop the usage of the
magic firmware based setup.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21508
Signed-off-by: Robert Marko <robimarko@gmail.com>
target/linux/realtek/files-6.12/drivers/net/phy/rtl83xx-phy.c

index 046b9cc0d47b83698e4c35158b00f5d17cca0587..1d6d04b781226d009a5b65fae3354065a52907c4 100644 (file)
@@ -661,6 +661,7 @@ static int rtl8380_configure_rtl8214c(struct phy_device *phydev)
        return 0;
 }
 
+__maybe_unused
 static int rtl8380_configure_rtl8214fc(struct phy_device *phydev)
 {
        u32 *rtl8380_rtl8214fc_perchip;
@@ -958,10 +959,7 @@ static int rtl8214fc_phy_probe(struct phy_device *phydev)
        int ret = 0;
 
        if (rtl821x_package_join(phydev, 4) == RTL821X_JOIN_LAST) {
-               if (soc_info.family == RTL8380_FAMILY_ID)
-                       ret = rtl8380_configure_rtl8214fc(get_base_phy(phydev));
-               else if (soc_info.family == RTL8390_FAMILY_ID)
-                       ret = rtl8214fc_config_init(get_base_phy(phydev));
+               ret = rtl8214fc_config_init(get_base_phy(phydev));
                if (ret)
                        return ret;
        }