hw/intc/arm_gicv3_its: Split out process_its_cmd() physical interrupt code
commit2d692e2b314e212664e9ce72787ce0ecea615c61
authorPeter Maydell <peter.maydell@linaro.org>
Fri, 8 Apr 2022 14:15:22 +0000 (8 15:15 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Fri, 22 Apr 2022 08:24:44 +0000 (22 09:24 +0100)
tree6ded84c80fd66ee6623d51bef22fc95f2bcdade0
parentc411db7bf75d0a2ecd7249533c74babf2af51afe
hw/intc/arm_gicv3_its: Split out process_its_cmd() physical interrupt code

Split the part of process_its_cmd() which is specific to physical
interrupts into its own function.  This is the part which starts by
taking the ICID and looking it up in the collection table.  The
handling of virtual interrupts is significantly different (involving
a lookup in the vPE table) so structuring the code with one
sub-function for the physical interrupt case and one for the virtual
interrupt case will be clearer than putting both cases in one large
function.

The code for handling the "remove mapping from ITE" for the DISCARD
command remains in process_its_cmd() because it is common to both
virtual and physical interrupts.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20220408141550.1271295-14-peter.maydell@linaro.org
hw/intc/arm_gicv3_its.c