diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2020-02-18 08:36:45 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2020-02-18 08:36:45 +0100 |
commit | 801119922cb086ea7fc9f9194253a180d40581cb (patch) | |
tree | db40f3a353c683ef16b771f11450e689fab32393 /Documentation | |
parent | d69b7f3d693887c755671bffab677362f4e4a0b6 (diff) | |
parent | af1a0da42f9493b2d4266580b15d52946b326ca7 (diff) | |
download | barebox-801119922cb086ea7fc9f9194253a180d40581cb.tar.gz barebox-801119922cb086ea7fc9f9194253a180d40581cb.tar.xz |
Merge branch 'for-next/optee'
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/user/optee.rst | 29 | ||||
-rw-r--r-- | Documentation/user/user-manual.rst | 1 |
2 files changed, 30 insertions, 0 deletions
diff --git a/Documentation/user/optee.rst b/Documentation/user/optee.rst new file mode 100644 index 0000000000..950917b446 --- /dev/null +++ b/Documentation/user/optee.rst @@ -0,0 +1,29 @@ + +.. _optee: + +OP-TEE +====== + +Barebox is able to start the Open Portable Trusted Execution Environment +(OP-TEE) either before starting the linux kernel or during lowlevel board +initialization in the Pre Bootloader ``PBL``. + +Before Linux start +------------------ +Enable the `CONFIG_BOOTM_OPTEE` configuration variable and configure the +`CONFIG_OPTEE_SIZE` variable. This will reserve a memory area at the end +of memory for OP-TEE to run, usually Barebox would relocate itself there. To +load OP-TEE before the kernel is started, configure the global ``bootm.tee`` +variable to point to a valid OPTEE v1 binary. + +During the PBL +-------------- +To start OP-TEE during the lowlevel initialization of your board in the ``PBL``, +enable the ``CONFIG_PBL_OPTEE`` configuration variable. your board should then +call the function ``start_optee_early(void* tee, void* fdt)`` with a valid tee +and FDT. Ensure that your OP-TEE is compiled with ``CFG_NS_ENTRY_ADDR`` unset, +otherwise OP-TEE will not correctly return to barebox after startup. +Since OP-TEE in the default configuration also modifies the device tree, don't +pass the barebox internal device tree, instead copy it into a different memory +location and pass it to OP-TEE afterwards. +The modified device tree can then be passed to the main barebox start function. diff --git a/Documentation/user/user-manual.rst b/Documentation/user/user-manual.rst index 41fdb8805c..827683eaa0 100644 --- a/Documentation/user/user-manual.rst +++ b/Documentation/user/user-manual.rst @@ -33,6 +33,7 @@ Contents: system-reset state random + optee debugging watchdog |