On Wed, May 05, 2021 at 03:17:20AM +0200, Ansuel Smith wrote:
On Wed, May 05, 2021 at 03:11:36AM +0200, Andrew Lunn wrote:
quoted
quoted
+/* QCA specific MII registers access function */
+static void qca8k_phy_dbg_write(struct mii_bus *bus, int phy_addr, u16 dbg_addr, u16 dbg_data)
+{
+ mutex_lock_nested(&bus->mdio_lock, MDIO_MUTEX_NESTED);
+ bus->write(bus, phy_addr, MII_ATH_DBG_ADDR, dbg_addr);
+ bus->write(bus, phy_addr, MII_ATH_DBG_DATA, dbg_data);
+ mutex_unlock(&bus->mdio_lock);
+}
What are you locking against here?
Andrew
Added the locking if in the future it will be used outside the
config_init function but since it's used only there, yes, I can drop the
useless lock.
The PHY core will take the phydev->lock whenever it calls the PHY
driver functions. The only exception to this is suspend/resume. So
long as you only access the devices own addresses on the MDIO bus, you
don't need any additional locks.
Andrew