ARM: footbridge: use GENERIC_IRQ_MULTI_HANDLER
authorArnd Bergmann <arnd@arndb.de>
Mon, 29 Nov 2021 13:43:14 +0000 (14:43 +0100)
committerArd Biesheuvel <ardb@kernel.org>
Mon, 6 Dec 2021 11:48:47 +0000 (12:48 +0100)
commit90890f17ccd2aa96350abd1f4d37d4667e09027f
tree81eedd1028998839afa7984bf552e5a9f56c806c
parentc1fe8d054c0a8b0ff0406dcc0ddc6c55e1cfddbc
ARM: footbridge: use GENERIC_IRQ_MULTI_HANDLER

Footbridge still uses the classic IRQ entry path in assembler,
but this is easily converted into an equivalent C version.

In this case, the correlation between IRQ numbers and bits in
the status register is non-obvious, and the priorities are
handled by manually checking each bit in a static order,
re-reading the status register after each handled event.

I moved the code into the new file and edited the syntax without
changing this sequence to keep the behavior as close as possible
to what it traditionally did.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Tested-by: Marc Zyngier <maz@kernel.org>
Tested-by: Vladimir Murzin <vladimir.murzin@arm.com> # ARMv7M
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
arch/arm/Kconfig
arch/arm/mach-footbridge/common.c
arch/arm/mach-footbridge/include/mach/entry-macro.S [deleted file]