Unverified Commit 2c269b47 authored by Soby Mathew's avatar Soby Mathew Committed by GitHub
Browse files

Merge pull request #1904 from lmayencourt/lm/move_pie_fixup

PIE: Fix reloc at the beginning of bl31 entrypoint
parents 981db33f 330ead80
......@@ -23,7 +23,6 @@
*/
func bl31_entrypoint
#if !RESET_TO_BL31
/* ---------------------------------------------------------------
* Stash the previous bootloader arguments x0 - x3 for later use.
* ---------------------------------------------------------------
......@@ -33,6 +32,18 @@ func bl31_entrypoint
mov x22, x2
mov x23, x3
/* --------------------------------------------------------------------
* If PIE is enabled, fixup the Global descriptor Table and dynamic
* relocations
* --------------------------------------------------------------------
*/
#if ENABLE_PIE
mov_imm x0, BL31_BASE
mov_imm x1, BL31_LIMIT
bl fixup_gdt_reloc
#endif /* ENABLE_PIE */
#if !RESET_TO_BL31
/* ---------------------------------------------------------------------
* For !RESET_TO_BL31 systems, only the primary CPU ever reaches
* bl31_entrypoint() during the cold boot flow, so the cold/warm boot
......@@ -50,6 +61,7 @@ func bl31_entrypoint
_init_c_runtime=1 \
_exception_vectors=runtime_exceptions
#else
/* ---------------------------------------------------------------------
* For RESET_TO_BL31 systems which have a programmable reset address,
* bl31_entrypoint() is executed only on the cold boot path so we can
......@@ -76,17 +88,6 @@ func bl31_entrypoint
mov x23, 0
#endif /* RESET_TO_BL31 */
/* --------------------------------------------------------------------
* If PIE is enabled, fixup the Global descriptor Table and dynamic
* relocations
* --------------------------------------------------------------------
*/
#if ENABLE_PIE
mov_imm x0, BL31_BASE
mov_imm x1, BL31_LIMIT
bl fixup_gdt_reloc
#endif /* ENABLE_PIE */
/* --------------------------------------------------------------------
* Perform BL31 setup
* --------------------------------------------------------------------
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment