]> git.openfabrics.org - ~emulex/infiniband.git/commitdiff
e1000e: remove RXSEQ link monitoring for serdes
authordave graham <david.graham@intel.com>
Tue, 10 Feb 2009 12:52:05 +0000 (12:52 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 11 Feb 2009 01:00:28 +0000 (17:00 -0800)
RXSEQ interrupts were used to force link state interrogation of serdes
links, as the Si was not guaranteed to report LSC interrupts when the
link changed state. On some bladeservers this resulted in false link up
reports if no link partner was connected. The RXSEQ treatment is
not necessary, as the link can be monitored from the watchdog timer, and
the false link indications cease.

Signed-off-by: dave graham <david.graham@intel.com>
Acked-by: Bruce Allan <bruce.w.allan@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/e1000e/netdev.c

index 00e19e93bb93b3323a20475476e0d00fae925c26..04e007dcf47473f89e4b56f47b4c85a4e29b95ed 100644 (file)
@@ -1153,7 +1153,7 @@ static irqreturn_t e1000_intr_msi(int irq, void *data)
         * read ICR disables interrupts using IAM
         */
 
-       if (icr & (E1000_ICR_RXSEQ | E1000_ICR_LSC)) {
+       if (icr & E1000_ICR_LSC) {
                hw->mac.get_link_status = 1;
                /*
                 * ICH8 workaround-- Call gig speed drop workaround on cable
@@ -1219,7 +1219,7 @@ static irqreturn_t e1000_intr(int irq, void *data)
         * IMC write
         */
 
-       if (icr & (E1000_ICR_RXSEQ | E1000_ICR_LSC)) {
+       if (icr & E1000_ICR_LSC) {
                hw->mac.get_link_status = 1;
                /*
                 * ICH8 workaround-- Call gig speed drop workaround on cable