net: ethernet: Add helper for set_pauseparam for Asym Pause
ethtool can be used to enable/disable pause. Add a helper to configure the PHY when asym pause is supported. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
c306ad3618
commit
70814e819c
@@ -461,16 +461,7 @@ static int ave_ethtool_set_pauseparam(struct net_device *ndev,
|
||||
priv->pause_rx = pause->rx_pause;
|
||||
priv->pause_tx = pause->tx_pause;
|
||||
|
||||
phydev->advertising &= ~(ADVERTISED_Pause | ADVERTISED_Asym_Pause);
|
||||
if (pause->rx_pause)
|
||||
phydev->advertising |= ADVERTISED_Pause | ADVERTISED_Asym_Pause;
|
||||
if (pause->tx_pause)
|
||||
phydev->advertising ^= ADVERTISED_Asym_Pause;
|
||||
|
||||
if (pause->autoneg) {
|
||||
if (netif_running(ndev))
|
||||
phy_start_aneg(phydev);
|
||||
}
|
||||
phy_set_asym_pause(phydev, pause->rx_pause, pause->tx_pause);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Reference in New Issue
Block a user