OP-TEE / optee_os

Trusted side of the TEE
Other
1.58k stars 1.07k forks source link

Simplified OCALL #4650

Open jenswi-linaro opened 3 years ago

jenswi-linaro commented 3 years ago

Hi all,

This relates the ongoing OCALL work (https://github.com/OP-TEE/optee_os/pull/3673, https://github.com/linaro-swg/linux/pull/72, https://github.com/OP-TEE/optee_client/pull/171 and https://github.com/linaro-swg/optee_examples/pull/64) where the Linux kernel driver implementation has become a bottleneck due to its complexity.

I'm proposing an alternative design with more focus on keeping down the complexity in the kernel driver implementation. The TEE Client API exposed to the client is supposed to be left more or less as it is in https://github.com/OP-TEE/optee_client/pull/171. Same goes for the TA API exposed to the TA in https://github.com/OP-TEE/optee_os/pull/3673.

The design is currently just a rough sketch but I hope it should be enough to get the idea. This is described in the document Simplified OCALL, feel free to comment in the document or here whatever is most convenient for you.

github-actions[bot] commented 3 years ago

This issue has been marked as a stale issue because it has been open (more than) 30 days with no activity. Remove the stale label or add a comment, otherwise this issue will automatically be closed in 5 days. Note, that you can always re-open a closed issue at any time.