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. */