Re: [PATCH v2 2/4] net: ethoc: don't advertise gigabit speed on attached PHY
From: Florian Fainelli <f.fainelli@gmail.com>
Date: 2014-01-29 06:46:52
Also in:
lkml
From: Florian Fainelli <f.fainelli@gmail.com>
Date: 2014-01-29 06:46:52
Also in:
lkml
Hi Max, Le 28/01/2014 22:00, Max Filippov a écrit :
OpenCores 10/100 Mbps MAC does not support speeds above 100 Mbps, but does not disable advertisement when PHY supports them. This results in non-functioning network when the MAC is connected to a gigabit PHY connected to a gigabit switch. The fix is to disable gigabit speed advertisement on attached PHY unconditionally. Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> --- Changes v1->v2: - disable both gigabit advertisement and support. drivers/net/ethernet/ethoc.c | 8 ++++++++ 1 file changed, 8 insertions(+)diff --git a/drivers/net/ethernet/ethoc.c b/drivers/net/ethernet/ethoc.c index 4de8cfd..5643b2d 100644 --- a/drivers/net/ethernet/ethoc.c +++ b/drivers/net/ethernet/ethoc.c@@ -688,6 +688,14 @@ static int ethoc_mdio_probe(struct net_device *dev) } priv->phy = phy; + phy_update_advert(phy, + ADVERTISED_1000baseT_Full | + ADVERTISED_1000baseT_Half, 0); + phy_start_aneg(phy);
This does not look necessary, you should not have to call phy_start_aneg() because the PHY state machine is not yet started, at best this calls does nothing.
+ phy_update_supported(phy, + SUPPORTED_1000baseT_Full | + SUPPORTED_1000baseT_Half, 0); + return 0; }