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: 38846de217 ("xen/arm: tee: add a primitive FF-A mediator")
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Reviewed-by: Michal Orzel <michal.orzel@amd.com>
This commit is contained in:
Jens Wiklander authored and Julien Grall committed 2023-12-13 16:23:55 +00:00
1 parent a236b74b96
commit 75571e162b
1 file changed
+2 -1
+2 -1
View File
@@ -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;
}
}
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.