diff --git a/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-flash-app.ld b/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-flash-app.ld old mode 100644 new mode 100755 index 9e6aaed899..85b5060790 --- a/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-flash-app.ld +++ b/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-flash-app.ld @@ -78,25 +78,23 @@ SECTIONS _etext = ABSOLUTE(.); } > FLASH - .init_section : ALIGN(4) { + .init_section : ALIGN(16) { _sinit = ABSOLUTE(.); *(.init_array .init_array.*) _einit = ABSOLUTE(.); } > FLASH - .ARM.extab : { + .ARM.extab : ALIGN(16) { *(.ARM.extab*) } > FLASH - .ARM.exidx : ALIGN(4) { + .ARM.exidx : ALIGN(16) { __exidx_start = ABSOLUTE(.); *(.ARM.exidx*) __exidx_end = ABSOLUTE(.); } > FLASH - _eronly = ABSOLUTE(.); - - .data : ALIGN(4) { + .data : ALIGN(16) { _sdata = ABSOLUTE(.); *(.data .data.*) *(.gnu.linkonce.d.*) @@ -105,7 +103,9 @@ SECTIONS _edata = ABSOLUTE(.); } > SRAM AT > FLASH - .bss : ALIGN(4) { + _eronly = LOADADDR(.data); + + .bss : ALIGN(16) { _sbss = ABSOLUTE(.); *(.bss .bss.*) *(.gnu.linkonce.b.*) diff --git a/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-flash-boot.ld b/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-flash-boot.ld index 02d9c14c99..e9a80ef723 100644 --- a/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-flash-boot.ld +++ b/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-flash-boot.ld @@ -76,25 +76,23 @@ SECTIONS _etext = ABSOLUTE(.); } > FLASH - .init_section : ALIGN(4) { + .init_section : ALIGN(16) { _sinit = ABSOLUTE(.); *(.init_array .init_array.*) _einit = ABSOLUTE(.); } > FLASH - .ARM.extab : { + .ARM.extab : ALIGN(16) { *(.ARM.extab*) } > FLASH - .ARM.exidx : ALIGN(4) { + .ARM.exidx : ALIGN(16) { __exidx_start = ABSOLUTE(.); *(.ARM.exidx*) __exidx_end = ABSOLUTE(.); } > FLASH - _eronly = ABSOLUTE(.); - - .data : ALIGN(4) { + .data : ALIGN(16) { _sdata = ABSOLUTE(.); *(.data .data.*) *(.gnu.linkonce.d.*) @@ -103,7 +101,9 @@ SECTIONS _edata = ABSOLUTE(.); } > SRAM AT > FLASH - .bss : ALIGN(4) { + _eronly = LOADADDR(.data); + + .bss : ALIGN(16) { _sbss = ABSOLUTE(.); *(.bss .bss.*) *(.gnu.linkonce.b.*) diff --git a/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-sdram.ld b/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-sdram.ld index 423d2af889..cab2f72877 100644 --- a/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-sdram.ld +++ b/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-sdram.ld @@ -79,26 +79,23 @@ SECTIONS _etext = ABSOLUTE(.); } > SDRAM - .init_section : { + .init_section : ALIGN(16) { _sinit = ABSOLUTE(.); *(.init_array .init_array.*) _einit = ABSOLUTE(.); } > SDRAM - .ARM.extab : { + .ARM.extab : ALIGN(16) { *(.ARM.extab*) } > SDRAM - __exidx_start = ABSOLUTE(.); - .ARM.exidx : { + .ARM.exidx : ALIGN(16) { + __exidx_start = ABSOLUTE(.); *(.ARM.exidx*) + __exidx_end = ABSOLUTE(.); } > SDRAM - __exidx_end = ABSOLUTE(.); - - _eronly = ABSOLUTE(.); - - .data : { + .data : ALIGN(16) { _sdata = ABSOLUTE(.); *(.data .data.*) *(.gnu.linkonce.d.*) @@ -107,6 +104,8 @@ SECTIONS _edata = ABSOLUTE(.); } > SRAM AT > SDRAM + _eronly = LOADADDR(.data); + .bss : { _sbss = ABSOLUTE(.); *(.bss .bss.*)