On 12/13/2018 09:38 AM, Andrew Lunn wrote: >> +static int tja11xx_config_aneg(struct phy_device *phydev) >> +{ >> + phydev->autoneg = 0; >> + phydev->speed = SPEED_100; >> + phydev->duplex = DUPLEX_FULL; >> + phydev->pause = 0; >> + phydev->asym_pause = 0; >> + >> + return 0; >> +} > > Hi Marek
Hi, > That is, err, interesting. Are you saying the PHY cannot do auto-neg? There isn't much to auto-negotiate and some of the bits in the standard registers behave weirdly. > Does it happen to be a 100T1 device for automotive? Yes, that's what the commit message says, why ? >> + >> +static int tja11xx_config_init(struct phy_device *phydev) >> +{ >> + u32 features = SUPPORTED_TP | SUPPORTED_MII | SUPPORTED_100baseT_Full; >> + int ret; >> + >> + ret = tja11xx_enable_reg_write(phydev); >> + if (ret) >> + return ret; >> + >> + phydev->supported &= features; >> + phydev->advertising &= features; > > What tree is this code based on? I doubt it is net-next. Please rebase > and fix up all the things that then break. 4.19ish . Do you have some other review comments on this ? -- Best regards, Marek Vasut