aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/drivers/net/ethernet/socionext/netsec.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2021-03-29 15:56:48 +0200
committerIngo Molnar <mingo@kernel.org>2021-03-29 15:56:48 +0200
commitfeecb81732d8f271440d907beb082425e109f877 (patch)
treeaf55ca33d43cf3b3c2b82e9860df7d01be061a0f /drivers/net/ethernet/socionext/netsec.c
parentMAINTAINERS: Add myself as futex reviewer (diff)
parentLinux 5.12-rc5 (diff)
downloadwireguard-linux-feecb81732d8f271440d907beb082425e109f877.tar.xz
wireguard-linux-feecb81732d8f271440d907beb082425e109f877.zip
Merge tag 'v5.12-rc5' into locking/core, to pick up fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'drivers/net/ethernet/socionext/netsec.c')
-rw-r--r--drivers/net/ethernet/socionext/netsec.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/net/ethernet/socionext/netsec.c b/drivers/net/ethernet/socionext/netsec.c
index 3c53051bdacf..200785e703c8 100644
--- a/drivers/net/ethernet/socionext/netsec.c
+++ b/drivers/net/ethernet/socionext/netsec.c
@@ -1715,14 +1715,17 @@ static int netsec_netdev_init(struct net_device *ndev)
goto err1;
/* set phy power down */
- data = netsec_phy_read(priv->mii_bus, priv->phy_addr, MII_BMCR) |
- BMCR_PDOWN;
- netsec_phy_write(priv->mii_bus, priv->phy_addr, MII_BMCR, data);
+ data = netsec_phy_read(priv->mii_bus, priv->phy_addr, MII_BMCR);
+ netsec_phy_write(priv->mii_bus, priv->phy_addr, MII_BMCR,
+ data | BMCR_PDOWN);
ret = netsec_reset_hardware(priv, true);
if (ret)
goto err2;
+ /* Restore phy power state */
+ netsec_phy_write(priv->mii_bus, priv->phy_addr, MII_BMCR, data);
+
spin_lock_init(&priv->desc_ring[NETSEC_RING_TX].lock);
spin_lock_init(&priv->desc_ring[NETSEC_RING_RX].lock);