]> git.dujemihanovic.xyz Git - u-boot.git/commit
tee: optee: don't enumerate services if there ain't any
authorEtienne Carriere <etienne.carriere@foss.st.com>
Wed, 29 Nov 2023 12:37:53 +0000 (13:37 +0100)
committerTom Rini <trini@konsulko.com>
Tue, 19 Dec 2023 15:07:48 +0000 (10:07 -0500)
commit51774b3b03a60a553cf183e6b8f5f8ee80afe625
tree00aa51a5dcd8ad6bdfe9f28e3f0f432656743f52
parentab9500e9c3fa1a4512eeebcc616f7ba73cf938ef
tee: optee: don't enumerate services if there ain't any

Change optee driver service enumeration to not enumerate (and
allocate a zero sized shared memory buffer) when OP-TEE
reports that there is no service to enumerate.

This change fixes an existing issue that occurs when the such zero
sized shared memory buffer allocated from malloc() has a physical
address of offset 0 of a physical 4kB page. In such case, OP-TEE
secure world refuses to register the zero-sized shared memory
area and makes U-Boot optee service enumeration to fail.

Fixes: 94ccfb78a4d6 ("drivers: tee: optee: discover OP-TEE services")
Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
drivers/tee/optee/core.c