aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/bluetooth/btuart_cs.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2008-10-30 12:52:53 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2008-10-30 12:52:53 -0700
commitc732acd96085347027b11961463a243c568d9aab (patch)
tree5ce568eb6a31a39dfa5c5af4e10e6270383a07a2 /drivers/bluetooth/btuart_cs.c
parentMerge branch 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6 (diff)
parentfdomain_cs: Sort out modules with duplicate description (diff)
downloadlinux-dev-c732acd96085347027b11961463a243c568d9aab.tar.xz
linux-dev-c732acd96085347027b11961463a243c568d9aab.zip
Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6: fdomain_cs: Sort out modules with duplicate description pcmcia: Whine harder about use of EXCLUSIVE pcmcia: IRQ_TYPE_EXCLUSIVE is long obsoleted
Diffstat (limited to 'drivers/bluetooth/btuart_cs.c')
-rw-r--r--drivers/bluetooth/btuart_cs.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/bluetooth/btuart_cs.c b/drivers/bluetooth/btuart_cs.c
index 8e556b7ff9f6..efd689a062eb 100644
--- a/drivers/bluetooth/btuart_cs.c
+++ b/drivers/bluetooth/btuart_cs.c
@@ -293,6 +293,7 @@ static irqreturn_t btuart_interrupt(int irq, void *dev_inst)
unsigned int iobase;
int boguscount = 0;
int iir, lsr;
+ irqreturn_t r = IRQ_NONE;
BUG_ON(!info->hdev);
@@ -302,6 +303,7 @@ static irqreturn_t btuart_interrupt(int irq, void *dev_inst)
iir = inb(iobase + UART_IIR) & UART_IIR_ID;
while (iir) {
+ r = IRQ_HANDLED;
/* Clear interrupt */
lsr = inb(iobase + UART_LSR);
@@ -335,7 +337,7 @@ static irqreturn_t btuart_interrupt(int irq, void *dev_inst)
spin_unlock(&(info->lock));
- return IRQ_HANDLED;
+ return r;
}
@@ -586,7 +588,7 @@ static int btuart_probe(struct pcmcia_device *link)
link->io.Attributes1 = IO_DATA_PATH_WIDTH_8;
link->io.NumPorts1 = 8;
- link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;
+ link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING | IRQ_HANDLE_PRESENT;
link->irq.IRQInfo1 = IRQ_LEVEL_ID;
link->irq.Handler = btuart_interrupt;