feat: partition runtime models initial support
This patch adds initial support for specifying runtime model of
a partition. FF-A v1.1 EAC0 spec specifies four runtime models:
1. Runtime model for FFA_RUN
2. Runtime model for FFA_MSG_SEND_DIRECT_REQUEST
3. Runtime model for Secure Interrupt handling
4. Runtime model for SP Initialization
Change-Id: I9361e8217bb92c0f80338663b2edbce8e968a54e
Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>
diff --git a/inc/hf/vcpu.h b/inc/hf/vcpu.h
index c960793..28938e1 100644
--- a/inc/hf/vcpu.h
+++ b/inc/hf/vcpu.h
@@ -40,6 +40,19 @@
VCPU_STATE_ABORTED,
};
+/** Refer to section 7 of the FF-A v1.1 EAC0 spec. */
+enum partition_runtime_model {
+ RTM_NONE,
+ /** Runtime model for FFA_RUN. */
+ RTM_FFA_RUN,
+ /** Runtime model for FFA_MSG_SEND_DIRECT_REQUEST. */
+ RTM_FFA_DIR_REQ,
+ /** Runtime model for Secure Interrupt handling. */
+ RTM_SEC_INTERRUPT,
+ /** Runtime model for SP Initialization. */
+ RTM_SP_INIT,
+};
+
struct interrupts {
/** Bitfield keeping track of which interrupts are enabled. */
struct interrupt_bitmap interrupt_enabled;
@@ -137,6 +150,9 @@
* mechanism and perform appropriate bookkeeping.
*/
bool implicit_completion_signal;
+
+ /** Partition Runtime Model. */
+ enum partition_runtime_model rt_model;
};
/** Encapsulates a vCPU whose lock is held. */