diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2004-04-19 22:08:13 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2004-04-19 22:08:13 +0000 |
commit | d3fdf89f66d8ddd95744bc03e681a10d15d0c414 (patch) | |
tree | 7dc81d407c5d4abd9ab8587db130278483243d4c /c/src | |
parent | 2004-04-19 Ralf Corsepius <ralf_corsepius@rtems.org> (diff) | |
download | rtems-d3fdf89f66d8ddd95744bc03e681a10d15d0c414.tar.bz2 |
2004-04-19 Joel Sherrill <joel@OARcorp.com>
* start/start.S: DWARF on the m68k requires that all objects me a
multiple of a 16-bit word in length.
Diffstat (limited to 'c/src')
-rw-r--r-- | c/src/lib/libbsp/m68k/gen68340/ChangeLog | 5 | ||||
-rw-r--r-- | c/src/lib/libbsp/m68k/gen68340/start/start.S | 25 |
2 files changed, 25 insertions, 5 deletions
diff --git a/c/src/lib/libbsp/m68k/gen68340/ChangeLog b/c/src/lib/libbsp/m68k/gen68340/ChangeLog index f1228990fe..9c42a24504 100644 --- a/c/src/lib/libbsp/m68k/gen68340/ChangeLog +++ b/c/src/lib/libbsp/m68k/gen68340/ChangeLog @@ -1,3 +1,8 @@ +2004-04-19 Joel Sherrill <joel@OARcorp.com> + + * start/start.S: DWARF on the m68k requires that all objects me a + multiple of a 16-bit word in length. + 2004-04-02 Ralf Corsepius <ralf_corsepius@rtems.org> * start/start.S: Include <rtems/asm.h> instead of <asm.h>. diff --git a/c/src/lib/libbsp/m68k/gen68340/start/start.S b/c/src/lib/libbsp/m68k/gen68340/start/start.S index d5893a1127..cad8293c0c 100644 --- a/c/src/lib/libbsp/m68k/gen68340/start/start.S +++ b/c/src/lib/libbsp/m68k/gen68340/start/start.S @@ -402,8 +402,14 @@ BEGIN_DATA /* -- Initialization stack and vars -- */ +/* When using DWARF, everything must be a multiple of 16-bits. */ +#if 1 +_AsteccBusWidth: ds.w 0x0101 +_AsteccCsSwitch: ds.w 0x0101 +#else _AsteccBusWidth: ds.b 1 _AsteccCsSwitch: ds.b 1 +#endif _AsteccCpuName: ds.l 1 .align 4 @@ -420,7 +426,9 @@ BEGIN_CODE dc.l _crt0_cold_start /* reset PC */ dc.l _crt0_warm_start - .ascii "BOOT XHM68K/Spectra for ASTECC 68349 and 68340 boards" +/* When using DWARF, everything must be a multiple of 16-bits. */ + .ascii "BOOT XHM68K/Spectra for ASTECC 68349 and 68340 boards " + .text dc.w 0 .align 4 @@ -525,10 +533,17 @@ _copy_start_code: /* Astecc 68349 board : chip-select initialization values */ _table_csepld: - dc.b (_EPLD_CS_BASE&0x0F)+0x80 | 16 bits, 0ws - dc.b 0x80 | 16 bits, 0 ws - dc.b 0x90 | 16 bits, ext /dsack - dc.b 0x90 | 16 bits, ext /dsack +/* When using DWARF, everything must be a multiple of 16-bits. */ +#if 1 + dc.w (((_EPLD_CS_BASE&0x0F)+0x80) << 8) | 0x80 | 16 bits, 0ws + dc.w 0x9090 | 16 bits, ext /dsack + +#else + dc.b (_EPLD_CS_BASE&0x0F)+0x80 | 16 bits, 0ws + dc.b 0x80 | 16 bits, 0 ws + dc.b 0x90 | 16 bits, ext /dsack + dc.b 0x90 | 16 bits, ext /dsack +#endif _table_cs349: dc.l 0x003FFFF4 | Mask CS0 (4Mbytes PROM, 32bits, 1WS) |