summaryrefslogtreecommitdiff
path: root/drivers/usb/gadget/net2280.c
diff options
context:
space:
mode:
authorAlan Stern <stern@rowland.harvard.edu>2006-04-15 00:44:11 +0400
committerGreg Kroah-Hartman <gregkh@suse.de>2006-04-27 21:28:58 +0400
commit658ad5e001a17be5fadaa8d57d1aa7f7c62628c1 (patch)
treee592a1b9fc5d87a3912ada621b76a4897804cd74 /drivers/usb/gadget/net2280.c
parent317e83b842ba39776054219ae29844127876416a (diff)
downloadlinux-658ad5e001a17be5fadaa8d57d1aa7f7c62628c1.tar.xz
[PATCH] USB: net2280: check for shared IRQs
This patch (as670) adds a check for whether a shared IRQ was actually generated by the net2280 device. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/gadget/net2280.c')
-rw-r--r--drivers/usb/gadget/net2280.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/usb/gadget/net2280.c b/drivers/usb/gadget/net2280.c
index c842b194cf0f..b2d507f16b85 100644
--- a/drivers/usb/gadget/net2280.c
+++ b/drivers/usb/gadget/net2280.c
@@ -2742,6 +2742,10 @@ static irqreturn_t net2280_irq (int irq, void *_dev, struct pt_regs * r)
{
struct net2280 *dev = _dev;
+ /* shared interrupt, not ours */
+ if (!(readl(&dev->regs->irqstat0) & (1 << INTA_ASSERTED)))
+ return IRQ_NONE;
+
spin_lock (&dev->lock);
/* handle disconnect, dma, and more */