The RSI SMCCC function IDs describe a firmware ABI and are not arm64
architecture specific definitions. Follow-up changes need to use them from
non-arch code, including drivers/firmware/smccc and the Arm CCA guest
driver.
Move the complete Realm Service Interface (RSI) implementation from
arch/arm64 to drivers/firmware/arm_rmm. The RSI SMCCC definitions and
command helpers are also moved to include/linux so they can be shared by
architecture code and firmware or driver code. This also keeps the
firmware interface outside architecture code, as requested [1].
[1] https://lore.kernel.org/all/agsNO9cc7H-b0H8L@willie-the-truck (local)
Signed-off-by: Aneesh Kumar K.V (Arm) <aneesh.kumar@kernel.org>
The sashiko remarks don't look useful
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
[ ... 321 lines skipped ... ]
-#include <asm/rsi_smc.h>
+#define RSI_PDEV_NAME "arm-cca-dev"
This name shows up on the smccc bus as a device, '-dev' doesn't seem
to make sense as a device name to me, I'd drop it.
And is this arm-cca or should it be called arm-rsi with a different SMCC device for
arm-rmi ?
--
Jason