ARM: GIC: Allow tweaking the active and pending state of an IRQ
authorAndre Przywara <andre.przywara@linaro.org>
Fri, 26 Jan 2018 16:09:44 +0000 (16:09 +0000)
committerStefano Stabellini <sstabellini@kernel.org>
Mon, 26 Mar 2018 20:31:06 +0000 (13:31 -0700)
commitba4044c10de9d2c2a4afee7bf490f483271182f2
treec9095b986cee60efc4afa967927fe12c807eb79d
parentdb8b980c4d7edd5a498659bb87b9965a60d79867
ARM: GIC: Allow tweaking the active and pending state of an IRQ

When playing around with hardware mapped, level triggered virtual IRQs,
there is the need to explicitly set the active or pending state of an
interrupt at some point.
To prepare the GIC for that, we introduce a set_active_state() and a
set_pending_state() function to let the VGIC manipulate the state of
an associated hardware IRQ.
This takes care of properly setting the _IRQ_INPROGRESS bit.

Signed-off-by: Andre Przywara <andre.przywara@linaro.org>
Reviewed-by: Julien Grall <julien.grall@arm.com>
xen/arch/arm/gic-v2.c
xen/arch/arm/gic-v3.c
xen/include/asm-arm/gic.h