feat(include/runtime_services): update RMI and RSI definitions
This patch:
- updates fields definitions of RmiFeatureRegister0 type,
- adds 'RSI_IO' definition to 'rsi_ripas_type' enumeration,
- adds 'algorithm' and 'rpv' members to 'rsi_realm_config'
structure
according to the RMM Specification 1.0-rel0-rc1.
Change-Id: Ic1f25b0e3ddbc93a4fceb88f9db4d808b54cc628
Signed-off-by: AlexeiFedorov <Alexei.Fedorov@arm.com>
diff --git a/realm/include/realm_rsi.h b/realm/include/realm_rsi.h
index 8436db9..6a4de5e 100644
--- a/realm/include/realm_rsi.h
+++ b/realm/include/realm_rsi.h
@@ -64,9 +64,16 @@
RSI_ERROR_COUNT
} rsi_status_t;
+/* Size of Realm Personalization Value */
+#define RSI_RPV_SIZE 64U
+
struct rsi_realm_config {
/* IPA width in bits */
- SET_MEMBER(unsigned long ipa_width, 0, 0x1000); /* Offset 0 */
+ SET_MEMBER(unsigned long ipa_width, 0, 8); /* Offset 0 */
+ /* Hash algorithm */
+ SET_MEMBER(unsigned long algorithm, 8, 0x200); /* Offset 8 */
+ /* Realm Personalization Value */
+ SET_MEMBER(unsigned char rpv[RSI_RPV_SIZE], 0x200, 0x1000); /* Offset 0x200 */
};
/*
@@ -106,7 +113,8 @@
typedef enum {
RSI_EMPTY = 0U,
RSI_RAM,
- RSI_DESTROYED
+ RSI_DESTROYED,
+ RSI_DEV
} rsi_ripas_type;
typedef enum {