OSDN Git Service

RISC-V: Move to the new GENERIC_IRQ_MULTI_HANDLER handler
authorPalmer Dabbelt <palmer@sifive.com>
Wed, 7 Mar 2018 23:57:28 +0000 (15:57 -0800)
committerThomas Gleixner <tglx@linutronix.de>
Wed, 14 Mar 2018 20:46:29 +0000 (21:46 +0100)
commitcc6c98485f8e61fb3d6c51821fc75384e5a3a9c3
treee3cb0f7eadebc546f65b7eebde84d48b7c7b77d6
parentcaacdbf4aa567ab5e8de1a4070195c5d3e8f1340
RISC-V: Move to the new GENERIC_IRQ_MULTI_HANDLER handler

The existing mechanism for handling IRQs on RISC-V is pretty ugly: the irq
entry code selects the handler via Kconfig dependencies.

Use the new generic IRQ handling infastructure, which allows boot time
registration of the low level entry handler.

This does add an additional load to the interrupt latency, but there's a
lot of tuning left to be done there on RISC-V so it's OK for now.

Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Acked-by: Stafford Horne <shorne@gmail.com>
Cc: jonas@southpole.se
Cc: catalin.marinas@arm.com
Cc: Will Deacon <will.deacon@arm.com>
Cc: linux@armlinux.org.uk
Cc: stefan.kristiansson@saunalahti.fi
Cc: openrisc@lists.librecores.org
Cc: linux-riscv@lists.infradead.org
Cc: linux-arm-kernel@lists.infradead.org
Link: https://lkml.kernel.org/r/20180307235731.22627-3-palmer@sifive.com
arch/riscv/Kconfig
arch/riscv/include/asm/Kbuild
arch/riscv/kernel/entry.S
arch/riscv/kernel/irq.c