Skip to content

Commit 7e47bc4

Browse files
jenswi-linaroAlex Shi
authored andcommitted
tee: add OP-TEE driver
Adds a OP-TEE driver which also can be compiled as a loadable module. * Targets ARM and ARM64 * Supports using reserved memory from OP-TEE as shared memory * Probes OP-TEE version using SMCs * Accepts requests on privileged and unprivileged device * Uses OPTEE message protocol version 2 to communicate with secure world Acked-by: Andreas Dannenberg <dannenberg@ti.com> Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (HiKey) Tested-by: Volodymyr Babchuk <vlad.babchuk@gmail.com> (RCAR H3) Tested-by: Scott Branden <scott.branden@broadcom.com> Reviewed-by: Javier González <javier@javigon.com> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> (cherry picked from commit 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2) Signed-off-by: Alex Shi <alex.shi@linaro.org>
1 parent c87474a commit 7e47bc4

12 files changed

Lines changed: 2814 additions & 0 deletions

File tree

MAINTAINERS

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7935,6 +7935,11 @@ F: arch/*/oprofile/
79357935
F: drivers/oprofile/
79367936
F: include/linux/oprofile.h
79377937

7938+
OP-TEE DRIVER
7939+
M: Jens Wiklander <jens.wiklander@linaro.org>
7940+
S: Maintained
7941+
F: drivers/tee/optee/
7942+
79387943
ORACLE CLUSTER FILESYSTEM 2 (OCFS2)
79397944
M: Mark Fasheh <mfasheh@suse.com>
79407945
M: Joel Becker <jlbec@evilplan.org>

drivers/tee/Kconfig

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,13 @@ config TEE
66
help
77
This implements a generic interface towards a Trusted Execution
88
Environment (TEE).
9+
10+
if TEE
11+
12+
menu "TEE drivers"
13+
14+
source "drivers/tee/optee/Kconfig"
15+
16+
endmenu
17+
18+
endif

drivers/tee/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,4 @@ obj-$(CONFIG_TEE) += tee.o
22
tee-objs += tee_core.o
33
tee-objs += tee_shm.o
44
tee-objs += tee_shm_pool.o
5+
obj-$(CONFIG_OPTEE) += optee/

drivers/tee/optee/Kconfig

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# OP-TEE Trusted Execution Environment Configuration
2+
config OPTEE
3+
tristate "OP-TEE"
4+
depends on HAVE_ARM_SMCCC
5+
help
6+
This implements the OP-TEE Trusted Execution Environment (TEE)
7+
driver.

drivers/tee/optee/Makefile

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
obj-$(CONFIG_OPTEE) += optee.o
2+
optee-objs += core.o
3+
optee-objs += call.o
4+
optee-objs += rpc.o
5+
optee-objs += supp.o

0 commit comments

Comments
 (0)