From: Daniel Gimpelevich Date: Wed, 1 Aug 2018 14:51:47 +0000 (-0700) Subject: ramips: fix gigabit switch PHY access on MDIO X-Git-Tag: v19.07.0-rc1~2901 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=379fe506729a20c5fdb072840cb662b032e90c36;p=oweals%2Fopenwrt.git ramips: fix gigabit switch PHY access on MDIO When PHY's are defined on the MDIO bus in the DTS, gigabit support was being masked out for no apparent reason, pegging all such ports to 10/100. If gigabit support must be disabled for some reason, there should be a "max-speed" property in the DTS. Reported-by: James McKenzie Signed-off-by: Daniel Gimpelevich --- diff --git a/target/linux/ramips/files-4.14/drivers/net/ethernet/mediatek/mdio.c b/target/linux/ramips/files-4.14/drivers/net/ethernet/mediatek/mdio.c index bdfdf7a432..a1c115687e 100644 --- a/target/linux/ramips/files-4.14/drivers/net/ethernet/mediatek/mdio.c +++ b/target/linux/ramips/files-4.14/drivers/net/ethernet/mediatek/mdio.c @@ -110,7 +110,8 @@ static void phy_init(struct fe_priv *priv, struct phy_device *phy) phy->autoneg = AUTONEG_ENABLE; phy->speed = 0; phy->duplex = 0; - phy->supported &= PHY_BASIC_FEATURES; + phy->supported &= IS_ENABLED(CONFIG_NET_MEDIATEK_MDIO_MT7620) ? + PHY_GBIT_FEATURES : PHY_BASIC_FEATURES; phy->advertising = phy->supported | ADVERTISED_Autoneg; phy_start_aneg(phy);