mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-24 13:55:56 +00:00
docs: update RESET_TO_BL31 documentation
The documentation has been updated to explicitly mention that with RESET_TO_BL31, the platform can receive parameters based on their actual boot sequence. Change-Id: Ib482fb89e528ec836ff7ee175cac59dd2da2898b Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
This commit is contained in:
parent
3e14df6f63
commit
d2baffbc03
1 changed files with 14 additions and 6 deletions
|
@ -141,19 +141,27 @@ CPU executes a modified BL31 initialization, as described below.
|
||||||
Platform initialization
|
Platform initialization
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
In this configuration, when the CPU resets to BL31 there are no parameters that
|
In this configuration, since the CPU resets to BL31, no parameters are expected
|
||||||
can be passed in registers by previous boot stages. Instead, the platform code
|
to be passed to BL31 (see notes below for clarification).
|
||||||
in BL31 needs to know, or be able to determine, the location of the BL32 (if
|
Instead, the platform code in BL31 needs to know, or be able to determine, the
|
||||||
required) and BL33 images and provide this information in response to the
|
location of the BL32 (if required) and BL33 images and provide this information
|
||||||
``bl31_plat_get_next_image_ep_info()`` function.
|
in response to the ``bl31_plat_get_next_image_ep_info()`` function.
|
||||||
|
|
||||||
Additionally, platform software is responsible for carrying out any security
|
Additionally, platform software is responsible for carrying out any security
|
||||||
initialisation, for example programming a TrustZone address space controller.
|
initialisation, for example programming a TrustZone address space controller.
|
||||||
This might be done by the Trusted Boot Firmware or by platform code in BL31.
|
This might be done by the Trusted Boot Firmware or by platform code in BL31.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
Even though RESET_TO_BL31 is designed such that BL31 is the reset BL image,
|
||||||
|
some platforms may wish to pass some arguments to BL31 as per the defined
|
||||||
|
contract between BL31 and previous bootloaders. Previous bootloaders can
|
||||||
|
pass arguments through registers x0 through x3. BL31 will preserve them and
|
||||||
|
propagate them to platform code, which will handle these arguments in an
|
||||||
|
IMPDEF manner.
|
||||||
|
|
||||||
--------------
|
--------------
|
||||||
|
|
||||||
*Copyright (c) 2015-2019, Arm Limited and Contributors. All rights reserved.*
|
*Copyright (c) 2015-2023, Arm Limited and Contributors. All rights reserved.*
|
||||||
|
|
||||||
.. |Default reset code flow| image:: ../resources/diagrams/default_reset_code.png
|
.. |Default reset code flow| image:: ../resources/diagrams/default_reset_code.png
|
||||||
.. |Reset code flow with programmable reset address| image:: ../resources/diagrams/reset_code_no_boot_type_check.png
|
.. |Reset code flow with programmable reset address| image:: ../resources/diagrams/reset_code_no_boot_type_check.png
|
||||||
|
|
Loading…
Add table
Reference in a new issue