Write PHY address just before enabling HW polling of the PHY.
Signed-off-by: Marek Behún <marek.behun@nic.cz>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Stefan Roese <sr@denx.de>
/* Enable PHY polling in hardware if not in fixed-link mode */
if (!pp->fixed_link) {
+ mvreg_write(pp, MVNETA_PHY_ADDR, pp->phydev->addr);
+
val = mvreg_read(pp, MVNETA_UNIT_CONTROL);
val |= MVNETA_PHY_POLLING_ENABLE;
mvreg_write(pp, MVNETA_UNIT_CONTROL, val);
pp->fixed_link = phydev->phy_id == PHY_FIXED_ID;
- /* Set PHY address in case we will enable HW polling */
- if (!pp->fixed_link)
- mvreg_write(pp, MVNETA_PHY_ADDR, phydev->addr);
-
pp->phydev = phydev;
phy_config(phydev);
phy_startup(phydev);