linux/drivers/tee/optee
Jens Wiklander ed8faf6c8f optee: add OPTEE_SMC_CALL_WITH_RPC_ARG and OPTEE_SMC_CALL_WITH_REGD_ARG
Adds OPTEE_SMC_CALL_WITH_RPC_ARG and OPTEE_SMC_CALL_WITH_REGD_ARG where
the struct optee_msg_arg to be used for RPC is appended in the memory
following the normal argument struct optee_msg_arg. This is an
optimization to avoid caching the RPC argument struct while still
maintaining similar performance as if it was cached.

OPTEE_SMC_CALL_WITH_REGD_ARG optimized one step further by using a
registered shared memory object instead. It's in other aspects identical
to OPTEE_SMC_CALL_WITH_RPC_ARG.

The presence of OPTEE_SMC_CALL_WITH_RPC_ARG and
OPTEE_SMC_CALL_WITH_REGD_ARG is indicated by the new
OPTEE_SMC_SEC_CAP_RPC_ARG bit returned by
OPTEE_SMC_EXCHANGE_CAPABILITIES. OPTEE_SMC_EXCHANGE_CAPABILITIES also
reports the number of arguments that the RPC argument struct must have
room for.

OPTEE_SMC_CALL_WITH_RPC_ARG and OPTEE_SMC_CALL_WITH_ARG can be used
interleaved with difference that when OPTEE_SMC_CALL_WITH_RPC_ARG is
used the RPC argument struct to be used is the one appended to the
normal argument struct. The same is true for
OPTEE_SMC_CALL_WITH_REGD_ARG.

Reviewed-by: Sumit Garg <sumit.garg@linaro.org>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
2022-04-13 07:37:20 +02:00
..
call.c optee: add OPTEE_SMC_CALL_WITH_RPC_ARG and OPTEE_SMC_CALL_WITH_REGD_ARG 2022-04-13 07:37:20 +02:00
core.c optee: add optee_pool_op_free_helper() 2022-02-16 07:49:41 +01:00
device.c tee: replace tee_shm_alloc() 2022-02-16 07:49:41 +01:00
ffa_abi.c optee: rename rpc_arg_count to rpc_param_count 2022-04-13 07:33:59 +02:00
Kconfig tee: simplify shm pool handling 2022-02-16 07:49:41 +01:00
Makefile optee: separate notification functions 2021-11-17 14:08:56 +01:00
notif.c optee: Use bitmap_free() to free bitmap 2022-01-24 12:53:34 +01:00
optee_ffa.h optee: add FF-A support 2021-10-18 11:44:23 +02:00
optee_msg.h optee: add asynchronous notifications 2021-11-17 14:08:57 +01:00
optee_private.h optee: rename rpc_arg_count to rpc_param_count 2022-04-13 07:33:59 +02:00
optee_rpc_cmd.h optee: separate notification functions 2021-11-17 14:08:56 +01:00
optee_smc.h optee: add OPTEE_SMC_CALL_WITH_RPC_ARG and OPTEE_SMC_CALL_WITH_REGD_ARG 2022-04-13 07:37:20 +02:00
optee_trace.h
rpc.c optee: separate notification functions 2021-11-17 14:08:56 +01:00
smc_abi.c optee: add OPTEE_SMC_CALL_WITH_RPC_ARG and OPTEE_SMC_CALL_WITH_REGD_ARG 2022-04-13 07:37:20 +02:00
supp.c