diff options
author | Manish Pandey <manish.pandey2@arm.com> | 2020-03-19 22:35:13 +0000 |
---|---|---|
committer | TrustedFirmware Code Review <review@review.trustedfirmware.org> | 2020-03-19 22:35:13 +0000 |
commit | 6cdd55d1c5656ee9c1a4aaca0f57947f0edcb02c (patch) | |
tree | 3f8ce3543f24f13e6718519f9d3a92b972bb515b /include | |
parent | f097fb70c311ba0b7eaee2101afa396981c2c534 (diff) | |
parent | 30f310052672d2500479989846380d050033cd44 (diff) | |
download | platform_external_arm-trusted-firmware-6cdd55d1c5656ee9c1a4aaca0f57947f0edcb02c.tar.gz platform_external_arm-trusted-firmware-6cdd55d1c5656ee9c1a4aaca0f57947f0edcb02c.tar.bz2 platform_external_arm-trusted-firmware-6cdd55d1c5656ee9c1a4aaca0f57947f0edcb02c.zip |
Merge "el3_entrypoint_common: avoid overwriting arg3" into integration
Diffstat (limited to 'include')
-rw-r--r-- | include/arch/aarch32/el3_common_macros.S | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/include/arch/aarch32/el3_common_macros.S b/include/arch/aarch32/el3_common_macros.S index 7559de446..4fd746d5a 100644 --- a/include/arch/aarch32/el3_common_macros.S +++ b/include/arch/aarch32/el3_common_macros.S @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016-2019, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2016-2020, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -329,6 +329,11 @@ bl inv_dcache_range #endif + /* + * zeromem uses r12 whereas it is used to save previous BL arg3, + * save it in r7 + */ + mov r7, r12 ldr r0, =__BSS_START__ ldr r1, =__BSS_SIZE__ bl zeromem @@ -339,6 +344,9 @@ bl zeromem #endif + /* Restore r12 */ + mov r12, r7 + #if defined(IMAGE_BL1) || (defined(IMAGE_BL2) && BL2_AT_EL3 && BL2_IN_XIP_MEM) /* ----------------------------------------------------- * Copy data from ROM to RAM. |