From 75571e162b78b73401307ce40f732021ae57d49a Mon Sep 17 00:00:00 2001 From: Jens Wiklander Date: Wed, 13 Dec 2023 11:32:41 +0100 Subject: [PATCH] xen/arm: ffa: return FFA_RET_NOT_SUPPORTED on unhandled calls Until now an unsupported FF-A request has been reported back with ARM_SMCCC_ERR_UNKNOWN_FUNCTION in register x0. A FF-A caller would rather expect FFA_ERROR in x0 and FFA_RET_NOT_SUPPORTED in x2 so update ffa_handle_call() to return true and with the cpu_user_regs updated. Fixes: 38846de2176b ("xen/arm: tee: add a primitive FF-A mediator") Signed-off-by: Jens Wiklander Reviewed-by: Bertrand Marquis Reviewed-by: Michal Orzel --- xen/arch/arm/tee/ffa.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/xen/arch/arm/tee/ffa.c b/xen/arch/arm/tee/ffa.c index 183528d133..98905fec79 100644 --- a/xen/arch/arm/tee/ffa.c +++ b/xen/arch/arm/tee/ffa.c @@ -1477,7 +1477,8 @@ static bool ffa_handle_call(struct cpu_user_regs *regs) default: gprintk(XENLOG_ERR, "ffa: unhandled fid 0x%x\n", fid); - return false; + set_regs_error(regs, FFA_RET_NOT_SUPPORTED); + return true; } }