diff mbox series

[v1,net] lan743x: Remove phy_read from link status change function

Message ID 1546887609-16152-1-git-send-email-Bryan.Whitehead@microchip.com
State Accepted
Delegated to: David Miller
Headers show
Series [v1,net] lan743x: Remove phy_read from link status change function | expand

Commit Message

Bryan Whitehead Jan. 7, 2019, 7 p.m. UTC
It has been noticed that some phys do not have the registers
required by the previous implementation.

To fix this, instead of using phy_read, the required information
is extracted from the phy_device structure.

fixes: 23f0703c125b ("lan743x: Add main source files for new lan743x driver")
Signed-off-by: Bryan Whitehead <Bryan.Whitehead@microchip.com>
---
 drivers/net/ethernet/microchip/lan743x_main.c | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

Comments

Andrew Lunn Jan. 7, 2019, 8:30 p.m. UTC | #1
On Mon, Jan 07, 2019 at 02:00:09PM -0500, Bryan Whitehead wrote:
> It has been noticed that some phys do not have the registers
> required by the previous implementation.
> 
> To fix this, instead of using phy_read, the required information
> is extracted from the phy_device structure.
> 
> fixes: 23f0703c125b ("lan743x: Add main source files for new lan743x driver")
> Signed-off-by: Bryan Whitehead <Bryan.Whitehead@microchip.com>

Reviewed-by: Andrew Lunn <andrew@lunn.ch>

    Andrew
David Miller Jan. 8, 2019, 9:27 p.m. UTC | #2
From: Bryan Whitehead <Bryan.Whitehead@microchip.com>
Date: Mon, 7 Jan 2019 14:00:09 -0500

> It has been noticed that some phys do not have the registers
> required by the previous implementation.
> 
> To fix this, instead of using phy_read, the required information
> is extracted from the phy_device structure.
> 
> fixes: 23f0703c125b ("lan743x: Add main source files for new lan743x driver")
> Signed-off-by: Bryan Whitehead <Bryan.Whitehead@microchip.com>

Applied, thanks.
diff mbox series

Patch

diff --git a/drivers/net/ethernet/microchip/lan743x_main.c b/drivers/net/ethernet/microchip/lan743x_main.c
index 20c9377..310807e 100644
--- a/drivers/net/ethernet/microchip/lan743x_main.c
+++ b/drivers/net/ethernet/microchip/lan743x_main.c
@@ -962,13 +962,10 @@  static void lan743x_phy_link_status_change(struct net_device *netdev)
 
 		memset(&ksettings, 0, sizeof(ksettings));
 		phy_ethtool_get_link_ksettings(netdev, &ksettings);
-		local_advertisement = phy_read(phydev, MII_ADVERTISE);
-		if (local_advertisement < 0)
-			return;
-
-		remote_advertisement = phy_read(phydev, MII_LPA);
-		if (remote_advertisement < 0)
-			return;
+		local_advertisement =
+			linkmode_adv_to_mii_adv_t(phydev->advertising);
+		remote_advertisement =
+			linkmode_adv_to_mii_adv_t(phydev->lp_advertising);
 
 		lan743x_phy_update_flowcontrol(adapter,
 					       ksettings.base.duplex,