diff options
author | Mallikarjuna R Chilakala <mallikarjuna.chilakala@intel.com> | 2009-08-25 00:47:11 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-08-26 18:36:45 -0400 |
commit | 46a72b35144769d1e9c23c3a9a26c1776ef7d8f6 (patch) | |
tree | 0542c352236a2a14c7844ae41db771a6d5aa45b3 /drivers/net | |
parent | fa3ce355c1bf1a83b843420228202fd6f8023ad3 (diff) |
ixgbe: Fix isues while reporting 8259x backplane link capabilities
Fix ethtool get_settings logic to report 10G & 1G advertised and
supported link modes in all 8259x 10G backplane connection types
except for 82598EB BX network connection type.
Signed-off-by: Mallikarjuna R Chilakala <mallikarjuna.chilakala@intel.com>
Acked-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/ixgbe/ixgbe_ethtool.c | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/drivers/net/ixgbe/ixgbe_ethtool.c b/drivers/net/ixgbe/ixgbe_ethtool.c index dd221bba54d9..1444ec512536 100644 --- a/drivers/net/ixgbe/ixgbe_ethtool.c +++ b/drivers/net/ixgbe/ixgbe_ethtool.c | |||
@@ -169,23 +169,20 @@ static int ixgbe_get_settings(struct net_device *netdev, | |||
169 | } | 169 | } |
170 | } else if (hw->phy.media_type == ixgbe_media_type_backplane) { | 170 | } else if (hw->phy.media_type == ixgbe_media_type_backplane) { |
171 | /* Set as FIBRE until SERDES defined in kernel */ | 171 | /* Set as FIBRE until SERDES defined in kernel */ |
172 | switch (hw->device_id) { | 172 | if (hw->device_id == IXGBE_DEV_ID_82598_BX) { |
173 | case IXGBE_DEV_ID_82598: | ||
174 | ecmd->supported |= (SUPPORTED_1000baseT_Full | | ||
175 | SUPPORTED_FIBRE); | ||
176 | ecmd->advertising = (ADVERTISED_10000baseT_Full | | ||
177 | ADVERTISED_1000baseT_Full | | ||
178 | ADVERTISED_FIBRE); | ||
179 | ecmd->port = PORT_FIBRE; | ||
180 | break; | ||
181 | case IXGBE_DEV_ID_82598_BX: | ||
182 | ecmd->supported = (SUPPORTED_1000baseT_Full | | 173 | ecmd->supported = (SUPPORTED_1000baseT_Full | |
183 | SUPPORTED_FIBRE); | 174 | SUPPORTED_FIBRE); |
184 | ecmd->advertising = (ADVERTISED_1000baseT_Full | | 175 | ecmd->advertising = (ADVERTISED_1000baseT_Full | |
185 | ADVERTISED_FIBRE); | 176 | ADVERTISED_FIBRE); |
186 | ecmd->port = PORT_FIBRE; | 177 | ecmd->port = PORT_FIBRE; |
187 | ecmd->autoneg = AUTONEG_DISABLE; | 178 | ecmd->autoneg = AUTONEG_DISABLE; |
188 | break; | 179 | } else { |
180 | ecmd->supported |= (SUPPORTED_1000baseT_Full | | ||
181 | SUPPORTED_FIBRE); | ||
182 | ecmd->advertising = (ADVERTISED_10000baseT_Full | | ||
183 | ADVERTISED_1000baseT_Full | | ||
184 | ADVERTISED_FIBRE); | ||
185 | ecmd->port = PORT_FIBRE; | ||
189 | } | 186 | } |
190 | } else { | 187 | } else { |
191 | ecmd->supported |= SUPPORTED_FIBRE; | 188 | ecmd->supported |= SUPPORTED_FIBRE; |