]> xenbits.xensource.com Git - people/royger/freebsd.git/commitdiff
dwc: Support phy mode MII
authorEmmanuel Vadot <manu@FreeBSD.org>
Tue, 22 Feb 2022 08:58:36 +0000 (09:58 +0100)
committerEmmanuel Vadot <manu@FreeBSD.org>
Fri, 4 Mar 2022 10:29:13 +0000 (11:29 +0100)
Some board use dwc phy in MII mode, so do not fail to attach if this is
the case.
Only rockchip code uses the phy mode to program some custom syscon register.

PR: 260848
MFC after: 1 week
Sponsored by: Beckhoff Automation GmbH & Co. KG

(cherry picked from commit da6252a6a099e6253207b69960e6762ce3cca0f8)

sys/dev/dwc/if_dwc.c
sys/dev/dwc/if_dwc.h

index 0704912b48add0e541947726f844ca6ff496e17d..d2e21d22a7767075320ae498b28d91c92af9ca8f 100644 (file)
@@ -1579,11 +1579,14 @@ dwc_attach(device_t dev)
        case MII_CONTYPE_RGMII_ID:
        case MII_CONTYPE_RGMII_RXID:
        case MII_CONTYPE_RGMII_TXID:
-                       sc->phy_mode = PHY_MODE_RGMII;
-                       break;
+               sc->phy_mode = PHY_MODE_RGMII;
+               break;
        case MII_CONTYPE_RMII:
-                       sc->phy_mode = PHY_MODE_RMII;
-                       break;
+               sc->phy_mode = PHY_MODE_RMII;
+               break;
+       case MII_CONTYPE_MII:
+               sc->phy_mode = PHY_MODE_MII;
+               break;
        default:
                device_printf(dev, "Unsupported MII type\n");
                return (ENXIO);
index d475974fcff92a305e21c68ad5406688ebc7f77b..d8c10258388a6f89fca307c724103ceaa0dad6e3 100644 (file)
@@ -40,6 +40,7 @@
 #define        PHY_MODE_UNKNOWN        0x0
 #define        PHY_MODE_RMII           0x1
 #define        PHY_MODE_RGMII          0x2
+#define        PHY_MODE_MII            0x3
 
 #define        MAC_CONFIGURATION       0x0
 #define         CONF_JD                (1 << 22)       /* jabber timer disable */