ixgbe: Indicate support for pause frames in all cases

All the MACs supported by ixgbe support pause frames, so indicate
that support in ethtool. Also set advertising according to requested
mode.

Signed-off-by: Mark Rustad <mark.d.rustad@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
Mark Rustad 2016-08-26 14:48:33 -07:00 committed by Jeff Kirsher
parent 8fe293aaaa
commit ade3ccf9dc

View file

@ -313,6 +313,25 @@ static int ixgbe_get_settings(struct net_device *netdev,
break;
}
/* Indicate pause support */
ecmd->supported |= SUPPORTED_Pause;
switch (hw->fc.requested_mode) {
case ixgbe_fc_full:
ecmd->advertising |= ADVERTISED_Pause;
break;
case ixgbe_fc_rx_pause:
ecmd->advertising |= ADVERTISED_Pause |
ADVERTISED_Asym_Pause;
break;
case ixgbe_fc_tx_pause:
ecmd->advertising |= ADVERTISED_Asym_Pause;
break;
default:
ecmd->advertising &= ~(ADVERTISED_Pause |
ADVERTISED_Asym_Pause);
}
if (netif_carrier_ok(netdev)) {
switch (adapter->link_speed) {
case IXGBE_LINK_SPEED_10GB_FULL: