summaryrefslogtreecommitdiffstats
path: root/libgloss/msp430/msp430xl-sim.ld
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2015-10-06 17:33:16 +0100
committerNick Clifton <nickc@redhat.com>2015-10-06 17:33:16 +0100
commit3b8933900fe28efec3511d32f7a7c6cf0e5105a7 (patch)
treebbacdafc21691a2d2fc0a80c5ffd974327868f7f /libgloss/msp430/msp430xl-sim.ld
parentf296bb3569839b0217ec1a775165d239877e3548 (diff)
downloadcygnal-3b8933900fe28efec3511d32f7a7c6cf0e5105a7.tar.gz
cygnal-3b8933900fe28efec3511d32f7a7c6cf0e5105a7.tar.bz2
cygnal-3b8933900fe28efec3511d32f7a7c6cf0e5105a7.zip
Add support for persistent data to the MSP430 linker scripts.
* msp430/msp430-sim.ld: Add .persistent section. Tidy up section layout. Start RAM above hardware multiply registers. * msp430/msp430xl-sim.ld: Likewise.
Diffstat (limited to 'libgloss/msp430/msp430xl-sim.ld')
-rw-r--r--libgloss/msp430/msp430xl-sim.ld15
1 files changed, 13 insertions, 2 deletions
diff --git a/libgloss/msp430/msp430xl-sim.ld b/libgloss/msp430/msp430xl-sim.ld
index d59cdbf48..71e4543f7 100644
--- a/libgloss/msp430/msp430xl-sim.ld
+++ b/libgloss/msp430/msp430xl-sim.ld
@@ -25,7 +25,7 @@ INCLUDE intr_vectors.ld
toolchain tests can be run against the simulator. */
MEMORY
{
- RAM (rw) : ORIGIN = 0x00200, LENGTH = 0x01e00
+ RAM (rw) : ORIGIN = 0x00500, LENGTH = 0x01b00
ROM (rx) : ORIGIN = 0x02000, LENGTH = 0x0df00
/* The regions from intr_vectors.ld go here. */
HIFRAM (rw) : ORIGIN = 0x10000, LENGTH = 0x80000
@@ -282,7 +282,7 @@ SECTIONS
} > RAM
PROVIDE (__bsssize = SIZEOF(.bss));
- /* This section contains data that is not initialised at startup
+ /* This section contains data that is not initialised during load
*or* application reset. */
.noinit (NOLOAD) :
{
@@ -293,6 +293,17 @@ SECTIONS
PROVIDE (__noinit_end = .);
} > RAM
+ /* This section contains data that *is* initialised during load
+ but *not* on application reset. This section should be in FLASH. */
+ .persistent :
+ {
+ . = ALIGN(2);
+ PROVIDE (__persistent_start = .);
+ *(.persistent)
+ . = ALIGN(2);
+ PROVIDE (__persistent_end = .);
+ } > HIFRAM
+
.upper.bss :
{
/* Note - if this section is not going to be defined then please