Messages in this thread | | | Date | Mon, 23 Mar 2020 00:18:14 +0800 | From | Dejin Zheng <> | Subject | Re: [PATCH net-next v4 6/9] net: phy: marvell10g: use phy_read_mmd_poll_timeout() to simplify the code |
| |
On Sun, Mar 22, 2020 at 04:36:59PM +0100, Andrew Lunn wrote: > > --- a/drivers/net/phy/marvell10g.c > > +++ b/drivers/net/phy/marvell10g.c > > @@ -241,22 +241,17 @@ static int mv3310_power_up(struct phy_device *phydev) > > > > static int mv3310_reset(struct phy_device *phydev, u32 unit) > > { > > - int retries, val, err; > > + int val, err; > > > > err = phy_modify_mmd(phydev, MDIO_MMD_PCS, unit + MDIO_CTRL1, > > MDIO_CTRL1_RESET, MDIO_CTRL1_RESET); > > if (err < 0) > > return err; > > > > - retries = 20; > > - do { > > - msleep(5); > > - val = phy_read_mmd(phydev, MDIO_MMD_PCS, unit + MDIO_CTRL1); > > - if (val < 0) > > - return val; > > - } while (val & MDIO_CTRL1_RESET && --retries); > > This is another example of the sleep happening first. To keep the code > more similar, you probably should add an msleep(5) before calling > phy_read_mmd_poll_timeout(). > > Andrew Andrew, you're right, do it right away. Thank you for helping me so patiently!
| |