diff options
author | Jens Wiklander <jens.wiklander@linaro.org> | 2017-01-19 12:43:22 +0100 |
---|---|---|
committer | Jens Wiklander <jens.wiklander@linaro.org> | 2017-01-19 12:43:22 +0100 |
commit | 85c82fc8b50f912c34b24d656f56a5bab4b64d62 (patch) | |
tree | 7979ccbc111e69844f06bde37e02653cd50bc55e /documentation | |
parent | d8555bdd2c26d51de9a12ed476f58a0c08795185 (diff) |
Documentation: add an overview of MOBJs
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
Reviewed-by Volodymyr Babchuk <vlad.babchuk@gmail.com>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Diffstat (limited to 'documentation')
-rw-r--r-- | documentation/optee_design.md | 29 |
1 files changed, 26 insertions, 3 deletions
diff --git a/documentation/optee_design.md b/documentation/optee_design.md index 495618f8..78c60f02 100644 --- a/documentation/optee_design.md +++ b/documentation/optee_design.md @@ -478,15 +478,38 @@ is mapped new data is copied from backing store and the hash of the page is verified. If it's OK the pager returns from the exception to resume the execution. -# 9. Cryptographic abstraction layer +# 9. Memory objects + +A memory object, MOBJ, describes a piece of memory. The interface provided +is mostly abstract when it comes to using the MOBJ to populate translation +tables etc. + +There's different kinds of MOBJs describing: +- physically contiguous memory + - created with mobj_phys_alloc() +- virtual memory + - one instance with the name mobj_virt available + - spans the entire virtual address space +- physically contiguous memory allocated from a tee_mm_pool_t * + - created with mobj_mm_alloc() +- paged memory + - created with mobj_paged_alloc() + - only contains the supplied size and makes mobj_is_paged() return true if + supplied as argument +- secure copy paged shared memory + - created with mobj_seccpy_shm_alloc() + - makes mobj_is_paged() and mobj_is_secure() return true if supplied as + argument + +# 10. Cryptographic abstraction layer Cryptographic operations are implemented inside the TEE core by the [LibTomCrypt] library. An abstraction layer allows for replacing the default implementation, as explained in [crypto.md]. -# 10. libutee +# 11. libutee TBD -# 11. Trusted Applications +# 12. Trusted Applications ## Format Trusted Applications consists of a signed ELF file. |