SPM: Add a tracking table for stateless service
This patch adds a tracking table for static services, which stores
handle values and service structure pointers. Also add runtime
initialization of the tracking table.
Change-Id: I614c6a638245ed58cddbeee6290cfc05bc54fa0d
Signed-off-by: Mingyang Sun <mingyang.sun@arm.com>
diff --git a/secure_fw/spm/cmsis_psa/spm_ipc.h b/secure_fw/spm/cmsis_psa/spm_ipc.h
index 188420e..6aa0842 100644
--- a/secure_fw/spm/cmsis_psa/spm_ipc.h
+++ b/secure_fw/spm/cmsis_psa/spm_ipc.h
@@ -139,6 +139,12 @@
struct bi_list_node_t list; /* For list operation */
};
+/* Stateless RoT service tracking array item type. Indexed by static handle */
+struct stateless_service_tracking_t {
+ uint32_t sid; /* Service ID */
+ struct tfm_spm_service_t *p_service; /* Service instance */
+};
+
/* RoT connection handle list */
struct tfm_conn_handle_t {
void *rhandle; /* Reverse handle value */