]> git.baikalelectronics.ru Git - kernel.git/commit
e1000e: Correct link check logic for 82571 serdes
authorTushar Dave <tushar.n.dave@intel.com>
Thu, 12 Jul 2012 08:56:56 +0000 (08:56 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Sat, 14 Jul 2012 07:43:27 +0000 (00:43 -0700)
commit8281dd4e6edb6896a73e77ec5098ad73a5f676c9
tree6211ea45128d665f9489cada230fec0ef62da221
parent207f62aa658db8a41f588a160c8cabaff6fbd5f6
e1000e: Correct link check logic for 82571 serdes

SYNCH bit and IV bit of RXCW register are sticky. Before examining these bits,
RXCW should be read twice to filter out one-time false events and have correct
values for these bits. Incorrect values of these bits in link check logic can
cause weird link stability issues if auto-negotiation fails.

CC: stable <stable@vger.kernel.org> [2.6.38+]
Reported-by: Dean Nelson <dnelson@redhat.com>
Signed-off-by: Tushar Dave <tushar.n.dave@intel.com>
Reviewed-by: Bruce Allan <bruce.w.allan@intel.com>
Tested-by: Jeff Pieper <jeffrey.e.pieper@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/e1000e/82571.c