From 44382e303fc30f42e5f6b9ddb15a00abb06410cc Mon Sep 17 00:00:00 2001 From: Florian Pose Date: Wed, 19 Nov 2008 17:10:04 +0000 Subject: [PATCH] Fixed unprocessed interrupts in e100 driver. --- devices/e100-2.6.20-ethercat.c | 8 +++++--- devices/e100-2.6.24-ethercat.c | 8 +++++--- devices/e100-2.6.26-ethercat.c | 8 +++++--- 3 files changed, 15 insertions(+), 9 deletions(-) diff --git a/devices/e100-2.6.20-ethercat.c b/devices/e100-2.6.20-ethercat.c index 08e765cb..2bb80544 100644 --- a/devices/e100-2.6.20-ethercat.c +++ b/devices/e100-2.6.20-ethercat.c @@ -2193,9 +2193,11 @@ static int e100_up(struct nic *nic) e100_start_receiver(nic, NULL); if (!nic->ecdev) { mod_timer(&nic->watchdog, jiffies); - if((err = request_irq(nic->pdev->irq, e100_intr, IRQF_SHARED, - nic->netdev->name, nic->netdev))) - goto err_no_irq; + } + if((err = request_irq(nic->pdev->irq, e100_intr, IRQF_SHARED, + nic->netdev->name, nic->netdev))) + goto err_no_irq; + if (!nic->ecdev) { netif_wake_queue(nic->netdev); netif_poll_enable(nic->netdev); /* enable ints _after_ enabling poll, preventing a race between diff --git a/devices/e100-2.6.24-ethercat.c b/devices/e100-2.6.24-ethercat.c index e387a5f1..843e10c4 100644 --- a/devices/e100-2.6.24-ethercat.c +++ b/devices/e100-2.6.24-ethercat.c @@ -2202,9 +2202,11 @@ static int e100_up(struct nic *nic) e100_start_receiver(nic, NULL); if (!nic->ecdev) { mod_timer(&nic->watchdog, jiffies); - if((err = request_irq(nic->pdev->irq, e100_intr, IRQF_SHARED, - nic->netdev->name, nic->netdev))) - goto err_no_irq; + } + if((err = request_irq(nic->pdev->irq, e100_intr, IRQF_SHARED, + nic->netdev->name, nic->netdev))) + goto err_no_irq; + if (!nic->ecdev) { netif_wake_queue(nic->netdev); napi_enable(&nic->napi); /* enable ints _after_ enabling poll, preventing a race between diff --git a/devices/e100-2.6.26-ethercat.c b/devices/e100-2.6.26-ethercat.c index ec90a5cb..ffb2e508 100644 --- a/devices/e100-2.6.26-ethercat.c +++ b/devices/e100-2.6.26-ethercat.c @@ -2273,9 +2273,11 @@ static int e100_up(struct nic *nic) e100_start_receiver(nic, NULL); if (!nic->ecdev) { mod_timer(&nic->watchdog, jiffies); - if((err = request_irq(nic->pdev->irq, e100_intr, IRQF_SHARED, - nic->netdev->name, nic->netdev))) - goto err_no_irq; + } + if((err = request_irq(nic->pdev->irq, e100_intr, IRQF_SHARED, + nic->netdev->name, nic->netdev))) + goto err_no_irq; + if (!nic->ecdev) { netif_wake_queue(nic->netdev); napi_enable(&nic->napi); /* enable ints _after_ enabling poll, preventing a race between