diff options
author | Mark Rutland <[email protected]> | 2021-10-19 18:17:17 +0100 |
---|---|---|
committer | Mark Rutland <[email protected]> | 2021-10-25 10:05:31 +0100 |
commit | a7b0872e964cf306fe26d9d49585a90486e32fdf (patch) | |
tree | 4e54d8590442543dae9c040900d8a9c9ad579055 /net/lapb/lapb_timer.c | |
parent | 2fe35f8ee726466f0898ba60c5868c6f9a1ac566 (diff) |
irq: arm: perform irqentry in entry code
In preparation for removing HANDLE_DOMAIN_IRQ_IRQENTRY, have arch/arm
perform all the irqentry accounting in its entry code.
For configurations with CONFIG_GENERIC_IRQ_MULTI_HANDLER, we can use
generic_handle_arch_irq(). Other than asm_do_IRQ(), all C calls to
handle_IRQ() are from irqchip handlers which will be called from
generic_handle_arch_irq(), so to avoid double accounting IRQ entry, the
entry logic is moved from handle_IRQ() into asm_do_IRQ().
For ARMv7M the entry assembly is tightly coupled with the NVIC irqchip, and
while the entry code should logically live under arch/arm/, moving the
entry logic there makes things more convoluted. So for now, place the
entry logic in the NVIC irqchip, but separated into a separate
function to make the split of responsibility clear.
For all other configurations without CONFIG_GENERIC_IRQ_MULTI_HANDLER,
IRQ entry is already handled in arch code, and requires no changes.
There should be no functional change as a result of this patch.
Signed-off-by: Mark Rutland <[email protected]>
Reviewed-by: Marc Zyngier <[email protected]>
Tested-by: Vladimir Murzin <[email protected]> # ARMv7M
Cc: Russell King <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Diffstat (limited to 'net/lapb/lapb_timer.c')
0 files changed, 0 insertions, 0 deletions