summaryrefslogtreecommitdiffstats
path: root/drivers/firewire/nosy.c
diff options
context:
space:
mode:
authorStefan Richter <stefanr@s5r6.in-berlin.de>2010-07-22 11:56:38 +0200
committerStefan Richter <stefanr@s5r6.in-berlin.de>2010-07-27 11:04:10 +0200
commit165476671f731b4c3d6cf401d0e1886f4a4f4a8e (patch)
tree59bba3913c7bb3a023394bce86bb0ea79d95f1ed /drivers/firewire/nosy.c
parent55e77c06c6017a70630cf599770369b8ba07c841 (diff)
downloadlinux-165476671f731b4c3d6cf401d0e1886f4a4f4a8e.tar.gz
linux-165476671f731b4c3d6cf401d0e1886f4a4f4a8e.tar.bz2
linux-165476671f731b4c3d6cf401d0e1886f4a4f4a8e.zip
firewire: nosy: fix IRQ handler for card ejection
Untested, I don't have a PCILynx CardBus card. Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Diffstat (limited to 'drivers/firewire/nosy.c')
-rw-r--r--drivers/firewire/nosy.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/firewire/nosy.c b/drivers/firewire/nosy.c
index 57a1100f8f4e..a241b62630b2 100644
--- a/drivers/firewire/nosy.c
+++ b/drivers/firewire/nosy.c
@@ -444,6 +444,10 @@ irq_handler(int irq, void *device)
pci_int_status = reg_read(lynx, PCI_INT_STATUS);
+ if (pci_int_status == ~0)
+ /* Card was ejected. */
+ return IRQ_NONE;
+
if ((pci_int_status & PCI_INT_INT_PEND) == 0)
/* Not our interrupt, bail out quickly. */
return IRQ_NONE;