diff options
author | Max Shvetsov <maksims.svecovs@arm.com> | 2020-03-12 15:16:40 +0000 |
---|---|---|
committer | Max Shvetsov <maksims.svecovs@arm.com> | 2020-03-12 16:59:29 +0000 |
commit | ac03ac5ebb081678261a52dec4472931c48523e3 (patch) | |
tree | 05407b57a1759dfc2e3a1d28a09fd9e2dc9f408f /plat/common | |
parent | f9ea3a6291b45bddda0564e8ff654a615933b173 (diff) | |
download | arm-trusted-firmware-ac03ac5ebb081678261a52dec4472931c48523e3.tar.gz |
SPMD: Add support for SPCI_ID_GET
This patch introduces the `SPCI_ID_GET` interface which will return the
ID of the calling SPCI component. Returns 0 for requests from the
non-secure world and the SPCI component ID as specified in the manifest
for secure world requests.
Change-Id: Icf81eb1d0e1d7d5c521571e04972b6e2d356e0d1
Signed-off-by: Max Shvetsov <maksims.svecovs@arm.com>
Signed-off-by: Marc Bonnici <marc.bonnici@arm.com>
Diffstat (limited to 'plat/common')
-rw-r--r-- | plat/common/plat_spmd_manifest.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/plat/common/plat_spmd_manifest.c b/plat/common/plat_spmd_manifest.c index 9c3dc7177..f0aa27cfb 100644 --- a/plat/common/plat_spmd_manifest.c +++ b/plat/common/plat_spmd_manifest.c @@ -37,6 +37,12 @@ static int manifest_parse_attribute(spmc_manifest_sect_attribute_t *attr, return -ENOENT; } + rc = fdtw_read_cells(fdt, node, "spmc_id", 1, &attr->spmc_id); + if (rc) { + ERROR("Missing SPMC ID in manifest.\n"); + return -ENOENT; + } + rc = fdtw_read_cells(fdt, node, "exec_state", 1, &attr->exec_state); if (rc) NOTICE("Execution state not specified in SPM core manifest.\n"); @@ -55,6 +61,7 @@ static int manifest_parse_attribute(spmc_manifest_sect_attribute_t *attr, VERBOSE("SPM core manifest attribute section:\n"); VERBOSE(" version: %x.%x\n", attr->major_version, attr->minor_version); + VERBOSE(" spmc_id: %x\n", attr->spmc_id); VERBOSE(" binary_size: 0x%x\n", attr->binary_size); VERBOSE(" load_address: 0x%llx\n", attr->load_address); VERBOSE(" entrypoint: 0x%llx\n", attr->entrypoint); |