android_kernel_xiaomi_sm8350/arch/arm
Marc Zyngier a9ff8f6462 [ARM] 5308/1: Fix Viper ISA IRQ handling
The ISA IRQ renumbering broke the Viper ISA code in interesting ways.
It originally assumed that ISA interrupt were numbered in the order that
is defined by the CPLD registers. Unfortunately, this is no longer the
case.

Furthermore, the viper_irq_handler() function being a chained IRQ
handler, it must ACK the interrupt by itself, or the handler will be
immediately reentered, with the expected damages.

This fix was made possible thanks to the help of David Raeman, who
provided debug information and tested each version of this patch.

Tested-by: David Raeman <david.raeman@gmail.com>

Signed-off-by: Marc Zyngier <maz@misterjones.org>
Acked-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-10-15 13:01:36 +01:00
..
boot [ARM] 5229/3: Replace some ARMv7 opcodes with the instruction name 2008-10-03 11:32:09 +01:00
common Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
configs Merge branch 'for-rmk' of git://git.marvell.com/orion 2008-10-09 21:33:07 +01:00
include/asm Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2008-10-13 17:13:56 +01:00
kernel Merge branch 'proc' of git://git.kernel.org/pub/scm/linux/kernel/git/adobriyan/proc 2008-10-13 10:04:04 -07:00
lib Merge branch 'ptebits' into devel 2008-10-09 21:31:56 +01:00
mach-aaec2000
mach-at91 Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
mach-clps711x
mach-clps7500
mach-davinci Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2008-10-11 10:09:45 -07:00
mach-ebsa110
mach-ep93xx Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
mach-footbridge Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
mach-h720x Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
mach-imx Merge branch 'for-rmk' of git://pasiphae.extern.pengutronix.de/git/imx/linux-2.6.git 2008-10-09 21:33:03 +01:00
mach-integrator Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
mach-iop13xx Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
mach-iop32x
mach-iop33x
mach-ixp4xx
mach-ixp23xx Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
mach-ixp2000 Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
mach-kirkwood Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2008-10-11 10:09:45 -07:00
mach-ks8695 Merge branches 'machtypes', 'core', 'ep93xx', 'ks8695', 'netdev' and 'sa1100' into devel 2008-10-09 21:31:54 +01:00
mach-l7200
mach-lh7a40x Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
mach-loki Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2008-10-11 10:09:45 -07:00
mach-msm
mach-mv78xx0 Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2008-10-11 10:09:45 -07:00
mach-mx2
mach-mx3 Merge branch 'for-rmk' of git://source.mvista.com/git/linux-davinci-2.6.git 2008-10-09 21:33:05 +01:00
mach-netx Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
mach-ns9xxx Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
mach-omap1 Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
mach-omap2 Merge branch 'ptebits' into devel 2008-10-09 21:31:56 +01:00
mach-orion5x Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog 2008-10-12 11:51:32 -07:00
mach-pnx4008
mach-pxa [ARM] 5308/1: Fix Viper ISA IRQ handling 2008-10-15 13:01:36 +01:00
mach-realview
mach-rpc
mach-s3c2400
mach-s3c2410 Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
mach-s3c2412 Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
mach-s3c2440 Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
mach-s3c2442
mach-s3c2443 Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
mach-sa1100 Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2008-10-11 10:09:45 -07:00
mach-shark
mach-versatile Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2008-10-11 10:09:45 -07:00
mm Merge branch 'for-rmk' of git://git.marvell.com/orion 2008-10-09 21:33:07 +01:00
nwfpe
oprofile
plat-iop
plat-mxc Merge branch 'for-rmk' of git://pasiphae.extern.pengutronix.de/git/imx/linux-2.6.git 2008-10-09 21:33:03 +01:00
plat-omap Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog 2008-10-12 11:51:32 -07:00
plat-orion
plat-s3c
plat-s3c24xx Merge branch 'pxa-all' into devel 2008-10-09 21:33:02 +01:00
tools
vfp
Kconfig Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2008-10-13 17:13:56 +01:00
Kconfig-nommu
Kconfig.debug
Makefile