diff options
author | Paul Beesley <paul.beesley@arm.com> | 2019-05-29 13:59:40 +0100 |
---|---|---|
committer | Paul Beesley <paul.beesley@arm.com> | 2019-11-27 10:45:54 +0000 |
commit | 43f35ef516b899c82e11bad760c704c44ced5440 (patch) | |
tree | 35ef663b1cd776fa3cff9b831d6bb708666409c8 /docs/components | |
parent | d537ee795c1390601428d6b5b3499d05b62ad271 (diff) | |
download | platform_external_arm-trusted-firmware-43f35ef516b899c82e11bad760c704c44ced5440.tar.gz platform_external_arm-trusted-firmware-43f35ef516b899c82e11bad760c704c44ced5440.tar.bz2 platform_external_arm-trusted-firmware-43f35ef516b899c82e11bad760c704c44ced5440.zip |
doc: Split the User Guide into multiple files
The User Guide document has grown organically over time and
now covers a wide range of topics, making it difficult to
skim read and extract information from. Currently, it covers
these topics and maybe a couple more:
- Requirements (hardware, tools, libs)
- Checking out the repo
- Basic build instructions
- A comprehensive list of build flags
- FIP packaging
- Building specifically for Juno
- Firmware update images
- EL3 payloads
- Preloaded BL33 boot flow
- Running on FVPs
- Running on Juno
I have separated these out into a few groups that become new
documents. Broadly speaking, build instructions for the tools,
for TF-A generally, and for specific scenarios are separated.
Content relating to specific platforms (Juno and the FVPs are
Arm-specific platforms, essentially) has been moved into the
documentation that is specific to those platforms, under
docs/plat/arm.
Change-Id: Ica87c52d8cd4f577332be0b0738998ea3ba3bbec
Signed-off-by: Paul Beesley <paul.beesley@arm.com>
Diffstat (limited to 'docs/components')
-rw-r--r-- | docs/components/romlib-design.rst | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/docs/components/romlib-design.rst b/docs/components/romlib-design.rst index e0a028e46..d34b3cc58 100644 --- a/docs/components/romlib-design.rst +++ b/docs/components/romlib-design.rst @@ -115,21 +115,27 @@ Memory impact ~~~~~~~~~~~~~ Using library at ROM will modify the memory layout of the BL images: + - The ROM library needs a page aligned RAM section to hold the RW data. This - section is defined by the ROMLIB_RW_BASE and ROMLIB_RW_END macros. - On Arm platforms a section of 1 page (0x1000) is allocated at the top of SRAM. - This will have for effect to shift down all the BL images by 1 page. + section is defined by the ROMLIB_RW_BASE and ROMLIB_RW_END macros. + On Arm platforms a section of 1 page (0x1000) is allocated at the top of SRAM. + This will have for effect to shift down all the BL images by 1 page. + - Depending on the functions moved to the ROM library, the size of the BL images - will be reduced. - For example: moving MbedTLS function into the ROM library reduces BL1 and - BL2, but not BL31. + will be reduced. + For example: moving MbedTLS function into the ROM library reduces BL1 and + BL2, but not BL31. + - This change in BL images size can be taken into consideration to optimize the - memory layout when defining the BLx_BASE macros. + memory layout when defining the BLx_BASE macros. Build library at ROM ~~~~~~~~~~~~~~~~~~~~~ -The environment variable ``CROSS_COMPILE`` must be set as per the user guide. +The environment variable ``CROSS_COMPILE`` must be set appropriately. Refer to +:ref:`Performing an Initial Build` for more information about setting this +variable. + In the below example the usage of ROMLIB together with mbed TLS is demonstrated to showcase the benefits of library at ROM - it's not mandatory. |