summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/m68k/gen68360/startup
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1998-04-15 22:09:28 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1998-04-15 22:09:28 +0000
commit70ad028c829f7f8522cb494e1f88357308d98981 (patch)
treedc7268fe734d215fda203db6c3b3a6e76730f260 /c/src/lib/libbsp/m68k/gen68360/startup
parentNew file created by extracting common initialization from every BSP's (diff)
downloadrtems-70ad028c829f7f8522cb494e1f88357308d98981.tar.bz2
update from Eric Norum
Diffstat (limited to 'c/src/lib/libbsp/m68k/gen68360/startup')
-rw-r--r--c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.bootp5
-rw-r--r--c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.prom26
2 files changed, 15 insertions, 16 deletions
diff --git a/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.bootp b/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.bootp
index 3df6a169d6..273d997877 100644
--- a/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.bootp
+++ b/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.bootp
@@ -29,7 +29,7 @@ StackSize = DEFINED(StackSize) ? StackSize : 0x1000;
*/
MEMORY {
ram : ORIGIN = 0x00000000, LENGTH = 64M
- myram : ORIGIN = 4M-512k, LENGTH = 512k
+ myram : ORIGIN = 16M-400k, LENGTH = 400k
rom : ORIGIN = 0x0F000000, LENGTH = 1M
dpram : ORIGIN = 0x0E000000, LENGTH = 8k
}
@@ -62,6 +62,9 @@ SECTIONS {
*(.text)
. = ALIGN (16);
+ *(.eh_fram)
+ . = ALIGN (16);
+
/*
* C++ constructors
*/
diff --git a/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.prom b/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.prom
index c9363fae2a..d459f5e922 100644
--- a/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.prom
+++ b/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.prom
@@ -3,26 +3,19 @@
* Variations in hardware type and dynamic memory size can be made
* by overriding some values with linker command-line arguments.
*
- * These linker directives are for producing a BOOTP PROM.
- * To create the PROM image from the linker output you must use objcopy
- * (--adjust-section-vma) to place the data segment at the end of the text
- * segment in the PROM. The start-up code takes care of copying this region
- * to RAM.
+ * These linker directives are for producing a PROM version.
+ * The data segment is placed at the end of the text segment in the PROM.
+ * The start-up code takes care of copying this region to RAM.
*
* Saskatchewan Accelerator Laboratory
* University of Saskatchewan
* Saskatoon, Saskatchewan, CANADA
* eric@skatter.usask.ca
- *
+ *
* $Id$
*/
/*
- * a.out format doesn't handle prom images very well
- */
-OUTPUT_FORMAT(coff-m68k)
-
-/*
* Declare some sizes.
* XXX: The assignment of ". += XyzSize;" fails in older gld's if the
* number used there is not constant. If this happens to you, edit
@@ -36,8 +29,8 @@ StackSize = DEFINED(StackSize) ? StackSize : 0x1000;
*/
MEMORY {
ram : ORIGIN = 0x00000000, LENGTH = 64M
- rom : ORIGIN = 0xFF000000, LENGTH = 1M
- dpram : ORIGIN = 0xFE000000, LENGTH = 8k
+ rom : ORIGIN = 0x0F000000, LENGTH = 1M
+ dpram : ORIGIN = 0x0E000000, LENGTH = 8k
}
/*
@@ -63,11 +56,14 @@ SECTIONS {
/*
* Text, data and bss segments
*/
- .text : {
+ .text : AT (0x00000000) {
CREATE_OBJECT_SYMBOLS
*(.text)
. = ALIGN (16);
+ *(.eh_fram)
+ . = ALIGN (16);
+
/*
* C++ constructors
*/
@@ -85,7 +81,7 @@ SECTIONS {
etext = .;
_etext = .;
} >rom
- .data : {
+ .data : AT(SIZEOF(.text)) {
copy_start = .;
*(.data)
. = ALIGN (16);