summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/sbi_utils/mailbox/rpmi_msgprot.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/include/sbi_utils/mailbox/rpmi_msgprot.h b/include/sbi_utils/mailbox/rpmi_msgprot.h
index f8b16753..c35788f0 100644
--- a/include/sbi_utils/mailbox/rpmi_msgprot.h
+++ b/include/sbi_utils/mailbox/rpmi_msgprot.h
@@ -220,6 +220,7 @@ enum rpmi_servicegroup_id {
RPMI_SRVGRP_CLOCK = 0x0008,
RPMI_SRVGRP_DEVICE_POWER = 0x0009,
RPMI_SRVGRP_PERFORMANCE = 0x0000A,
+ RPMI_SRVGRP_MANAGEMENT_MODE = 0x000B,
RPMI_SRVGRP_ID_MAX_COUNT,
/* Reserved range for service groups */
@@ -947,4 +948,40 @@ struct rpmi_perf_get_fast_chn_attr_resp {
u32 db_perserved_high;
};
+/** RPMI MM ServiceGroup Service IDs */
+enum rpmi_mm_service_id {
+ RPMI_MM_SRV_ENABLE_NOTIFICATION = 0x01,
+ RPMI_MM_SRV_GET_ATTRIBUTES = 0x02,
+ RPMI_MM_SRV_COMMUNICATE = 0x03,
+ RPMI_MM_SRV_MAX_COUNT,
+};
+
+/** RPMI MM ServiceGroup Get Attributes main struct */
+struct rpmi_mm_attributes {
+ u32 mm_version;
+ u32 shmem_addr_lo;
+ u32 shmem_addr_hi;
+ u32 shmem_size;
+};
+
+/** RPMI MM ServiceGroup Get Attributes response struct */
+struct rpmi_mm_get_attributes_rsp {
+ s32 status;
+ struct rpmi_mm_attributes mma;
+};
+
+/** RPMI MM ServiceGroup Communicate request struct */
+struct rpmi_mm_communicate_req {
+ u32 mm_comm_ipdata_off;
+ u32 mm_comm_ipdata_size;
+ u32 mm_comm_opdata_off;
+ u32 mm_comm_opdata_size;
+};
+
+/** RPMI MM ServiceGroup Communicate response struct */
+struct rpmi_mm_communicate_rsp {
+ s32 status;
+ u32 mm_comm_retdata_size;
+};
+
#endif /* !__RPMI_MSGPROT_H__ */