diff options
author | Tom Rini <trini@konsulko.com> | 2015-11-16 08:35:38 -0500 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2015-11-16 08:35:38 -0500 |
commit | 98e73c834467ef6f1d3e9a8102745e16b3128ac1 (patch) | |
tree | a73931f3865dea561750d6a738dbd1738ba8c666 /arch/arm/cpu/u-boot.lds | |
parent | 618a51e9aefe1e03f498ea48bfab70a0b2c9be39 (diff) | |
parent | ec26c1eef735befb7011c24e08e6310ab6dc9be6 (diff) |
Merge branch 'master' of git://www.denx.de/git/u-boot-imx
Diffstat (limited to 'arch/arm/cpu/u-boot.lds')
-rw-r--r-- | arch/arm/cpu/u-boot.lds | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/arch/arm/cpu/u-boot.lds b/arch/arm/cpu/u-boot.lds index 03cd9f60f9..d48a905cf3 100644 --- a/arch/arm/cpu/u-boot.lds +++ b/arch/arm/cpu/u-boot.lds @@ -14,6 +14,23 @@ OUTPUT_ARCH(arm) ENTRY(_start) SECTIONS { + /* + * Discard the relocation entries for secure text. + * The secure code is bundled with u-boot image, so there will + * be relocations entries for the secure code, since we use + * "-mword-relocations" to compile and "-pie" to link into the + * final image. We do not need the relocation entries for secure + * code, because secure code will not be relocated, it only needs + * to be copied from loading address to CONFIG_ARMV7_SECURE_BASE, + * which is the linking and running address for secure code. + * If keep the relocation entries in .rel.dyn section, + * "relocation offset + linking address" may locates into an + * address that is reserved by SoC, then will trigger data abort. + * + * The reason that move .rel._secure at the beginning, is to + * avoid hole in the final image. + */ + /DISCARD/ : { *(.rel._secure*) } . = 0x00000000; . = ALIGN(4); |