aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/intel/igb/igb_main.c
diff options
context:
space:
mode:
authorAkeem G. Abodunrin <akeem.g.abodunrin@intel.com>2013-04-05 12:49:06 -0400
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2013-04-18 17:03:15 -0400
commitf502ef7d77dd09bad9c93ee854fcb61d6fc29815 (patch)
tree75efb858370a22c504064e624ff6b79275c0cd45 /drivers/net/ethernet/intel/igb/igb_main.c
parent33243fb08678d6bdbe3f442dd72ed50b45efd474 (diff)
igb: Support for 100base-fx SFP
This patch adds support for 100base-fx SFP and report proper link speed/duplex via Ethtool. v2: fix smatch warnings CC: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Akeem G Abodunrin <akeem.g.abodunrin@intel.com> Tested-by: Aaron Brown <aaron.f.brown@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/ethernet/intel/igb/igb_main.c')
-rw-r--r--drivers/net/ethernet/intel/igb/igb_main.c18
1 files changed, 13 insertions, 5 deletions
diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c
index 8496adfc6a68..0a465ae1cdfa 100644
--- a/drivers/net/ethernet/intel/igb/igb_main.c
+++ b/drivers/net/ethernet/intel/igb/igb_main.c
@@ -7008,11 +7008,19 @@ int igb_set_spd_dplx(struct igb_adapter *adapter, u32 spd, u8 dplx)
7008 if ((spd & 1) || (dplx & ~1)) 7008 if ((spd & 1) || (dplx & ~1))
7009 goto err_inval; 7009 goto err_inval;
7010 7010
7011 /* Fiber NIC's only allow 1000 Gbps Full duplex */ 7011 /* Fiber NIC's only allow 1000 gbps Full duplex
7012 if ((adapter->hw.phy.media_type == e1000_media_type_internal_serdes) && 7012 * and 100Mbps Full duplex for 100baseFx sfp
7013 spd != SPEED_1000 && 7013 */
7014 dplx != DUPLEX_FULL) 7014 if (adapter->hw.phy.media_type == e1000_media_type_internal_serdes) {
7015 goto err_inval; 7015 switch (spd + dplx) {
7016 case SPEED_10 + DUPLEX_HALF:
7017 case SPEED_10 + DUPLEX_FULL:
7018 case SPEED_100 + DUPLEX_HALF:
7019 goto err_inval;
7020 default:
7021 break;
7022 }
7023 }
7016 7024
7017 switch (spd + dplx) { 7025 switch (spd + dplx) {
7018 case SPEED_10 + DUPLEX_HALF: 7026 case SPEED_10 + DUPLEX_HALF: