arm: tcg: Adhere to SMCCC 1.3 section 5.2
The SMCCC 1.3 spec section 5.2 says The Unknown SMC Function Identifier is a sign-extended value of (-1) that is returned in the R0, W0 or X0 registers. An implementation must return this error code when it receives: * An SMC or HVC call with an unknown Function Identifier * An SMC or HVC call for a removed Function Identifier * An SMC64/HVC64 call from AArch32 state To comply with these statements, let's always return -1 when we encounter an unknown HVC or SMC call. [PMM: This is a reinstatement of commit 9fcd15b9, previously reverted in commit 4825eaae; we can do this now that we have arranged for all the affected board models to not enable the PSCI emulation if they are running guest code at EL3. This avoids the regressions that caused us to revert the change for 7.0.] Signed-off-by:Alexander Graf <agraf@csgraf.de> Reviewed-by:
Richard Henderson <richard.henderson@linaro.org> Reviewed-by:
Niek Linnenbank <nieklinnenbank@gmail.com> Tested-by:
Edgar E. Iglesias <edgar.iglesias@xilinx.com> Tested-by:
Cédric Le Goater <clg@kaod.org> Tested-by:
Niek Linnenbank <nieklinnenbank@gmail.com> Reviewed-by:
Peter Maydell <peter.maydell@linaro.org> Signed-off-by:
Peter Maydell <peter.maydell@linaro.org>
Please register or sign in to comment