arm64: isr_wrapper: fixup out of bounds for large number of irqs

In case we enable a large number of IRQs, like when enabling LPIs using
interrupts > 8192, we hit an assembler error where the immediate value
is too large.

Copy the IRQ number into x1 to permit using a large IRQ number.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
This commit is contained in:
Neil Armstrong 2021-08-06 16:49:31 +02:00 committed by Christopher Friedt
commit 078113982f

View file

@ -47,7 +47,8 @@ SECTION_FUNC(TEXT, _isr_wrapper)
#endif /* !CONFIG_ARM_CUSTOM_INTERRUPT_CONTROLLER */
/* IRQ out of bounds */
cmp x0, #(CONFIG_NUM_IRQS - 1)
mov x1, #(CONFIG_NUM_IRQS - 1)
cmp x0, x1
b.hi spurious_continue
stp x0, xzr, [sp, #-16]!