Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Jacobowitz <drow@false.org>2006-12-15 19:47:08 +0300
committerDaniel Jacobowitz <drow@false.org>2006-12-15 19:47:08 +0300
commit0efbda1a83df0756f4cdcdbc03ddbd2552a73a8e (patch)
tree65c47c33fa5ed02cdfd4eae4dafffabde87163ad
parent7d38f3c3aeee12faa684db83c08f4ba59718170d (diff)
* libgloss/m68k/fido-crt0.S (_start): Set %vbr for context 0 in
RAM configs. * libgloss/m68k/fido.sc: Clean up formatting. Add comments. Move stack and heap end to SDRAM for SRAM and SDRAM configurations. Put RedBoot application text in SRAM.
-rw-r--r--ChangeLog.csl8
-rw-r--r--libgloss/m68k/fido-crt0.S13
-rw-r--r--libgloss/m68k/fido.sc24
3 files changed, 32 insertions, 13 deletions
diff --git a/ChangeLog.csl b/ChangeLog.csl
index 782e4d31f..d786dc28b 100644
--- a/ChangeLog.csl
+++ b/ChangeLog.csl
@@ -1,3 +1,11 @@
+2006-12-15 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * libgloss/m68k/fido-crt0.S (_start): Set %vbr for context 0 in
+ RAM configs.
+ * libgloss/m68k/fido.sc: Clean up formatting. Add comments. Move
+ stack and heap end to SDRAM for SRAM and SDRAM configurations.
+ Put RedBoot application text in SRAM.
+
2006-12-13 Nathan Sidwell <nathan@codesourcery.com>
libgloss/
diff --git a/libgloss/m68k/fido-crt0.S b/libgloss/m68k/fido-crt0.S
index 1a585367d..89910514d 100644
--- a/libgloss/m68k/fido-crt0.S
+++ b/libgloss/m68k/fido-crt0.S
@@ -239,12 +239,15 @@ SYM (_start):
bgt .LdataCopyLoop
#endif /* ROM */
+#ifdef FIDO_ram
+ /* For ROM configs, the linker script ensures that
+ _vector_table is placed at the proper place. For RAM
+ configs, we have to adjust it ourselves. */
+ movel IMM (SYM (_vector_table)), FIDO_CTX0_VBR
+#endif
+
#ifndef FIDO_redboot
-/*
- * Setup interrupt vectors for secondary contexts. We do not need to
- * worry about _vector_table, since the linker script ensures that
- * _vector_table is placed at the proper place.
- */
+ /* Setup interrupt vectors for secondary contexts. */
movel IMM (SYM (_vector_table1)), FIDO_CTX1_VBR
movel IMM (SYM (_vector_table2)), FIDO_CTX2_VBR
movel IMM (SYM (_vector_table3)), FIDO_CTX3_VBR
diff --git a/libgloss/m68k/fido.sc b/libgloss/m68k/fido.sc
index 30ce508ad..07aa6e366 100644
--- a/libgloss/m68k/fido.sc
+++ b/libgloss/m68k/fido.sc
@@ -1,5 +1,9 @@
-SRAM_ORIGIN=0x3000000
-SRAM_LENGTH=0x100000
+SRAM_ORIGIN=0x03000000
+SRAM_LENGTH=0x00100000
+
+# HEAPEND must be in the same memory region as DATA. STACK should be
+# above HEAPEND, also in the same region, for configurations which
+# need __stack.
case $MODE in
rom)
@@ -7,29 +11,33 @@ case $MODE in
TEXT=rom
DATA=sram
DATALOAD="rom"
- STACK=0x30ffffc
+ STACK=0x030ffffc
HEAPEND=0x03080000
;;
sram)
CRT0=ram
TEXT=sram
DATA=sdram
- STACK=0x30ffffc
- HEAPEND=0x03080000
+ STACK=0x021ffffc
+ HEAPEND=0x02180000
+ # Leave the rest of SDRAM for manual use.
;;
sdram)
CRT0=ram
TEXT=sdram
DATA=sdram
- STACK=0x30ffffc
- HEAPEND=0x03080000
+ STACK=0x021ffffc
+ HEAPEND=0x02180000
+ # Leave the rest of SDRAM for manual use.
;;
redboot)
CRT0=redboot
# We need to avoid the area used by RedBoot
SRAM_ORIGIN=0x3080000
SRAM_LENGTH=0x80000
- TEXT=sdram
+ # Put code for RedBoot apps in SRAM, since the fido1100 has
+ # trouble running code from SDRAM.
+ TEXT=sram
DATA=sdram
STACK=0
HEAPEND=0x027f0000