Re: [PATCHv9] drivers: optee: allow op-tee to access devices on the i2c bus

From: Jens Wiklander
Date: Fri Aug 21 2020 - 02:21:33 EST


On Fri, Aug 14, 2020 at 01:12:21PM +0200, Jorge Ramirez-Ortiz wrote:
> Some secure elements like NXP's SE050 sit on I2C buses. For OP-TEE to
> control this type of cryptographic devices it needs coordinated access
> to the bus, so collisions and RUNTIME_PM dont get in the way.
>
> This trampoline driver allow OP-TEE to access them.
>
> Signed-off-by: Jorge Ramirez-Ortiz <jorge@xxxxxxxxxxxx>
> ---
> v9: params return value must be written before optee_msg_to_param is called
> v8: review fixes:
> fix types and add TEEC_ERROR_NOT_SUPPORTED to GP errors
> v7: add support for ten bit i2c slave addressing
> v6: compile out if CONFIG_I2C not enabled
> v5: alphabetic order of includes
> v4: remove unnecessary extra line in optee_msg.h
> v3: use from/to msg param to support all types of memory
> modify OPTEE_MSG_RPC_CMD_I2C_TRANSFER message id
>
> drivers/tee/optee/optee_msg.h | 21 +++++++
> drivers/tee/optee/optee_private.h | 1 +
> drivers/tee/optee/rpc.c | 95 +++++++++++++++++++++++++++++++
> 3 files changed, 117 insertions(+)

Looks good. Did you test this with the recently merged
https://github.com/OP-TEE/optee_os/pull/4033 ?

Cheers,
Jens