[PW_SID:1119849] tee: add MbedTEE driver#2193
Conversation
Register the "mbedtee" vendor prefix for the MbedTEE Trusted Execution Environment project (https://github.com/mbedtee). Signed-off-by: Xing Loong <xing.xl.loong@gmail.com> Signed-off-by: Linux RISC-V bot <linux.riscv.bot@gmail.com>
Add YAML devicetree binding for the MbedTEE Trusted Execution
Environment driver.
The binding covers two platform configurations:
- ARM/AArch64 (TrustZone, SMC): two reserved-memory regions
(rpc-t2r-ring and rpc-t2r-shm) plus a GIC SPI edge interrupt
for TEE-to-REE notifications.
- RISC-V (IMSIC): three reserved-memory regions, adding
rpc-r2t-ring for REE-to-TEE command submissions; no interrupts
property (T2R notifications use IMSIC MSI allocated at runtime).
Signed-off-by: Xing Loong <xing.xl.loong@gmail.com>
Signed-off-by: Linux RISC-V bot <linux.riscv.bot@gmail.com>
This patch adds a Linux TEE driver that communicates with MbedTEE OS, a Trusted Execution Environment for embedded systems (https://github.com/mbedtee) via a fixed shared-memory RPC protocol over architecture-specific transports: - ARM/ARM64: SMCCC fast/yield calls for REE-to-TEE requests; TEE-to-REE notifications via a GIC SPI edge interrupt. - RISC-V: REE submits commands by writing to a shared-memory rpc-r2t-ring that the TEE polls; the TEE notifies the REE by writing to rpc-t2r-ring and raising a platform IMSIC MSI. No REE-to-TEE interrupt is used. The driver implements the TEE subsystem interface (tee_driver_ops) and provides GlobalPlatform TEE Client API support, dynamic shared memory registration, and tee-supplicant support. Signed-off-by: Xing Loong <xing.xl.loong@gmail.com> Signed-off-by: Linux RISC-V bot <linux.riscv.bot@gmail.com>
|
Patch 1: "[1/3] dt-bindings: vendor-prefixes: add mbedtee" |
|
Patch 1: "[1/3] dt-bindings: vendor-prefixes: add mbedtee" |
|
Patch 1: "[1/3] dt-bindings: vendor-prefixes: add mbedtee" |
|
Patch 1: "[1/3] dt-bindings: vendor-prefixes: add mbedtee" |
|
Patch 1: "[1/3] dt-bindings: vendor-prefixes: add mbedtee" |
|
Patch 1: "[1/3] dt-bindings: vendor-prefixes: add mbedtee" |
|
Patch 1: "[1/3] dt-bindings: vendor-prefixes: add mbedtee" |
|
Patch 1: "[1/3] dt-bindings: vendor-prefixes: add mbedtee" |
|
Patch 1: "[1/3] dt-bindings: vendor-prefixes: add mbedtee" |
|
Patch 1: "[1/3] dt-bindings: vendor-prefixes: add mbedtee" |
|
Patch 1: "[1/3] dt-bindings: vendor-prefixes: add mbedtee" |
|
Patch 1: "[1/3] dt-bindings: vendor-prefixes: add mbedtee" |
|
Patch 2: "[2/3] dt-bindings: firmware: add mbedtee,rpc binding" |
|
Patch 2: "[2/3] dt-bindings: firmware: add mbedtee,rpc binding" |
|
Patch 2: "[2/3] dt-bindings: firmware: add mbedtee,rpc binding" |
|
Patch 2: "[2/3] dt-bindings: firmware: add mbedtee,rpc binding" |
|
Patch 2: "[2/3] dt-bindings: firmware: add mbedtee,rpc binding" |
|
Patch 2: "[2/3] dt-bindings: firmware: add mbedtee,rpc binding" |
|
Patch 2: "[2/3] dt-bindings: firmware: add mbedtee,rpc binding" |
|
Patch 2: "[2/3] dt-bindings: firmware: add mbedtee,rpc binding" |
|
Patch 2: "[2/3] dt-bindings: firmware: add mbedtee,rpc binding" |
|
Patch 2: "[2/3] dt-bindings: firmware: add mbedtee,rpc binding" |
|
Patch 2: "[2/3] dt-bindings: firmware: add mbedtee,rpc binding" |
|
Patch 2: "[2/3] dt-bindings: firmware: add mbedtee,rpc binding" |
|
Patch 3: "[3/3] tee: add MbedTEE driver" |
|
Patch 3: "[3/3] tee: add MbedTEE driver" |
|
Patch 3: "[3/3] tee: add MbedTEE driver" |
|
Patch 3: "[3/3] tee: add MbedTEE driver" |
|
Patch 3: "[3/3] tee: add MbedTEE driver" |
|
Patch 3: "[3/3] tee: add MbedTEE driver" |
|
Patch 3: "[3/3] tee: add MbedTEE driver" |
|
Patch 3: "[3/3] tee: add MbedTEE driver" |
|
Patch 3: "[3/3] tee: add MbedTEE driver" |
|
Patch 3: "[3/3] tee: add MbedTEE driver" |
|
Patch 3: "[3/3] tee: add MbedTEE driver" |
|
Patch 3: "[3/3] tee: add MbedTEE driver" |
PR for series 1119849 applied to workflow__riscv__fixes
Name: tee: add MbedTEE driver
URL: https://patchwork.kernel.org/project/linux-riscv/list/?series=1119849
Version: 1