On Fri, Jul 28, 2017 at 2:59 PM, Sebastien Bourdelin <sebastien.bourde...@savoirfairelinux.com> wrote: > The environment variable "disable_giga" can now be used to disable > 1000baseTx on the Micrel's KSZ9031. > > Signed-off-by: Sebastien Bourdelin <sebastien.bourde...@savoirfairelinux.com>
Other than one nit below... Acked-by: Joe Hershberger <joe.hershber...@ni.com> > --- > drivers/net/phy/micrel.c | 27 +++++++++++++++++++++++++++ > 1 file changed, 27 insertions(+) > > diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c > index 0e4a4ebcc6..eeeba3c232 100644 > --- a/drivers/net/phy/micrel.c > +++ b/drivers/net/phy/micrel.c > @@ -491,12 +491,39 @@ static int ksz9031_phy_extwrite(struct phy_device > *phydev, int addr, > static int ksz9031_config(struct phy_device *phydev) > { > int ret; > + unsigned features; > + unsigned bmcr = 0; Seems better to define these in the block where they are used and inconsistent initialization is odd. Neither need init since they are assigned as first use. > + > ret = ksz9031_of_config(phydev); > if (ret) > return ret; > ret = ksz9031_center_flp_timing(phydev); > if (ret) > return ret; > + > + /* add an option to disable the gigabit feature of this PHY */ > + if (getenv("disable_giga")) { > + /* disable speed 1000 in features supported by the PHY */ > + features = phydev->drv->features; > + features &= ~(SUPPORTED_1000baseT_Half | > + SUPPORTED_1000baseT_Full); > + phydev->advertising = phydev->supported = features; > + > + /* disable speed 1000 in Basic Control Register */ > + bmcr = phy_read(phydev, MDIO_DEVAD_NONE, MII_BMCR); > + bmcr &= ~(1 << 6); > + phy_write(phydev, MDIO_DEVAD_NONE, MII_BMCR, bmcr); > + > + /* disable speed 1000 in 1000Base-T Control Register */ > + phy_write(phydev, MDIO_DEVAD_NONE, MII_CTRL1000, 0); > + > + /* start autoneg */ > + genphy_config_aneg(phydev); > + genphy_restart_aneg(phydev); > + > + return 0; > + } > + > return genphy_config(phydev); > } > > -- > 2.13.3 > > _______________________________________________ > U-Boot mailing list > U-Boot@lists.denx.de > https://lists.denx.de/listinfo/u-boot _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot