diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-10-30 15:52:53 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-10-30 15:52:53 -0400 |
| commit | c732acd96085347027b11961463a243c568d9aab (patch) | |
| tree | 5ce568eb6a31a39dfa5c5af4e10e6270383a07a2 /drivers/bluetooth | |
| parent | 1b2d3d94ec878c3529153061cd8cceb876e01a3e (diff) | |
| parent | 5cb02ff3489d710c73b4a21bb804feedeacce116 (diff) | |
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')
| -rw-r--r-- | drivers/bluetooth/bluecard_cs.c | 2 | ||||
| -rw-r--r-- | drivers/bluetooth/bt3c_cs.c | 6 | ||||
| -rw-r--r-- | drivers/bluetooth/btuart_cs.c | 6 | ||||
| -rw-r--r-- | drivers/bluetooth/dtl1_cs.c | 7 |
4 files changed, 14 insertions, 7 deletions
diff --git a/drivers/bluetooth/bluecard_cs.c b/drivers/bluetooth/bluecard_cs.c index e6ee21d99d92..b0e569ba730d 100644 --- a/drivers/bluetooth/bluecard_cs.c +++ b/drivers/bluetooth/bluecard_cs.c | |||
| @@ -867,7 +867,7 @@ static int bluecard_probe(struct pcmcia_device *link) | |||
| 867 | 867 | ||
| 868 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_8; | 868 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_8; |
| 869 | link->io.NumPorts1 = 8; | 869 | link->io.NumPorts1 = 8; |
| 870 | link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT; | 870 | link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING | IRQ_HANDLE_PRESENT; |
| 871 | link->irq.IRQInfo1 = IRQ_LEVEL_ID; | 871 | link->irq.IRQInfo1 = IRQ_LEVEL_ID; |
| 872 | 872 | ||
| 873 | link->irq.Handler = bluecard_interrupt; | 873 | link->irq.Handler = bluecard_interrupt; |
diff --git a/drivers/bluetooth/bt3c_cs.c b/drivers/bluetooth/bt3c_cs.c index 2cbe70b66470..b3e4d07a4ac2 100644 --- a/drivers/bluetooth/bt3c_cs.c +++ b/drivers/bluetooth/bt3c_cs.c | |||
| @@ -343,6 +343,7 @@ static irqreturn_t bt3c_interrupt(int irq, void *dev_inst) | |||
| 343 | bt3c_info_t *info = dev_inst; | 343 | bt3c_info_t *info = dev_inst; |
| 344 | unsigned int iobase; | 344 | unsigned int iobase; |
| 345 | int iir; | 345 | int iir; |
| 346 | irqreturn_t r = IRQ_NONE; | ||
| 346 | 347 | ||
| 347 | BUG_ON(!info->hdev); | 348 | BUG_ON(!info->hdev); |
| 348 | 349 | ||
| @@ -374,11 +375,12 @@ static irqreturn_t bt3c_interrupt(int irq, void *dev_inst) | |||
| 374 | 375 | ||
| 375 | outb(iir, iobase + CONTROL); | 376 | outb(iir, iobase + CONTROL); |
| 376 | } | 377 | } |
| 378 | r = IRQ_HANDLED; | ||
| 377 | } | 379 | } |
| 378 | 380 | ||
| 379 | spin_unlock(&(info->lock)); | 381 | spin_unlock(&(info->lock)); |
| 380 | 382 | ||
| 381 | return IRQ_HANDLED; | 383 | return r; |
| 382 | } | 384 | } |
| 383 | 385 | ||
| 384 | 386 | ||
| @@ -657,7 +659,7 @@ static int bt3c_probe(struct pcmcia_device *link) | |||
| 657 | 659 | ||
| 658 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_8; | 660 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_8; |
| 659 | link->io.NumPorts1 = 8; | 661 | link->io.NumPorts1 = 8; |
| 660 | link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT; | 662 | link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING | IRQ_HANDLE_PRESENT; |
| 661 | link->irq.IRQInfo1 = IRQ_LEVEL_ID; | 663 | link->irq.IRQInfo1 = IRQ_LEVEL_ID; |
| 662 | 664 | ||
| 663 | link->irq.Handler = bt3c_interrupt; | 665 | link->irq.Handler = bt3c_interrupt; |
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) | |||
| 293 | unsigned int iobase; | 293 | unsigned int iobase; |
| 294 | int boguscount = 0; | 294 | int boguscount = 0; |
| 295 | int iir, lsr; | 295 | int iir, lsr; |
| 296 | irqreturn_t r = IRQ_NONE; | ||
| 296 | 297 | ||
| 297 | BUG_ON(!info->hdev); | 298 | BUG_ON(!info->hdev); |
| 298 | 299 | ||
| @@ -302,6 +303,7 @@ static irqreturn_t btuart_interrupt(int irq, void *dev_inst) | |||
| 302 | 303 | ||
| 303 | iir = inb(iobase + UART_IIR) & UART_IIR_ID; | 304 | iir = inb(iobase + UART_IIR) & UART_IIR_ID; |
| 304 | while (iir) { | 305 | while (iir) { |
| 306 | r = IRQ_HANDLED; | ||
| 305 | 307 | ||
| 306 | /* Clear interrupt */ | 308 | /* Clear interrupt */ |
| 307 | lsr = inb(iobase + UART_LSR); | 309 | lsr = inb(iobase + UART_LSR); |
| @@ -335,7 +337,7 @@ static irqreturn_t btuart_interrupt(int irq, void *dev_inst) | |||
| 335 | 337 | ||
| 336 | spin_unlock(&(info->lock)); | 338 | spin_unlock(&(info->lock)); |
| 337 | 339 | ||
| 338 | return IRQ_HANDLED; | 340 | return r; |
| 339 | } | 341 | } |
| 340 | 342 | ||
| 341 | 343 | ||
| @@ -586,7 +588,7 @@ static int btuart_probe(struct pcmcia_device *link) | |||
| 586 | 588 | ||
| 587 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_8; | 589 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_8; |
| 588 | link->io.NumPorts1 = 8; | 590 | link->io.NumPorts1 = 8; |
| 589 | link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT; | 591 | link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING | IRQ_HANDLE_PRESENT; |
| 590 | link->irq.IRQInfo1 = IRQ_LEVEL_ID; | 592 | link->irq.IRQInfo1 = IRQ_LEVEL_ID; |
| 591 | 593 | ||
| 592 | link->irq.Handler = btuart_interrupt; | 594 | link->irq.Handler = btuart_interrupt; |
diff --git a/drivers/bluetooth/dtl1_cs.c b/drivers/bluetooth/dtl1_cs.c index e6e6b037695a..901bdd95655f 100644 --- a/drivers/bluetooth/dtl1_cs.c +++ b/drivers/bluetooth/dtl1_cs.c | |||
| @@ -297,6 +297,7 @@ static irqreturn_t dtl1_interrupt(int irq, void *dev_inst) | |||
| 297 | unsigned char msr; | 297 | unsigned char msr; |
| 298 | int boguscount = 0; | 298 | int boguscount = 0; |
| 299 | int iir, lsr; | 299 | int iir, lsr; |
| 300 | irqreturn_t r = IRQ_NONE; | ||
| 300 | 301 | ||
| 301 | BUG_ON(!info->hdev); | 302 | BUG_ON(!info->hdev); |
| 302 | 303 | ||
| @@ -307,6 +308,7 @@ static irqreturn_t dtl1_interrupt(int irq, void *dev_inst) | |||
| 307 | iir = inb(iobase + UART_IIR) & UART_IIR_ID; | 308 | iir = inb(iobase + UART_IIR) & UART_IIR_ID; |
| 308 | while (iir) { | 309 | while (iir) { |
| 309 | 310 | ||
| 311 | r = IRQ_HANDLED; | ||
| 310 | /* Clear interrupt */ | 312 | /* Clear interrupt */ |
| 311 | lsr = inb(iobase + UART_LSR); | 313 | lsr = inb(iobase + UART_LSR); |
| 312 | 314 | ||
| @@ -343,11 +345,12 @@ static irqreturn_t dtl1_interrupt(int irq, void *dev_inst) | |||
| 343 | info->ri_latch = msr & UART_MSR_RI; | 345 | info->ri_latch = msr & UART_MSR_RI; |
| 344 | clear_bit(XMIT_WAITING, &(info->tx_state)); | 346 | clear_bit(XMIT_WAITING, &(info->tx_state)); |
| 345 | dtl1_write_wakeup(info); | 347 | dtl1_write_wakeup(info); |
| 348 | r = IRQ_HANDLED; | ||
| 346 | } | 349 | } |
| 347 | 350 | ||
| 348 | spin_unlock(&(info->lock)); | 351 | spin_unlock(&(info->lock)); |
| 349 | 352 | ||
| 350 | return IRQ_HANDLED; | 353 | return r; |
| 351 | } | 354 | } |
| 352 | 355 | ||
| 353 | 356 | ||
| @@ -568,7 +571,7 @@ static int dtl1_probe(struct pcmcia_device *link) | |||
| 568 | 571 | ||
| 569 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_8; | 572 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_8; |
| 570 | link->io.NumPorts1 = 8; | 573 | link->io.NumPorts1 = 8; |
| 571 | link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT; | 574 | link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING | IRQ_HANDLE_PRESENT; |
| 572 | link->irq.IRQInfo1 = IRQ_LEVEL_ID; | 575 | link->irq.IRQInfo1 = IRQ_LEVEL_ID; |
| 573 | 576 | ||
| 574 | link->irq.Handler = dtl1_interrupt; | 577 | link->irq.Handler = dtl1_interrupt; |
