1
0
Fork 0

tee.txt: standardize document format

Each text file under Documentation follows a different format. Some
doesn't even have titles!

Change its representation to follow the adopted standard,
using ReST markups for it to be parseable by Sphinx:

- adjust identation of titles;
- mark ascii artwork as a literal block;
- adjust references.

Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
hifive-unleashed-5.1
Mauro Carvalho Chehab 2017-07-12 10:06:20 -03:00 committed by Jonathan Corbet
parent 633b11bee4
commit 4297739f2b
1 changed files with 30 additions and 21 deletions

View File

@ -1,4 +1,7 @@
=============
TEE subsystem TEE subsystem
=============
This document describes the TEE subsystem in Linux. This document describes the TEE subsystem in Linux.
A TEE (Trusted Execution Environment) is a trusted OS running in some A TEE (Trusted Execution Environment) is a trusted OS running in some
@ -80,27 +83,27 @@ The GlobalPlatform TEE Client API [5] is implemented on top of the generic
TEE API. TEE API.
Picture of the relationship between the different components in the Picture of the relationship between the different components in the
OP-TEE architecture. OP-TEE architecture::
User space Kernel Secure world User space Kernel Secure world
~~~~~~~~~~ ~~~~~~ ~~~~~~~~~~~~ ~~~~~~~~~~ ~~~~~~ ~~~~~~~~~~~~
+--------+ +-------------+ +--------+ +-------------+
| Client | | Trusted | | Client | | Trusted |
+--------+ | Application | +--------+ | Application |
/\ +-------------+ /\ +-------------+
|| +----------+ /\ || +----------+ /\
|| |tee- | || || |tee- | ||
|| |supplicant| \/ || |supplicant| \/
|| +----------+ +-------------+ || +----------+ +-------------+
\/ /\ | TEE Internal| \/ /\ | TEE Internal|
+-------+ || | API | +-------+ || | API |
+ TEE | || +--------+--------+ +-------------+ + TEE | || +--------+--------+ +-------------+
| Client| || | TEE | OP-TEE | | OP-TEE | | Client| || | TEE | OP-TEE | | OP-TEE |
| API | \/ | subsys | driver | | Trusted OS | | API | \/ | subsys | driver | | Trusted OS |
+-------+----------------+----+-------+----+-----------+-------------+ +-------+----------------+----+-------+----+-----------+-------------+
| Generic TEE API | | OP-TEE MSG | | Generic TEE API | | OP-TEE MSG |
| IOCTL (TEE_IOC_*) | | SMCCC (OPTEE_SMC_CALL_*) | | IOCTL (TEE_IOC_*) | | SMCCC (OPTEE_SMC_CALL_*) |
+-----------------------------+ +------------------------------+ +-----------------------------+ +------------------------------+
RPC (Remote Procedure Call) are requests from secure world to kernel driver RPC (Remote Procedure Call) are requests from secure world to kernel driver
or tee-supplicant. An RPC is identified by a special range of SMCCC return or tee-supplicant. An RPC is identified by a special range of SMCCC return
@ -109,10 +112,16 @@ kernel are handled by the kernel driver. Other RPC messages will be forwarded to
tee-supplicant without further involvement of the driver, except switching tee-supplicant without further involvement of the driver, except switching
shared memory buffer representation. shared memory buffer representation.
References: References
==========
[1] https://github.com/OP-TEE/optee_os [1] https://github.com/OP-TEE/optee_os
[2] http://infocenter.arm.com/help/topic/com.arm.doc.den0028a/index.html [2] http://infocenter.arm.com/help/topic/com.arm.doc.den0028a/index.html
[3] drivers/tee/optee/optee_smc.h [3] drivers/tee/optee/optee_smc.h
[4] drivers/tee/optee/optee_msg.h [4] drivers/tee/optee/optee_msg.h
[5] http://www.globalplatform.org/specificationsdevice.asp look for [5] http://www.globalplatform.org/specificationsdevice.asp look for
"TEE Client API Specification v1.0" and click download. "TEE Client API Specification v1.0" and click download.