diff options
-rw-r--r-- | drivers/net/designware.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/net/designware.c b/drivers/net/designware.c index ec518252dd..44cd15b432 100644 --- a/drivers/net/designware.c +++ b/drivers/net/designware.c @@ -241,6 +241,16 @@ static void dwc_update_linkspeed(struct eth_device *edev) conf &= ~MII_PORTSELECT; else conf |= MII_PORTSELECT; + + if ((edev->phydev->interface != PHY_INTERFACE_MODE_MII) && + (edev->phydev->interface != PHY_INTERFACE_MODE_GMII)) { + + if (edev->phydev->speed == 100) + conf |= FES_100; + else + conf &= ~FES_100; + } + writel(conf, &mac_p->conf); } |