diff --git a/src/arch/armv7/bootblock.lds b/src/arch/armv7/bootblock.lds index 837039653b..f16e72b858 100644 --- a/src/arch/armv7/bootblock.lds +++ b/src/arch/armv7/bootblock.lds @@ -22,6 +22,11 @@ OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm") OUTPUT_ARCH(arm) +PHDRS +{ + to_load PT_LOAD; +} + TARGET(binary) SECTIONS { @@ -39,7 +44,7 @@ SECTIONS *(.rom.data.*); *(.rodata.*); _erom = .; - } = 0xff + } : to_load = 0xff /DISCARD/ : { *(.comment) diff --git a/src/arch/armv7/coreboot_ram.ld b/src/arch/armv7/coreboot_ram.ld index 487f610b84..38eaca3667 100644 --- a/src/arch/armv7/coreboot_ram.ld +++ b/src/arch/armv7/coreboot_ram.ld @@ -24,6 +24,11 @@ INCLUDE ldoptions ENTRY(stage_entry) +PHDRS +{ + to_load PT_LOAD; +} + SECTIONS { . = CONFIG_SYS_SDRAM_BASE; @@ -38,7 +43,7 @@ SECTIONS *(.text.*); . = ALIGN(16); _etext = .; - } + } : to_load .ctors : { . = ALIGN(0x100); diff --git a/src/arch/armv7/romstage.ld b/src/arch/armv7/romstage.ld index 568ac1aa94..0555fc45ff 100644 --- a/src/arch/armv7/romstage.ld +++ b/src/arch/armv7/romstage.ld @@ -30,6 +30,11 @@ OUTPUT_ARCH(arm) ENTRY(stage_entry) +PHDRS +{ + to_load PT_LOAD; +} + SECTIONS { /* TODO make this a configurable option (per chipset). */ @@ -41,7 +46,7 @@ SECTIONS *(.text.stage_entry.armv7); *(.text.startup); *(.text); - } + } : to_load .romdata . : { *(.rodata);