]> git.baikalelectronics.ru Git - kernel.git/commit
e1000e: Spurious interrupts & dropped packets with 82577/8/9 in half-duplex
authorBruce Allan <bruce.w.allan@intel.com>
Fri, 22 Jul 2011 06:21:56 +0000 (06:21 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Sat, 13 Aug 2011 09:11:48 +0000 (02:11 -0700)
commit435014f74d89892a2859f72db475227d789cc4e3
tree4a33de343896b90fe4312aaa86552ee2db9f4dec
parent9d70058597260d8cff08084a0d20614551db2b5b
e1000e: Spurious interrupts & dropped packets with 82577/8/9 in half-duplex

On 82577/8/9 in half-duplex when a received packet is passed from the PHY
to the MAC, if too many preamble octects are stripped from the packet
before arriving at the MAC, it can be misintrepeted as an in-band message
rather than an actual frame.  For example, if the frame contents resembled
an interrupt request in-band message, it would trigger a false interrupt.
In most cases, the packet is just dropped.

By reducing the number of preamble octets stripped from the beginning of
the frame when passing it from the PHY to the MAC, the MAC will interpret
the frame properly.

An additional uses of the magic PHY_REG(770, 16) have been updated with a
define introduced with this patch.

Signed-off-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/e1000e/ich8lan.c