Skip to content

Commit

Permalink
net: phylink: Convert some users of mdiobus_* to mdiodev_*
Browse files Browse the repository at this point in the history
This refactors the phylink pcs helper functions to use mdiobus_* instead
of mdiodev_*.

Signed-off-by: Sean Anderson <sean.anderson@seco.com>
Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Sean Anderson authored and David S. Miller committed Oct 24, 2021
1 parent 0ebecb2 commit c8fb89a
Showing 1 changed file with 7 additions and 16 deletions.
23 changes: 7 additions & 16 deletions drivers/net/phy/phylink.c
Original file line number Diff line number Diff line change
Expand Up @@ -2542,12 +2542,10 @@ EXPORT_SYMBOL_GPL(phylink_decode_usxgmii_word);
void phylink_mii_c22_pcs_get_state(struct mdio_device *pcs,
struct phylink_link_state *state)
{
struct mii_bus *bus = pcs->bus;
int addr = pcs->addr;
int bmsr, lpa;

bmsr = mdiobus_read(bus, addr, MII_BMSR);
lpa = mdiobus_read(bus, addr, MII_LPA);
bmsr = mdiodev_read(pcs, MII_BMSR);
lpa = mdiodev_read(pcs, MII_LPA);
if (bmsr < 0 || lpa < 0) {
state->link = false;
return;
Expand Down Expand Up @@ -2603,8 +2601,6 @@ int phylink_mii_c22_pcs_set_advertisement(struct mdio_device *pcs,
phy_interface_t interface,
const unsigned long *advertising)
{
struct mii_bus *bus = pcs->bus;
int addr = pcs->addr;
u16 adv;

switch (interface) {
Expand All @@ -2618,12 +2614,10 @@ int phylink_mii_c22_pcs_set_advertisement(struct mdio_device *pcs,
advertising))
adv |= ADVERTISE_1000XPSE_ASYM;

return mdiobus_modify_changed(bus, addr, MII_ADVERTISE,
0xffff, adv);
return mdiodev_modify_changed(pcs, MII_ADVERTISE, 0xffff, adv);

case PHY_INTERFACE_MODE_SGMII:
return mdiobus_modify_changed(bus, addr, MII_ADVERTISE,
0xffff, 0x0001);
return mdiodev_modify_changed(pcs, MII_ADVERTISE, 0xffff, 0x0001);

default:
/* Nothing to do for other modes */
Expand Down Expand Up @@ -2666,8 +2660,7 @@ int phylink_mii_c22_pcs_config(struct mdio_device *pcs, unsigned int mode,
else
bmcr = 0;

ret = mdiobus_modify(pcs->bus, pcs->addr, MII_BMCR,
BMCR_ANENABLE | BMCR_ISOLATE, bmcr);
ret = mdiodev_modify(pcs, MII_BMCR, BMCR_ANENABLE | BMCR_ISOLATE, bmcr);
if (ret < 0)
return ret;

Expand All @@ -2688,14 +2681,12 @@ EXPORT_SYMBOL_GPL(phylink_mii_c22_pcs_config);
*/
void phylink_mii_c22_pcs_an_restart(struct mdio_device *pcs)
{
struct mii_bus *bus = pcs->bus;
int val, addr = pcs->addr;
int val = mdiodev_read(pcs, MII_BMCR);

val = mdiobus_read(bus, addr, MII_BMCR);
if (val >= 0) {
val |= BMCR_ANRESTART;

mdiobus_write(bus, addr, MII_BMCR, val);
mdiodev_write(pcs, MII_BMCR, val);
}
}
EXPORT_SYMBOL_GPL(phylink_mii_c22_pcs_an_restart);
Expand Down

0 comments on commit c8fb89a

Please sign in to comment.