feat(ipi): introduce IPI paravirtualised interface
Interprocessor Interrupts (IPIs) allow an SP to send an interrupt to
itself on another CPU. This patch starts the implementation of this
feature and enables it for the case where the SP is in the RUNNING
state on the target_vcpu.
Signed-off-by: Daniel Boulby <daniel.boulby@arm.com>
Change-Id: Idd0e1a5863730ae0f169bd0f56ac3abcd2916870
diff --git a/inc/hf/cpu.h b/inc/hf/cpu.h
index ac1f7d5..3d7a35c 100644
--- a/inc/hf/cpu.h
+++ b/inc/hf/cpu.h
@@ -31,6 +31,9 @@
/* In case there is a pending SRI for the NWd. */
bool is_sri_delayed;
+
+ /* Track pending IPIs. */
+ struct vcpu *ipi_target_vcpu;
};
void cpu_module_init(const cpu_id_t *cpu_ids, size_t count);