* troubles with ecos-2.0 and mips tx49 port
@ 2003-06-24 23:02 Andy Dyer
0 siblings, 0 replies; only message in thread
From: Andy Dyer @ 2003-06-24 23:02 UTC (permalink / raw)
To: ecos-maintainers
Gentlemen (and Ladies):
I have been working on porting redboot (ecos-2.0 source)
to one of our boards which uses a Toshiba TX4925 CPU (mips with
TX49 core and "stuff"). I started from the ref4955 platform port.
In the course of trying to get it (and my port) to build I noticed
several issues:
1) The ref4955 distributed .cdl file calls out mips-tx49-elf for a
toolchain prefix. I built the the toolchain from the sources as
described on the ecos/build-toolchain.html webpage, but had some
problems:
1a) a patch was required to get gcc to build under cygwin. This
appears to be a known issue with gcc and cygwin. I applied this
patch and all appears to be well:
http://gcc.gnu.org/ml/gcc/2003-04/msg00538.html
It would be nice if there was a mention of this on the
webpage with the other patches.
1b) after building the toolchain the compiler barfs on the
-mabi=eabi command line switch, which makes me wonder
how to enable that in the toolchain I built or if there is
some other thing I need to do. gcc -v gives:
Configured with: /home/adyer/src/gcc-3.2.1/configure
--target=mips-tx49-elf --prefix=/opt/ecos/gnutools/mips-tx49-elf
--enable-languages=c,c++ --with-gnu-as --with-gnu-ld --with-newlib
--with-gxx-include-dir=/opt/ecos/gnutools/mips-tx49-elf
/mips-tx49-elf/include -v : (reconfigured)
/home/adyer/src/gcc-3.2.1/configure - -target=mips-tx49-elf
--prefix=/opt/ecos/gnutools/mips-tx49-elf --enable-languages=c,c++
--with-gnu-as --with-gnu-ld --with-newlib --with-gxx-nclude-dir=/opt/e
cos/gnutools/mips-tx49-elf/mips-tx49-elf/include -v
Thread model: single
gcc version 3.2.1
2) for yucks I tried using the mips-isa32 toolchain, which
likes the -mabi=eabi switch, but barfs on the line
OUTPUT_ARCH(mips:4900) in the linker script file.
3) I am building for a ROM configuration, and the linker script
file for the tx49 is very wrong (looks like R3000-ish code) with
respect to where the exception vectors go for a ROM configuration.
#elif defined(CYG_HAL_STARTUP_ROM)
/* this version for ROM startup */
#define SECTION_rom_vectors(_region_, _vma_, _lma_) \
.rom_vectors _vma_ : _lma_ \
{ KEEP (*(.reset_vector)) \
. = ALIGN(0x100); KEEP (*(.utlb_vector)) \
. = ALIGN(0x80); KEEP(*(.other_vector)) \
. = ALIGN(0x100); KEEP(*(.debug_vector)) } \
> _region_
#endif /* ROM startup version of ROM vectors */
this puts the utlb_vector at 0xbfc00100, the other_vector
at 0xbfc00180, and the debug_vector at 0xbfc00200. According to the
tx49 core manual, the vectors go as follows:
reset vector 0xbfc0_0000
tlb refill 0xbfc0_0200
xtlb miss 0xbfc0_0280
general exc. 0xbfc0_0380
debug 0xbfc0_0400 (ProbEnb=0)
other mips parts would also have a cache error at 0xbfc00300, but tx49
doesn't seem to have it in their docs.
--
Andrew Dyer | adyer@righthandtech.com
Sr. Engineer | (630) 238-0789
RightHand Technologies | (630) 238-0469 (fax)
735 N. Edgewood Ave. |
Suite D |
Wood Dale, IL 60191-1261 |
USA |
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2003-06-24 23:02 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-06-24 23:02 troubles with ecos-2.0 and mips tx49 port Andy Dyer
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).