mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-24 21:30:53 +07:00
net: phy: marvell: Add helpers to get/set page
Makes the code a bit more readable, and solves quite a few checkpatch warnings of lines longer than 80 characters. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
e1dde8dc5b
commit
6427bb2dfd
@ -189,6 +189,16 @@ struct marvell_priv {
|
||||
struct device *hwmon_dev;
|
||||
};
|
||||
|
||||
static int marvell_get_page(struct phy_device *phydev)
|
||||
{
|
||||
return phy_read(phydev, MII_MARVELL_PHY_PAGE);
|
||||
}
|
||||
|
||||
static int marvell_set_page(struct phy_device *phydev, int page)
|
||||
{
|
||||
return phy_write(phydev, MII_MARVELL_PHY_PAGE, page);
|
||||
}
|
||||
|
||||
static int marvell_ack_interrupt(struct phy_device *phydev)
|
||||
{
|
||||
int err;
|
||||
@ -385,7 +395,7 @@ static int marvell_of_reg_init(struct phy_device *phydev)
|
||||
if (!paddr || len < (4 * sizeof(*paddr)))
|
||||
return 0;
|
||||
|
||||
saved_page = phy_read(phydev, MII_MARVELL_PHY_PAGE);
|
||||
saved_page = marvell_get_page(phydev);
|
||||
if (saved_page < 0)
|
||||
return saved_page;
|
||||
current_page = saved_page;
|
||||
@ -393,15 +403,15 @@ static int marvell_of_reg_init(struct phy_device *phydev)
|
||||
ret = 0;
|
||||
len /= sizeof(*paddr);
|
||||
for (i = 0; i < len - 3; i += 4) {
|
||||
u16 reg_page = be32_to_cpup(paddr + i);
|
||||
u16 page = be32_to_cpup(paddr + i);
|
||||
u16 reg = be32_to_cpup(paddr + i + 1);
|
||||
u16 mask = be32_to_cpup(paddr + i + 2);
|
||||
u16 val_bits = be32_to_cpup(paddr + i + 3);
|
||||
int val;
|
||||
|
||||
if (reg_page != current_page) {
|
||||
current_page = reg_page;
|
||||
ret = phy_write(phydev, MII_MARVELL_PHY_PAGE, reg_page);
|
||||
if (page != current_page) {
|
||||
current_page = page;
|
||||
ret = marvell_set_page(phydev, page);
|
||||
if (ret < 0)
|
||||
goto err;
|
||||
}
|
||||
@ -423,7 +433,7 @@ static int marvell_of_reg_init(struct phy_device *phydev)
|
||||
}
|
||||
err:
|
||||
if (current_page != saved_page) {
|
||||
i = phy_write(phydev, MII_MARVELL_PHY_PAGE, saved_page);
|
||||
i = marvell_set_page(phydev, saved_page);
|
||||
if (ret == 0)
|
||||
ret = i;
|
||||
}
|
||||
@ -440,10 +450,9 @@ static int m88e1121_config_aneg(struct phy_device *phydev)
|
||||
{
|
||||
int err, oldpage, mscr;
|
||||
|
||||
oldpage = phy_read(phydev, MII_MARVELL_PHY_PAGE);
|
||||
oldpage = marvell_get_page(phydev);
|
||||
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE,
|
||||
MII_88E1121_PHY_MSCR_PAGE);
|
||||
err = marvell_set_page(phydev, MII_88E1121_PHY_MSCR_PAGE);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -464,7 +473,7 @@ static int m88e1121_config_aneg(struct phy_device *phydev)
|
||||
return err;
|
||||
}
|
||||
|
||||
phy_write(phydev, MII_MARVELL_PHY_PAGE, oldpage);
|
||||
marvell_set_page(phydev, oldpage);
|
||||
|
||||
err = phy_write(phydev, MII_BMCR, BMCR_RESET);
|
||||
if (err < 0)
|
||||
@ -482,10 +491,9 @@ static int m88e1318_config_aneg(struct phy_device *phydev)
|
||||
{
|
||||
int err, oldpage, mscr;
|
||||
|
||||
oldpage = phy_read(phydev, MII_MARVELL_PHY_PAGE);
|
||||
oldpage = marvell_get_page(phydev);
|
||||
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE,
|
||||
MII_88E1121_PHY_MSCR_PAGE);
|
||||
err = marvell_set_page(phydev, MII_88E1121_PHY_MSCR_PAGE);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -496,7 +504,7 @@ static int m88e1318_config_aneg(struct phy_device *phydev)
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, oldpage);
|
||||
err = marvell_set_page(phydev, oldpage);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -596,7 +604,7 @@ static int m88e1510_config_aneg(struct phy_device *phydev)
|
||||
{
|
||||
int err;
|
||||
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, MII_M1111_COPPER);
|
||||
err = marvell_set_page(phydev, MII_M1111_COPPER);
|
||||
if (err < 0)
|
||||
goto error;
|
||||
|
||||
@ -606,7 +614,7 @@ static int m88e1510_config_aneg(struct phy_device *phydev)
|
||||
goto error;
|
||||
|
||||
/* Then the fiber link */
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, MII_M1111_FIBER);
|
||||
err = marvell_set_page(phydev, MII_M1111_FIBER);
|
||||
if (err < 0)
|
||||
goto error;
|
||||
|
||||
@ -614,10 +622,10 @@ static int m88e1510_config_aneg(struct phy_device *phydev)
|
||||
if (err < 0)
|
||||
goto error;
|
||||
|
||||
return phy_write(phydev, MII_MARVELL_PHY_PAGE, MII_M1111_COPPER);
|
||||
return marvell_set_page(phydev, MII_M1111_COPPER);
|
||||
|
||||
error:
|
||||
phy_write(phydev, MII_MARVELL_PHY_PAGE, MII_M1111_COPPER);
|
||||
marvell_set_page(phydev, MII_M1111_COPPER);
|
||||
return err;
|
||||
}
|
||||
|
||||
@ -640,7 +648,7 @@ static int m88e1116r_config_init(struct phy_device *phydev)
|
||||
|
||||
mdelay(500);
|
||||
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, 0);
|
||||
err = marvell_set_page(phydev, 0);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -652,7 +660,7 @@ static int m88e1116r_config_init(struct phy_device *phydev)
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, 2);
|
||||
err = marvell_set_page(phydev, 2);
|
||||
if (err < 0)
|
||||
return err;
|
||||
temp = phy_read(phydev, MII_M1116R_CONTROL_REG_MAC);
|
||||
@ -661,7 +669,7 @@ static int m88e1116r_config_init(struct phy_device *phydev)
|
||||
err = phy_write(phydev, MII_M1116R_CONTROL_REG_MAC, temp);
|
||||
if (err < 0)
|
||||
return err;
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, 0);
|
||||
err = marvell_set_page(phydev, 0);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -837,9 +845,9 @@ static int m88e1121_config_init(struct phy_device *phydev)
|
||||
{
|
||||
int err, oldpage;
|
||||
|
||||
oldpage = phy_read(phydev, MII_MARVELL_PHY_PAGE);
|
||||
oldpage = marvell_get_page(phydev);
|
||||
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, MII_88E1121_PHY_LED_PAGE);
|
||||
err = marvell_set_page(phydev, MII_88E1121_PHY_LED_PAGE);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -849,7 +857,7 @@ static int m88e1121_config_init(struct phy_device *phydev)
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
phy_write(phydev, MII_MARVELL_PHY_PAGE, oldpage);
|
||||
marvell_set_page(phydev, oldpage);
|
||||
|
||||
/* Set marvell,reg-init configuration from device tree */
|
||||
return marvell_config_init(phydev);
|
||||
@ -863,7 +871,7 @@ static int m88e1510_config_init(struct phy_device *phydev)
|
||||
/* SGMII-to-Copper mode initialization */
|
||||
if (phydev->interface == PHY_INTERFACE_MODE_SGMII) {
|
||||
/* Select page 18 */
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, 18);
|
||||
err = marvell_set_page(phydev, 18);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -882,7 +890,7 @@ static int m88e1510_config_init(struct phy_device *phydev)
|
||||
return err;
|
||||
|
||||
/* Reset page selection */
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, 0);
|
||||
err = marvell_set_page(phydev, 0);
|
||||
if (err < 0)
|
||||
return err;
|
||||
}
|
||||
@ -912,7 +920,7 @@ static int m88e1118_config_init(struct phy_device *phydev)
|
||||
int err;
|
||||
|
||||
/* Change address */
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, 0x0002);
|
||||
err = marvell_set_page(phydev, 2);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -922,7 +930,7 @@ static int m88e1118_config_init(struct phy_device *phydev)
|
||||
return err;
|
||||
|
||||
/* Change address */
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, 0x0003);
|
||||
err = marvell_set_page(phydev, 3);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -939,7 +947,7 @@ static int m88e1118_config_init(struct phy_device *phydev)
|
||||
return err;
|
||||
|
||||
/* Reset address */
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, 0x0);
|
||||
err = marvell_set_page(phydev, 0);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -951,7 +959,7 @@ static int m88e1149_config_init(struct phy_device *phydev)
|
||||
int err;
|
||||
|
||||
/* Change address */
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, 0x0002);
|
||||
err = marvell_set_page(phydev, 2);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -965,7 +973,7 @@ static int m88e1149_config_init(struct phy_device *phydev)
|
||||
return err;
|
||||
|
||||
/* Reset address */
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, 0x0);
|
||||
err = marvell_set_page(phydev, 0);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -1268,7 +1276,7 @@ static int marvell_read_status(struct phy_device *phydev)
|
||||
/* Check the fiber mode first */
|
||||
if (phydev->supported & SUPPORTED_FIBRE &&
|
||||
phydev->interface != PHY_INTERFACE_MODE_SGMII) {
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, MII_M1111_FIBER);
|
||||
err = marvell_set_page(phydev, MII_M1111_FIBER);
|
||||
if (err < 0)
|
||||
goto error;
|
||||
|
||||
@ -1287,7 +1295,7 @@ static int marvell_read_status(struct phy_device *phydev)
|
||||
return 0;
|
||||
|
||||
/* If fiber link is down, check and save copper mode state */
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, MII_M1111_COPPER);
|
||||
err = marvell_set_page(phydev, MII_M1111_COPPER);
|
||||
if (err < 0)
|
||||
goto error;
|
||||
}
|
||||
@ -1295,7 +1303,7 @@ static int marvell_read_status(struct phy_device *phydev)
|
||||
return marvell_read_status_page(phydev, MII_M1111_COPPER);
|
||||
|
||||
error:
|
||||
phy_write(phydev, MII_MARVELL_PHY_PAGE, MII_M1111_COPPER);
|
||||
marvell_set_page(phydev, MII_M1111_COPPER);
|
||||
return err;
|
||||
}
|
||||
|
||||
@ -1310,7 +1318,7 @@ static int marvell_suspend(struct phy_device *phydev)
|
||||
|
||||
/* Suspend the fiber mode first */
|
||||
if (!(phydev->supported & SUPPORTED_FIBRE)) {
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, MII_M1111_FIBER);
|
||||
err = marvell_set_page(phydev, MII_M1111_FIBER);
|
||||
if (err < 0)
|
||||
goto error;
|
||||
|
||||
@ -1320,7 +1328,7 @@ static int marvell_suspend(struct phy_device *phydev)
|
||||
goto error;
|
||||
|
||||
/* Then, the copper link */
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, MII_M1111_COPPER);
|
||||
err = marvell_set_page(phydev, MII_M1111_COPPER);
|
||||
if (err < 0)
|
||||
goto error;
|
||||
}
|
||||
@ -1329,7 +1337,7 @@ static int marvell_suspend(struct phy_device *phydev)
|
||||
return genphy_suspend(phydev);
|
||||
|
||||
error:
|
||||
phy_write(phydev, MII_MARVELL_PHY_PAGE, MII_M1111_COPPER);
|
||||
marvell_set_page(phydev, MII_M1111_COPPER);
|
||||
return err;
|
||||
}
|
||||
|
||||
@ -1344,7 +1352,7 @@ static int marvell_resume(struct phy_device *phydev)
|
||||
|
||||
/* Resume the fiber mode first */
|
||||
if (!(phydev->supported & SUPPORTED_FIBRE)) {
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, MII_M1111_FIBER);
|
||||
err = marvell_set_page(phydev, MII_M1111_FIBER);
|
||||
if (err < 0)
|
||||
goto error;
|
||||
|
||||
@ -1354,7 +1362,7 @@ static int marvell_resume(struct phy_device *phydev)
|
||||
goto error;
|
||||
|
||||
/* Then, the copper link */
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, MII_M1111_COPPER);
|
||||
err = marvell_set_page(phydev, MII_M1111_COPPER);
|
||||
if (err < 0)
|
||||
goto error;
|
||||
}
|
||||
@ -1363,7 +1371,7 @@ static int marvell_resume(struct phy_device *phydev)
|
||||
return genphy_resume(phydev);
|
||||
|
||||
error:
|
||||
phy_write(phydev, MII_MARVELL_PHY_PAGE, MII_M1111_COPPER);
|
||||
marvell_set_page(phydev, MII_M1111_COPPER);
|
||||
return err;
|
||||
}
|
||||
|
||||
@ -1391,15 +1399,14 @@ static void m88e1318_get_wol(struct phy_device *phydev, struct ethtool_wolinfo *
|
||||
wol->supported = WAKE_MAGIC;
|
||||
wol->wolopts = 0;
|
||||
|
||||
if (phy_write(phydev, MII_MARVELL_PHY_PAGE,
|
||||
MII_88E1318S_PHY_WOL_PAGE) < 0)
|
||||
if (marvell_set_page(phydev, MII_88E1318S_PHY_WOL_PAGE) < 0)
|
||||
return;
|
||||
|
||||
if (phy_read(phydev, MII_88E1318S_PHY_WOL_CTRL) &
|
||||
MII_88E1318S_PHY_WOL_CTRL_MAGIC_PACKET_MATCH_ENABLE)
|
||||
wol->wolopts |= WAKE_MAGIC;
|
||||
|
||||
if (phy_write(phydev, MII_MARVELL_PHY_PAGE, 0x00) < 0)
|
||||
if (marvell_set_page(phydev, 0x00) < 0)
|
||||
return;
|
||||
}
|
||||
|
||||
@ -1407,11 +1414,11 @@ static int m88e1318_set_wol(struct phy_device *phydev, struct ethtool_wolinfo *w
|
||||
{
|
||||
int err, oldpage, temp;
|
||||
|
||||
oldpage = phy_read(phydev, MII_MARVELL_PHY_PAGE);
|
||||
oldpage = marvell_get_page(phydev);
|
||||
|
||||
if (wol->wolopts & WAKE_MAGIC) {
|
||||
/* Explicitly switch to page 0x00, just to be sure */
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, 0x00);
|
||||
err = marvell_set_page(phydev, 0x00);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -1422,8 +1429,7 @@ static int m88e1318_set_wol(struct phy_device *phydev, struct ethtool_wolinfo *w
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE,
|
||||
MII_88E1318S_PHY_LED_PAGE);
|
||||
err = marvell_set_page(phydev, MII_88E1318S_PHY_LED_PAGE);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -1436,8 +1442,7 @@ static int m88e1318_set_wol(struct phy_device *phydev, struct ethtool_wolinfo *w
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE,
|
||||
MII_88E1318S_PHY_WOL_PAGE);
|
||||
err = marvell_set_page(phydev, MII_88E1318S_PHY_WOL_PAGE);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -1466,8 +1471,7 @@ static int m88e1318_set_wol(struct phy_device *phydev, struct ethtool_wolinfo *w
|
||||
if (err < 0)
|
||||
return err;
|
||||
} else {
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE,
|
||||
MII_88E1318S_PHY_WOL_PAGE);
|
||||
err = marvell_set_page(phydev, MII_88E1318S_PHY_WOL_PAGE);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -1480,7 +1484,7 @@ static int m88e1318_set_wol(struct phy_device *phydev, struct ethtool_wolinfo *w
|
||||
return err;
|
||||
}
|
||||
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE, oldpage);
|
||||
err = marvell_set_page(phydev, oldpage);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -1515,9 +1519,8 @@ static u64 marvell_get_stat(struct phy_device *phydev, int i)
|
||||
int err, oldpage, val;
|
||||
u64 ret;
|
||||
|
||||
oldpage = phy_read(phydev, MII_MARVELL_PHY_PAGE);
|
||||
err = phy_write(phydev, MII_MARVELL_PHY_PAGE,
|
||||
stat.page);
|
||||
oldpage = marvell_get_page(phydev);
|
||||
err = marvell_set_page(phydev, stat.page);
|
||||
if (err < 0)
|
||||
return UINT64_MAX;
|
||||
|
||||
@ -1530,7 +1533,7 @@ static u64 marvell_get_stat(struct phy_device *phydev, int i)
|
||||
ret = priv->stats[i];
|
||||
}
|
||||
|
||||
phy_write(phydev, MII_MARVELL_PHY_PAGE, oldpage);
|
||||
marvell_set_page(phydev, oldpage);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user