[PATCH net v3 3/4] net: phy: mscc: remove unnecessary phydev locking

From: David Epping
Date: Tue May 23 2023 - 11:31:44 EST


Holding the struct phy_device (phydev) lock is unnecessary when
accessing phydev->interface in the PHY driver .config_init method,
which is the only place that vsc85xx_rgmii_set_skews() is called from.

The phy_modify_paged() function implements required MDIO bus level
locking, which can not be achieved by a phydev lock.

Signed-off-by: David Epping <david.epping@xxxxxxxxxxxxxxxxxxxxxxxxxx>
---
drivers/net/phy/mscc/mscc_main.c | 4 ----
1 file changed, 4 deletions(-)

diff --git a/drivers/net/phy/mscc/mscc_main.c b/drivers/net/phy/mscc/mscc_main.c
index 29fc27a16805..0c39b3ecb1f2 100644
--- a/drivers/net/phy/mscc/mscc_main.c
+++ b/drivers/net/phy/mscc/mscc_main.c
@@ -528,8 +528,6 @@ static int vsc85xx_rgmii_set_skews(struct phy_device *phydev, u32 rgmii_cntl,
u16 reg_val = 0;
int rc;

- mutex_lock(&phydev->lock);
-
if (phydev->interface == PHY_INTERFACE_MODE_RGMII_RXID ||
phydev->interface == PHY_INTERFACE_MODE_RGMII_ID)
reg_val |= RGMII_CLK_DELAY_2_0_NS << rgmii_rx_delay_pos;
@@ -542,8 +540,6 @@ static int vsc85xx_rgmii_set_skews(struct phy_device *phydev, u32 rgmii_cntl,
rgmii_rx_delay_mask | rgmii_tx_delay_mask,
reg_val);

- mutex_unlock(&phydev->lock);
-
return rc;
}

--
2.17.1