Hello arm-soc maintainers,
Please pull this TEE shared memory cleanup. Some kernel internal APIs are
replaced with easier to use counter parts. The TEE shared memory pool is
also simplified.
Note that this pull request includes two patches which are outside the TEE
subsystem:
- 231b1fc5da09 ("KEYS: trusted: tee: use tee_shm_register_kernel_buf()")
- e7ddab084740 ("hwrng: optee-rng: use tee_shm_alloc_kernel_buf()")
Those patches are reviewed by their maintainer. I've also asked the
maintainers that normally sends patches upstream for these modules if it's
OK that I take these patches via my tree. As I got no answer I assume that
it's OK.
This pull request is on top of the patch, aceeafefff73 ("optee: use driver
internal tee_context for some rpc"), I've already sent (and has since been
merged) for the 5.17 kernel. That's why I'm not including it in the stat.
Thanks,
Jens
The following changes since commit aceeafefff736057e8f93f19bbfbef26abd94604:
optee: use driver internal tee_context for some rpc (2022-02-03 13:36:32 +0100)
are available in the Git repository at:
git://git.linaro.org:/people/jens.wiklander/linux-tee.git tags/tee-shm-for-v5.18
for you to fetch changes up to a45ea4efa358577c623d7353a6ba9af3c17f6ca0:
tee: refactor TEE_SHM_* flags (2022-02-16 07:49:41 +0100)
----------------------------------------------------------------
TEE shared memory cleanup for v5.18
- The TEE shared memory pool based on two pools is replaced with a single
somewhat more capable pool.
- Replaces tee_shm_alloc() and tee_shm_register() with new functions
easier to use and maintain. The TEE subsystem and the TEE drivers are
updated to use the new functions instead.
- The TEE based Trusted keys routines are updated to use the new
simplified functions above.
- The OP-TEE based rng driver is updated to use the new simplified
functions above.
- The TEE_SHM-flags are refactored to better match their usage
----------------------------------------------------------------
Jens Wiklander (10):
hwrng: optee-rng: use tee_shm_alloc_kernel_buf()
tee: remove unused tee_shm_pool_alloc_res_mem()
tee: add tee_shm_alloc_user_buf()
tee: simplify shm pool handling
tee: replace tee_shm_alloc()
optee: add optee_pool_op_free_helper()
tee: add tee_shm_register_{user,kernel}_buf()
KEYS: trusted: tee: use tee_shm_register_kernel_buf()
tee: replace tee_shm_register()
tee: refactor TEE_SHM_* flags
drivers/char/hw_random/optee-rng.c | 6 +-
drivers/tee/amdtee/shm_pool.c | 55 ++----
drivers/tee/optee/Kconfig | 8 -
drivers/tee/optee/call.c | 2 +-
drivers/tee/optee/core.c | 21 +-
drivers/tee/optee/device.c | 5 +-
drivers/tee/optee/ffa_abi.c | 63 ++----
drivers/tee/optee/optee_private.h | 7 +-
drivers/tee/optee/smc_abi.c | 125 ++++--------
drivers/tee/tee_core.c | 5 +-
drivers/tee/tee_private.h | 15 +-
drivers/tee/tee_shm.c | 320 ++++++++++++++++++++-----------
drivers/tee/tee_shm_pool.c | 162 ++++------------
include/linux/tee_drv.h | 138 +++----------
security/keys/trusted-keys/trusted_tee.c | 23 +--
15 files changed, 388 insertions(+), 567 deletions(-)
Hello arm-soc maintainers,
Please pull this small AMDTEE driver simplification to use the LIST_HEAD()
macro instead for a global variable.
Note that this isn't a usual Arm driver update. This targets AMD instead,
but is part of the TEE subsystem.
Thanks,
Jens
The following changes since commit 26291c54e111ff6ba87a164d85d4a4e134b7315c:
Linux 5.17-rc2 (2022-01-30 15:37:07 +0200)
are available in the Git repository at:
git://git.linaro.org:/people/jens.wiklander/linux-tee.git tags/amdtee-for-v5.18
for you to fetch changes up to f7b67642dd98617dc569836cdcba041c7ff00cbb:
tee: amdtee: Make use of the helper macro LIST_HEAD() (2022-02-14 10:57:55 +0100)
----------------------------------------------------------------
Small simplification in AMDTE driver
----------------------------------------------------------------
Cai Huoqing (1):
tee: amdtee: Make use of the helper macro LIST_HEAD()
drivers/tee/amdtee/call.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Hello arm-soc maintainers,
Please pull this small OP-TEE driver fix taking care of a broken return
code in the error path of the two probe functions in the OP-TEE driver.
Please note that this pull request is on top of the previously just merged
patch which introduced the problem fixed here.
Thanks,
Jens
The following changes since commit aceeafefff736057e8f93f19bbfbef26abd94604:
optee: use driver internal tee_context for some rpc (2022-02-03 13:36:32 +0100)
are available in the Git repository at:
git://git.linaro.org/people/jens.wiklander/linux-tee.git tags/optee-fix2-for-v5.17
for you to fetch changes up to 40eb0dcf4114cbfff4d207890fa5a19e82da9fdc:
tee: optee: fix error return code in probe function (2022-02-14 12:36:48 +0100)
----------------------------------------------------------------
OP-TEE fix error return code in probe functions
----------------------------------------------------------------
Yang Yingliang (1):
tee: optee: fix error return code in probe function
drivers/tee/optee/ffa_abi.c | 4 +++-
drivers/tee/optee/smc_abi.c | 4 +++-
2 files changed, 6 insertions(+), 2 deletions(-)
Hello arm-soc maintainers,
Please pull this OP-TEE driver fix which decouples driver private shared
memory objects from the original tee_context. This fixes the root cause of
a shutdown problem where the driver would dead-lock waiting for tee-supplicant.
Thanks,
Jens
The following changes since commit 26291c54e111ff6ba87a164d85d4a4e134b7315c:
Linux 5.17-rc2 (2022-01-30 15:37:07 +0200)
are available in the Git repository at:
git://git.linaro.org/people/jens.wiklander/linux-tee.git tags/optee-fix-for-v5.17
for you to fetch changes up to aceeafefff736057e8f93f19bbfbef26abd94604:
optee: use driver internal tee_context for some rpc (2022-02-03 13:36:32 +0100)
----------------------------------------------------------------
OP-TEE fix shutdown problems
----------------------------------------------------------------
Jens Wiklander (1):
optee: use driver internal tee_context for some rpc
drivers/tee/optee/core.c | 1 +
drivers/tee/optee/ffa_abi.c | 77 ++++++++++++++++++++++-----------------
drivers/tee/optee/optee_private.h | 5 ++-
drivers/tee/optee/smc_abi.c | 48 +++++++++---------------
4 files changed, 64 insertions(+), 67 deletions(-)