Linux folks changed the device tree to use 10gbase-r instead of
10gbase-kr since "it is more correct". Then the UEFI folks synched
their device trees to Linux and the 10G ports broke. So accept both
in the code.
ok?
Index: dev/fdt/if_mvpp.c
===================================================================
RCS file: /cvs/src/sys/dev/fdt/if_mvpp.c,v
retrieving revision 1.44
diff -u -p -r1.44 if_mvpp.c
--- dev/fdt/if_mvpp.c 12 Dec 2020 11:48:52 -0000 1.44
+++ dev/fdt/if_mvpp.c 2 Jun 2021 20:34:30 -0000
@@ -1354,7 +1354,9 @@ mvpp2_port_attach(struct device *parent,
phy_mode = malloc(len, M_TEMP, M_WAITOK);
OF_getprop(sc->sc_node, "phy-mode", phy_mode, len);
- if (!strncmp(phy_mode, "10gbase-kr", strlen("10gbase-kr")))
+ if (!strncmp(phy_mode, "10gbase-r", strlen("10gbase-r")))
+ sc->sc_phy_mode = PHY_MODE_10GBASER;
+ else if (!strncmp(phy_mode, "10gbase-kr", strlen("10gbase-kr")))
sc->sc_phy_mode = PHY_MODE_10GBASER;
else if (!strncmp(phy_mode, "2500base-x", strlen("2500base-x")))
sc->sc_phy_mode = PHY_MODE_2500BASEX;