For GICv4, interrupt table entries read by process_its_cmd() may
indicate virtual LPIs which are to be directly injected into a VM.
Implement the ITS side of the code for handling this. This is
similar to the existing handling of physical LPIs, but instead of
looking up a collection ID in a collection table, we look up a vPEID
in a vPE table. As with the physical LPIs, we leave the rest of the
work to code in the redistributor device.
The redistributor half will be implemented in a later commit;
for now we just provide a stub function which does nothing.
Signed-off-by: Peter Maydell<peter.maydell@linaro.org>
---
hw/intc/gicv3_internal.h | 17 +++++++
hw/intc/arm_gicv3_its.c | 99 +++++++++++++++++++++++++++++++++++++-
hw/intc/arm_gicv3_redist.c | 9 ++++
hw/intc/trace-events | 2 +
4 files changed, 125 insertions(+), 2 deletions(-)