net: phy: marvell: Use phy_read_paged() instead of open coding it
authorJisheng Zhang <Jisheng.Zhang@synaptics.com>
Mon, 5 Oct 2020 09:19:50 +0000 (17:19 +0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 5 Oct 2020 13:12:10 +0000 (06:12 -0700)
Convert m88e1318_get_wol() to use the well implemented phy_read_paged()
instead of open coding it.

Signed-off-by: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Reviewed-by: Marek BehĂșn <kabel@kernel.org>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/marvell.c

index bb86ac0..5aec673 100644 (file)
@@ -1598,21 +1598,15 @@ static int m88e1121_did_interrupt(struct phy_device *phydev)
 static void m88e1318_get_wol(struct phy_device *phydev,
                             struct ethtool_wolinfo *wol)
 {
-       int oldpage, ret = 0;
+       int ret;
 
        wol->supported = WAKE_MAGIC;
        wol->wolopts = 0;
 
-       oldpage = phy_select_page(phydev, MII_MARVELL_WOL_PAGE);
-       if (oldpage < 0)
-               goto error;
-
-       ret = __phy_read(phydev, MII_88E1318S_PHY_WOL_CTRL);
-       if (ret & MII_88E1318S_PHY_WOL_CTRL_MAGIC_PACKET_MATCH_ENABLE)
+       ret = phy_read_paged(phydev, MII_MARVELL_WOL_PAGE,
+                            MII_88E1318S_PHY_WOL_CTRL);
+       if (ret >= 0 && ret & MII_88E1318S_PHY_WOL_CTRL_MAGIC_PACKET_MATCH_ENABLE)
                wol->wolopts |= WAKE_MAGIC;
-
-error:
-       phy_restore_page(phydev, oldpage, ret);
 }
 
 static int m88e1318_set_wol(struct phy_device *phydev,