]> git.baikalelectronics.ru Git - arm-tf.git/commit
fix(smccc): check smc_fid [23:17] bits
authorJayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com>
Thu, 9 Mar 2023 13:56:03 +0000 (13:56 +0000)
committerJayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com>
Mon, 20 Mar 2023 10:12:38 +0000 (10:12 +0000)
commitf8a35797b919d8ea041480bd5eb2a334e7056e0b
tree6a034e8c016994d8fd448ee0bff4b338a0b2b02c
parentc41b8e90f75a7db82ee4384e3ffa5d8b9b8080e5
fix(smccc): check smc_fid [23:17] bits

As per SMCCC spec Table 2.1 bit 23:17 must be zero (MBZ),
for all Fast Calls, when bit[31] == 1.
Adding this check to ensure SMC FIDs when get to the SMC handler
have these bits (23:17) cleared, if not capture and report them
as an unknown SMCs at the core.

Also the C runtime stack is copied to the stackpointer well in
advance, to leverage the existing el3_exit routine for unknown SMC.

Change-Id: I9972216db5ac164815011177945fb34dadc871b0
Signed-off-by: Jayanth Dodderi Chidanand <jayanthdodderi.chidanand@arm.com>
bl31/aarch64/runtime_exceptions.S
include/lib/smccc.h