net: dsa: rtl8365mb: add GMII as user port mode
authorLuiz Angelo Daros de Luca <luizluca@gmail.com>
Wed, 15 Dec 2021 03:41:28 +0000 (00:41 -0300)
committerDavid S. Miller <davem@davemloft.net>
Thu, 16 Dec 2021 10:51:11 +0000 (10:51 +0000)
Recent net-next fails to initialize ports with:

 realtek-smi switch: phy mode gmii is unsupported on port 0
 realtek-smi switch lan5 (uninitialized): validation of gmii with
 support 0000000,00000000,000062ef and advertisement
 0000000,00000000,000062ef failed: -22
 realtek-smi switch lan5 (uninitialized): failed to connect to PHY:
 -EINVAL
 realtek-smi switch lan5 (uninitialized): error -22 setting up PHY
 for tree 1, switch 0, port 0

Current net branch(3dd7d40b43663f58d11ee7a3d3798813b26a48f1) is not
affected.

I also noticed the same issue before with older versions but using
a MDIO interface driver, not realtek-smi.

Tested-by: Arınç ÜNAL <arinc.unal@arinc9.com>
Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/rtl8365mb.c

index 2ac68c867636d2ffe5d4e668727172fc4a525b33..3b729544798b1161e80b598dcd11fe5730a9f48a 100644 (file)
@@ -900,7 +900,8 @@ static bool rtl8365mb_phy_mode_supported(struct dsa_switch *ds, int port,
 {
        if (dsa_is_user_port(ds, port) &&
            (interface == PHY_INTERFACE_MODE_NA ||
-            interface == PHY_INTERFACE_MODE_INTERNAL))
+            interface == PHY_INTERFACE_MODE_INTERNAL ||
+            interface == PHY_INTERFACE_MODE_GMII))
                /* Internal PHY */
                return true;
        else if (dsa_is_cpu_port(ds, port) &&