Skip to content

Commit

Permalink
igb: SERDES loopback sigdetect bit on i210 devices
Browse files Browse the repository at this point in the history
This patch implements SERDES loopback configuration for i210 devices by
unsetting sigdetect bit, so as to fix Ethtool loopback test failure. Old
sigdetect code is also simplified to take care of all devices newer than 82580

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>
  • Loading branch information
Akeem G. Abodunrin authored and Jeff Kirsher committed Apr 25, 2013
1 parent 5700ff2 commit 0ba96d3
Showing 1 changed file with 2 additions and 7 deletions.
9 changes: 2 additions & 7 deletions drivers/net/ethernet/intel/igb/igb_ethtool.c
Original file line number Diff line number Diff line change
Expand Up @@ -1678,17 +1678,12 @@ static int igb_setup_loopback_test(struct igb_adapter *adapter)
wr32(E1000_CONNSW, reg);

/* Unset sigdetect for SERDES loopback on
* 82580 and i350 devices.
* 82580 and newer devices.
*/
switch (hw->mac.type) {
case e1000_82580:
case e1000_i350:
if (hw->mac.type >= e1000_82580) {
reg = rd32(E1000_PCS_CFG0);
reg |= E1000_PCS_CFG_IGN_SD;
wr32(E1000_PCS_CFG0, reg);
break;
default:
break;
}

/* Set PCS register for forced speed */
Expand Down

0 comments on commit 0ba96d3

Please sign in to comment.