mirror of
https://github.com/torvalds/linux
synced 2024-10-08 04:12:40 +00:00
net: phy: smsc: bail out in lan87xx_read_status if genphy_read_status fails
If genphy_read_status fails then further access to the PHY may result
in unpredictable behavior. To prevent this bail out immediately if
genphy_read_status fails.
Fixes: 4223dbffed
("net: phy: smsc: Re-enable EDPD mode for LAN87xx")
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Reviewed-by: Simon Horman <simon.horman@corigine.com>
Link: https://lore.kernel.org/r/026aa4f2-36f5-1c10-ab9f-cdb17dda6ac4@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
4b397c06cb
commit
c22c3bbf35
|
@ -199,8 +199,11 @@ static int lan95xx_config_aneg_ext(struct phy_device *phydev)
|
|||
static int lan87xx_read_status(struct phy_device *phydev)
|
||||
{
|
||||
struct smsc_phy_priv *priv = phydev->priv;
|
||||
int err;
|
||||
|
||||
int err = genphy_read_status(phydev);
|
||||
err = genphy_read_status(phydev);
|
||||
if (err)
|
||||
return err;
|
||||
|
||||
if (!phydev->link && priv->energy_enable && phydev->irq == PHY_POLL) {
|
||||
/* Disable EDPD to wake up PHY */
|
||||
|
|
Loading…
Reference in a new issue