diff options
author | Jens Wiklander <jens.wiklander@linaro.org> | 2017-01-19 12:43:28 +0100 |
---|---|---|
committer | Jens Wiklander <jens.wiklander@linaro.org> | 2017-01-19 12:43:28 +0100 |
commit | 4e5d94d05e5c0837e97b34c61cbb8062c7582aa2 (patch) | |
tree | 2fc11f7023be6f9f4b638ab17257cdc6320b422a /documentation | |
parent | 85c82fc8b50f912c34b24d656f56a5bab4b64d62 (diff) |
doc: Add a section on paging of user TAs
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 | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/documentation/optee_design.md b/documentation/optee_design.md index 78c60f02..ce1460be 100644 --- a/documentation/optee_design.md +++ b/documentation/optee_design.md @@ -478,6 +478,19 @@ 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. +## Paging of user TA + +Paging of user TAs can optionally be enabled with CFG_PAGED_USER_TA=y. +Paging of user TAs is analogous to paging of OP-TEE kernel parts but with a +few differences: +- Read/write pages are paged in addition to read-only pages +- Page tables are managed dynamically + +tee_pager_add_uta_area() is used to setup initial read/write mapping needed +when populating the TA. When the TA is fully populated and relocated +tee_pager_set_uta_area_attr() changes the mapping of the area to strict +permissions used when the TA is running. + # 9. Memory objects A memory object, MOBJ, describes a piece of memory. The interface provided |