aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRafał Miłecki <zajec5@gmail.com>2012-12-10 07:53:56 +0100
committerJohn W. Linville <linville@tuxdriver.com>2012-12-10 15:49:53 -0500
commitcbbc0138efe1dcd5426b8fc5d87741f5057aee72 (patch)
tree8c2c9f11b9503fcf61e927e7f2f50d0d0a6c3045
parent3edfd10b45ae4ebe8ff905f626708c49e4fdc167 (diff)
downloadkernel_goldelico_gta04-cbbc0138efe1dcd5426b8fc5d87741f5057aee72.zip
kernel_goldelico_gta04-cbbc0138efe1dcd5426b8fc5d87741f5057aee72.tar.gz
kernel_goldelico_gta04-cbbc0138efe1dcd5426b8fc5d87741f5057aee72.tar.bz2
bcma: mips: fix clearing device IRQ
We were using wrong IRQ number so clearing wasn't working at all. Depending on a platform this could result in a one device having two interrupts assigned. On BCM4706 this resulted in all IRQs being broken. Cc: Hauke Mehrtens <hauke@hauke-m.de> Cc: stable@vger.kernel.org Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Acked-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/bcma/driver_mips.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/bcma/driver_mips.c b/drivers/bcma/driver_mips.c
index c45ded8..792daad 100644
--- a/drivers/bcma/driver_mips.c
+++ b/drivers/bcma/driver_mips.c
@@ -115,7 +115,7 @@ static void bcma_core_mips_set_irq(struct bcma_device *dev, unsigned int irq)
bcma_read32(mdev, BCMA_MIPS_MIPS74K_INTMASK(0)) &
~(1 << irqflag));
else
- bcma_write32(mdev, BCMA_MIPS_MIPS74K_INTMASK(irq), 0);
+ bcma_write32(mdev, BCMA_MIPS_MIPS74K_INTMASK(oldirq), 0);
/* assign the new one */
if (irq == 0) {