Browse Source

feat(rmmd): pass SMCCCv1.3 SVE hint bit to RMM

SMCCCv1.3 introduces SVE hint bit that denotes the absence of SVE
specific live state. Update the SMC function ID with SVE hint bit if it
is set the flags and pass it to RMM.

Signed-off-by: Arunachalam Ganapathy <arunachalam.ganapathy@arm.com>
Change-Id: Ibb1d73440ed1e2283a103cfd2c4592be5d3a74cb
pull/1993/merge
Arunachalam Ganapathy 1 year ago
committed by Soby Mathew
parent
commit
678896301b
  1. 8
      services/std_svc/rmmd/rmmd_main.c

8
services/std_svc/rmmd/rmmd_main.c

@ -320,6 +320,14 @@ uint64_t rmmd_rmi_handler(uint32_t smc_fid, uint64_t x1, uint64_t x2,
* is.
*/
if (src_sec_state == SMC_FROM_NON_SECURE) {
/*
* If SVE hint bit is set in the flags then update the SMC
* function id and pass it on to the lower EL.
*/
if (is_sve_hint_set(flags)) {
smc_fid |= (FUNCID_SVE_HINT_MASK <<
FUNCID_SVE_HINT_SHIFT);
}
VERBOSE("RMMD: RMI call from non-secure world.\n");
return rmmd_smc_forward(NON_SECURE, REALM, smc_fid,
x1, x2, x3, x4, handle);

Loading…
Cancel
Save