feat(spmd): get logical partitions info
This patch enables FF-A secure partitions and the SPMC to query EL3 SPMD
logical partitions that are present in the system via partition get info
regs abi. Note that normal world will not be able to see EL3 SPMD
logical partitions as per the spec.
Signed-off-by: Raghu Krishnamurthy <raghu.ncstate@gmail.com>
Change-Id: I3fca8aed8ae156a559a74521803324c13ae3d55a
diff --git a/include/services/el3_spmd_logical_sp.h b/include/services/el3_spmd_logical_sp.h
index c810714..670474a 100644
--- a/include/services/el3_spmd_logical_sp.h
+++ b/include/services/el3_spmd_logical_sp.h
@@ -72,6 +72,12 @@
#define SPMD_LP_ID_END (SPMD_DIRECT_MSG_ENDPOINT_ID - 1)
#define SPMD_LP_ID_START (SPMD_LP_ID_END - 62)
+/*
+ * TODO: Arbitrary number. Can make this platform specific in the future,
+ * no known use cases for more LPs at this point.
+ */
+#define EL3_SPMD_MAX_NUM_LP U(5)
+
static inline bool is_spmd_lp_id(unsigned int id)
{
#if ENABLE_SPMD_LP
@@ -121,6 +127,9 @@
return (uint16_t)(args.arg2 >> 48);
}
+uint64_t spmd_el3_populate_logical_partition_info(void *handle, uint64_t x1,
+ uint64_t x2, uint64_t x3);
+
bool ffa_partition_info_regs_get_part_info(
struct ffa_value args, uint8_t idx,
struct ffa_partition_info_v1_1 *partition_info);