[PATCH v2 0/3] Add Secure Monitor Call API
Gedare Bloom
gedare at rtems.org
Sat Dec 11 16:16:01 UTC 2021
These patches add and use an internal API to make
secure monitor call (SMC) invocations. SMC is used
currently in aarch64 for secondary processor boot
and bsp_reset. Although SMC is available on arm, it
does not appear to be currently used by any of arm
BSPs. So the current approach is only implemented
in the aarch64. Replicating the implementation for
arm (with SMC32) should be simple if needed, but
the placement of the API may need some more thought.
Currently, the only place that aarch64 and arm can
easily share code is underneath bsps/shared.
Also, it should be straightforward to add a similar
API for hypervisor call (HVC) invocations.
v2: address comments from reviewers (Sebastian, Kinsey)
Gedare Bloom (3):
aarch64: add internal API for secure monitor call (smc)
bsps/aarch64: use SMC API in bspsmp-arm-psci
bsps/aarch64: use SMC API in bspreset-arm-psci
bsps/shared/start/bspreset-arm-psci.c | 41 +++++++--
bsps/shared/start/bspsmp-arm-psci.c | 19 ++++-
cpukit/score/cpu/aarch64/aarch64-smc.c | 72 ++++++++++++++++
.../aarch64/include/rtems/score/aarch64-smc.h | 83 +++++++++++++++++++
spec/build/cpukit/cpuaarch64.yml | 2 +
5 files changed, 205 insertions(+), 12 deletions(-)
create mode 100644 cpukit/score/cpu/aarch64/aarch64-smc.c
create mode 100644 cpukit/score/cpu/aarch64/include/rtems/score/aarch64-smc.h
--
2.25.1
More information about the devel
mailing list