From e1d5bcb1968e280b8ebdf6c8b12e8a87167fd890 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Mon, 26 Jan 2015 22:10:47 -0800 Subject: altos/stmf0: Fix linker scripts to make ao_boot work The flash loader ended up assuming ao_boot was at the start of ram, while the application stuck it after the interrupt table (where it needs to go). Signed-off-by: Keith Packard --- src/stmf0/altos-loader.ld | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'src/stmf0/altos-loader.ld') diff --git a/src/stmf0/altos-loader.ld b/src/stmf0/altos-loader.ld index 2feb515d..86cf1838 100644 --- a/src/stmf0/altos-loader.ld +++ b/src/stmf0/altos-loader.ld @@ -29,14 +29,15 @@ SECTIONS { * Rom contents */ - .text : { + .interrupt : { __text_start__ = .; *(.interrupt) /* Interrupt vectors */ + } > rom - . = ORIGIN(rom) + 0x100; - + .text ORIGIN(rom) + 0x100 : { ao_romconfig.o(.romconfig*) ao_product.o(.romconfig*) + *(.text*) /* Executable code */ *(.ARM.exidx* .gnu.linkonce.armexidx.*) *(.rodata*) /* Constants */ @@ -47,7 +48,7 @@ SECTIONS { * the application and bootloader share the same addresses. * This must be all uninitialized data */ - .boot (NOLOAD) : { + .boot ORIGIN(ram) + SIZEOF(.interrupt) (NOLOAD) : { __boot_start__ = .; *(.boot) __boot_end__ = .; -- cgit v1.2.3