diff options
Diffstat (limited to 'drivers/net/phy/micrel.c')
| -rw-r--r-- | drivers/net/phy/micrel.c | 7 | 
1 files changed, 5 insertions, 2 deletions
| diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c index fdb43dd9b5cd..422ff6333c52 100644 --- a/drivers/net/phy/micrel.c +++ b/drivers/net/phy/micrel.c @@ -496,16 +496,18 @@ static int ksz9031_of_load_skew_values(struct phy_device *phydev,  	return ksz9031_extended_write(phydev, OP_DATA, 2, reg, newval);  } +/* Center KSZ9031RNX FLP timing at 16ms. */  static int ksz9031_center_flp_timing(struct phy_device *phydev)  {  	int result; -	/* Center KSZ9031RNX FLP timing at 16ms. */  	result = ksz9031_extended_write(phydev, OP_DATA, 0,  					MII_KSZ9031RN_FLP_BURST_TX_HI, 0x0006); +	if (result) +		return result; +  	result = ksz9031_extended_write(phydev, OP_DATA, 0,  					MII_KSZ9031RN_FLP_BURST_TX_LO, 0x1A80); -  	if (result)  		return result; @@ -622,6 +624,7 @@ static int ksz9031_read_status(struct phy_device *phydev)  		phydev->link = 0;  		if (phydev->drv->config_intr && phy_interrupt_is_valid(phydev))  			phydev->drv->config_intr(phydev); +		return genphy_config_aneg(phydev);  	}  	return 0; |