On Mon, Apr 12, 2021 at 11:08:36PM +0800, DENG Qingfang wrote: > On Mon, Apr 12, 2021 at 07:04:49AM +0000, René van Dorst wrote: > > Hi Qingfang, > > > +static void mtk_phy_config_init(struct phy_device *phydev) > > > +{ > > > + /* Disable EEE */ > > > + phy_write_mmd(phydev, MDIO_MMD_AN, MDIO_AN_EEE_ADV, 0); > > > > For my EEE patch I changed this line to: > > > > genphy_config_eee_advert(phydev); > > > > So PHY EEE part is setup properly at boot, instead enable it manual via > > ethtool. > > This function also takes the DTS parameters "eee-broken-xxxx" in to account > > while > > setting-up the PHY. > > Thanks, I'm now testing with it. Hi Rene, Within 12 hours, I got some spontaneous link down/ups when EEE is enabled: [16334.236233] mt7530 mdio-bus:1f wan: Link is Down [16334.241340] br-lan: port 3(wan) entered disabled state [16337.355988] mt7530 mdio-bus:1f wan: Link is Up - 1Gbps/Full - flow control rx/tx [16337.363468] br-lan: port 3(wan) entered blocking state [16337.368638] br-lan: port 3(wan) entered forwarding state The cable is a 30m Cat.6 and never has such issue when EEE is disabled. Perhaps WAKEUP_TIME_1000/100 or some PHY registers need to be fine-tuned, but for now I think it should be disabled by default. > > > > > > + > > > + /* Enable HW auto downshift */ > > > + phy_modify_paged(phydev, MTK_PHY_PAGE_EXTENDED, 0x14, 0, BIT(4));