net: phy: use unlocked accessors for indirect MMD accesses
Use unlocked accessors for indirect MMD accesses to clause 22 PHYs. This permits tracing of these accesses. Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
34dc08e4be
commit
1b2dea2e6a
|
@ -236,13 +236,14 @@ static void mmd_phy_indirect(struct mii_bus *bus, int phy_addr, int devad,
|
||||||
u16 regnum)
|
u16 regnum)
|
||||||
{
|
{
|
||||||
/* Write the desired MMD Devad */
|
/* Write the desired MMD Devad */
|
||||||
bus->write(bus, phy_addr, MII_MMD_CTRL, devad);
|
__mdiobus_write(bus, phy_addr, MII_MMD_CTRL, devad);
|
||||||
|
|
||||||
/* Write the desired MMD register address */
|
/* Write the desired MMD register address */
|
||||||
bus->write(bus, phy_addr, MII_MMD_DATA, regnum);
|
__mdiobus_write(bus, phy_addr, MII_MMD_DATA, regnum);
|
||||||
|
|
||||||
/* Select the Function : DATA with no post increment */
|
/* Select the Function : DATA with no post increment */
|
||||||
bus->write(bus, phy_addr, MII_MMD_CTRL, devad | MII_MMD_CTRL_NOINCR);
|
__mdiobus_write(bus, phy_addr, MII_MMD_CTRL,
|
||||||
|
devad | MII_MMD_CTRL_NOINCR);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -275,7 +276,7 @@ int phy_read_mmd(struct phy_device *phydev, int devad, u32 regnum)
|
||||||
mmd_phy_indirect(bus, phy_addr, devad, regnum);
|
mmd_phy_indirect(bus, phy_addr, devad, regnum);
|
||||||
|
|
||||||
/* Read the content of the MMD's selected register */
|
/* Read the content of the MMD's selected register */
|
||||||
val = bus->read(bus, phy_addr, MII_MMD_DATA);
|
val = __mdiobus_read(bus, phy_addr, MII_MMD_DATA);
|
||||||
mutex_unlock(&bus->mdio_lock);
|
mutex_unlock(&bus->mdio_lock);
|
||||||
}
|
}
|
||||||
return val;
|
return val;
|
||||||
|
@ -314,7 +315,7 @@ int phy_write_mmd(struct phy_device *phydev, int devad, u32 regnum, u16 val)
|
||||||
mmd_phy_indirect(bus, phy_addr, devad, regnum);
|
mmd_phy_indirect(bus, phy_addr, devad, regnum);
|
||||||
|
|
||||||
/* Write the data into MMD's selected register */
|
/* Write the data into MMD's selected register */
|
||||||
bus->write(bus, phy_addr, MII_MMD_DATA, val);
|
__mdiobus_write(bus, phy_addr, MII_MMD_DATA, val);
|
||||||
mutex_unlock(&bus->mdio_lock);
|
mutex_unlock(&bus->mdio_lock);
|
||||||
|
|
||||||
ret = 0;
|
ret = 0;
|
||||||
|
|
Loading…
Reference in New Issue