summaryrefslogtreecommitdiff
path: root/test/py/tests/test_source.py
diff options
context:
space:
mode:
authorAndre Przywara <andre.przywara@arm.com>2025-03-23 11:35:35 +0000
committerAndre Przywara <andre.przywara@arm.com>2025-03-27 00:26:35 +0000
commitf8f6c867d934948acdcd83bc3b13c02763b5c9df (patch)
tree6590a381d15ce830b55cc502e0c775c58afb33d6 /test/py/tests/test_source.py
parentabb086efd5d08fcb2759d325d39630a576c3dfbc (diff)
sunxi: arm64: boot0.h: move fel_stash_addr variable to the front
To be able to return to the BootROM when booting via the FEL USB protocol, we need to save the CPU state very early, which we need to do in the embedded AArch32 code. At the moment the pointer to the buffer for that state is located *after* the code, which makes the PC relative code fragile: adding or removing instructions will change the distance to that pointer variable. The "new" Allwinner A523 SoC requires more state to be saved (GICv3 system registers), but we must do that *only* on that SoC. Conditional compilation sounds like the easiest solution, but would mean that the distance to that pointer would change. Solve this rather easily by moving the pointer to the *front* of the code: we load that pointer in the first instructions, so the distance would always stay the same. Later in the code we won't need PC relative addressing anymore, so this code can grow or shrink easily, for instance due to conditional compilation. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Diffstat (limited to 'test/py/tests/test_source.py')
0 files changed, 0 insertions, 0 deletions