Browse Source

Merge tag 'davinci-v3.6-fixes' of git://gitorious.org/linux-davinci/linux-davinci into next/fixes-non-critical

DaVinci fixes for v3.6

Fix an interrupt handling issue with cp_intc which
was causing occasional spurious interrupts with DA850 EVM

* tag 'davinci-v3.6-fixes' of git://gitorious.org/linux-davinci/linux-davinci:
  ARM: davinci: da8xx: fix interrupt handling
Arnd Bergmann 13 years ago
parent
commit
c26abeb7b5
1 changed files with 3 additions and 5 deletions
  1. 3 5
      arch/arm/mach-davinci/include/mach/entry-macro.S

+ 3 - 5
arch/arm/mach-davinci/include/mach/entry-macro.S

@@ -30,12 +30,10 @@
 #endif
 #if defined(CONFIG_CP_INTC)
 1001:		ldr \irqnr, [\base, #0x80] /* get irq number */
+		mov \tmp, \irqnr, lsr #31
 		and \irqnr, \irqnr, #0xff  /* irq is in bits 0-9 */
-		mov \tmp, \irqnr, lsr #3
-		and \tmp, \tmp, #0xfc
-		add \tmp, \tmp, #0x280 /* get the register offset */
-		ldr \irqstat, [\base, \tmp] /* get the intc status */
-		cmp \irqstat, #0x0
+		and \tmp, \tmp, #0x1
+		cmp \tmp, #0x1
 #endif
 1002:
 		.endm