]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
arm/arm64: Provide a wrapper for SMCCC 1.1 calls
authorSteven Price <steven.price@arm.com>
Mon, 21 Oct 2019 15:28:21 +0000 (16:28 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 11 Mar 2022 09:03:31 +0000 (10:03 +0100)
commit10b908aabfb2957c21f189c0e1896aabafc696eb
tree56a074f548df21481ce7c40ba9d2c46e962fcdd4
parent0753760184745250e39018bb25ba77557390fe91
arm/arm64: Provide a wrapper for SMCCC 1.1 calls

commit 541625ac47ce9d0835efaee0fcbaa251b0000a37 upstream.

SMCCC 1.1 calls may use either HVC or SMC depending on the PSCI
conduit. Rather than coding this in every call site, provide a macro
which uses the correct instruction. The macro also handles the case
where no conduit is configured/available returning a not supported error
in res, along with returning the conduit used for the call.

This allow us to remove some duplicated code and will be useful later
when adding paravirtualized time hypervisor calls.

Signed-off-by: Steven Price <steven.price@arm.com>
Acked-by: Will Deacon <will@kernel.org>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
include/linux/arm-smccc.h