diff options
author | Vincent Bossier <vincent.bossier@gmail.com> | 2011-06-02 10:30:02 (GMT) |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-06-28 21:06:12 (GMT) |
commit | 56fc508186dbec9aca46cd034ef12358fc044ac1 (patch) | |
tree | 8ed87c15ba3f4b8ce1447d363c284c34785a1116 | |
parent | 584721cab2bdd26f63bfeca60c83f5e6b8eee7d0 (diff) | |
download | linux-56fc508186dbec9aca46cd034ef12358fc044ac1.tar.xz |
Staging: VME: Fix Universe II int ack logic.
The driver must acknowledge the interrupts that have been actually serviced, not
the ones active. The current code could acknowledge an interrupt that has not
been serviced at all.
Signed-off-by: Vincent Bossier <vincent.bossier@gmail.com>
Acked-by: Martyn Welch <martyn.welch@ge.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | drivers/staging/vme/bridges/vme_ca91cx42.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/staging/vme/bridges/vme_ca91cx42.c b/drivers/staging/vme/bridges/vme_ca91cx42.c index 1c94ae6..6aad34b 100644 --- a/drivers/staging/vme/bridges/vme_ca91cx42.c +++ b/drivers/staging/vme/bridges/vme_ca91cx42.c @@ -190,7 +190,7 @@ static irqreturn_t ca91cx42_irqhandler(int irq, void *ptr) serviced |= ca91cx42_VIRQ_irqhandler(ca91cx42_bridge, stat); /* Clear serviced interrupts */ - iowrite32(stat, bridge->base + LINT_STAT); + iowrite32(serviced, bridge->base + LINT_STAT); return IRQ_HANDLED; } |