From 016eb522672285e1047f13bafdfb346b564d2dda Mon Sep 17 00:00:00 2001 From: Florian Pose Date: Tue, 5 Feb 2013 13:56:29 +0100 Subject: [PATCH] Fixed repeating e1000e reset while link down, thanks to J. Kunz. --- devices/e1000e/netdev-2.6.32-ethercat.c | 3 +-- devices/e1000e/netdev-2.6.33-ethercat.c | 3 +-- devices/e1000e/netdev-2.6.34-ethercat.c | 3 +-- devices/e1000e/netdev-2.6.35-ethercat.c | 3 +-- devices/e1000e/netdev-2.6.37-ethercat.c | 3 +-- devices/e1000e/netdev-3.2-ethercat.c | 5 ++--- devices/e1000e/netdev-3.4-ethercat.c | 5 ++--- 7 files changed, 9 insertions(+), 16 deletions(-) diff --git a/devices/e1000e/netdev-2.6.32-ethercat.c b/devices/e1000e/netdev-2.6.32-ethercat.c index d0022b53..bfd8071e 100644 --- a/devices/e1000e/netdev-2.6.32-ethercat.c +++ b/devices/e1000e/netdev-2.6.32-ethercat.c @@ -3810,8 +3810,7 @@ link_up: e1000e_update_adaptive(&adapter->hw); - if ((adapter->ecdev && !ecdev_get_link(adapter->ecdev)) - || (!adapter->ecdev && !netif_carrier_ok(netdev))) { + if (!adapter->ecdev && !netif_carrier_ok(netdev)) { tx_pending = (e1000_desc_unused(tx_ring) + 1 < tx_ring->count); if (tx_pending) { diff --git a/devices/e1000e/netdev-2.6.33-ethercat.c b/devices/e1000e/netdev-2.6.33-ethercat.c index 119b0b6c..78c94677 100644 --- a/devices/e1000e/netdev-2.6.33-ethercat.c +++ b/devices/e1000e/netdev-2.6.33-ethercat.c @@ -3799,8 +3799,7 @@ link_up: e1000e_update_adaptive(&adapter->hw); - if ((adapter->ecdev && !ecdev_get_link(adapter->ecdev)) - || (!adapter->ecdev && !netif_carrier_ok(netdev))) { + if (!adapter->ecdev && !netif_carrier_ok(netdev)) { tx_pending = (e1000_desc_unused(tx_ring) + 1 < tx_ring->count); if (tx_pending) { diff --git a/devices/e1000e/netdev-2.6.34-ethercat.c b/devices/e1000e/netdev-2.6.34-ethercat.c index 140c0b46..4c8a8767 100644 --- a/devices/e1000e/netdev-2.6.34-ethercat.c +++ b/devices/e1000e/netdev-2.6.34-ethercat.c @@ -3775,8 +3775,7 @@ link_up: e1000e_update_adaptive(&adapter->hw); - if ((adapter->ecdev && !ecdev_get_link(adapter->ecdev)) - || (!adapter->ecdev && !netif_carrier_ok(netdev))) { + if (!adapter->ecdev && !netif_carrier_ok(netdev)) { tx_pending = (e1000_desc_unused(tx_ring) + 1 < tx_ring->count); if (tx_pending) { diff --git a/devices/e1000e/netdev-2.6.35-ethercat.c b/devices/e1000e/netdev-2.6.35-ethercat.c index 564603fc..4118eb26 100644 --- a/devices/e1000e/netdev-2.6.35-ethercat.c +++ b/devices/e1000e/netdev-2.6.35-ethercat.c @@ -4192,8 +4192,7 @@ link_up: e1000e_update_adaptive(&adapter->hw); - if ((adapter->ecdev && !ecdev_get_link(adapter->ecdev)) - || (!adapter->ecdev && !netif_carrier_ok(netdev))) { + if (!adapter->ecdev && !netif_carrier_ok(netdev)) { tx_pending = (e1000_desc_unused(tx_ring) + 1 < tx_ring->count); if (tx_pending) { diff --git a/devices/e1000e/netdev-2.6.37-ethercat.c b/devices/e1000e/netdev-2.6.37-ethercat.c index c8b3a954..d3a96cd3 100644 --- a/devices/e1000e/netdev-2.6.37-ethercat.c +++ b/devices/e1000e/netdev-2.6.37-ethercat.c @@ -4382,8 +4382,7 @@ link_up: e1000e_update_adaptive(&adapter->hw); - if ((adapter->ecdev && !ecdev_get_link(adapter->ecdev)) - || (!adapter->ecdev && !netif_carrier_ok(netdev))) { + if (!adapter->ecdev && !netif_carrier_ok(netdev)) { tx_pending = (e1000_desc_unused(tx_ring) + 1 < tx_ring->count); if (tx_pending) { diff --git a/devices/e1000e/netdev-3.2-ethercat.c b/devices/e1000e/netdev-3.2-ethercat.c index c5c7bf8d..86ea8660 100644 --- a/devices/e1000e/netdev-3.2-ethercat.c +++ b/devices/e1000e/netdev-3.2-ethercat.c @@ -4546,9 +4546,8 @@ link_up: e1000e_update_adaptive(&adapter->hw); - if ((adapter->ecdev && !ecdev_get_link(adapter->ecdev)) - || (!adapter->ecdev && (!netif_carrier_ok(netdev) && - (e1000_desc_unused(tx_ring) + 1 < tx_ring->count)))) { + if (!adapter->ecdev && !netif_carrier_ok(netdev) && + (e1000_desc_unused(tx_ring) + 1 < tx_ring->count)) { /* * We've lost link, so the controller stops DMA, * but we've got queued Tx work that's never going diff --git a/devices/e1000e/netdev-3.4-ethercat.c b/devices/e1000e/netdev-3.4-ethercat.c index c61b78fa..9e00880c 100644 --- a/devices/e1000e/netdev-3.4-ethercat.c +++ b/devices/e1000e/netdev-3.4-ethercat.c @@ -4681,9 +4681,8 @@ link_up: e1000e_update_adaptive(&adapter->hw); - if ((adapter->ecdev && !ecdev_get_link(adapter->ecdev)) - || (!adapter->ecdev && (!netif_carrier_ok(netdev) && - (e1000_desc_unused(tx_ring) + 1 < tx_ring->count)))) { + if (!adapter->ecdev && !netif_carrier_ok(netdev) && + (e1000_desc_unused(tx_ring) + 1 < tx_ring->count)) { /* * We've lost link, so the controller stops DMA, * but we've got queued Tx work that's never going