[ECOS] Port problem

Cristiano Ligieri Pereira cpereira@ics.uci.edu
Thu Aug 16 22:47:00 GMT 2001


Hi again!

I don't know whether my previous question made no sense or if it was too
simple... since I've got no answer. :-|

I'm working on the port of an XScale based platform. So far I have done a
reasonable progress (in my opinion...) but now I'm kind of stuck. :(

I started the port copying the IQ80310 and modifying it's files since both
platforms are quite different (except the processor, obviously). Then the
next thing I did was to clean up the macro PLATFORM_SETUP1 so that the
specific IQ80310 initializations were removed and the specific
initializations of my platform were inserted (those I got from CygMon
source code). After this I've changed the memory map (that I actually sent
to this list yesterday) so that I have RAM at 0x0.

After this I've been trying two things: load a Hello World eCos
application configured to execute on RAM (by means of GDB/Cygmon) and load
RedBoot configured to execute at RAM as well. For both I load the
application at the original RAM address (since for cygmon this is still
the RAM memory address) and for both I'm executing the code in
PLATFORM_SETUP1, which remaps the memory.

When I try to execute the Hello World application the code crashes when
calling diag_printf function in the main body. For the RAM/RedBoot code it
is crashing when cleaning the BSS (I've checked the addresses I'm hitting
and they fall within the original memory addresses 0xC0000000).

how should I do about the serial communication with the host? Can I reuse
the communication already established with CygMon? Do I need to break it
and restart a new connection?

Am I on the right track? I was feeling good about it till two days
ago. But now that I'm stuck I getting frustrated instead. :-|

Thanks again,
Cristiano.

> Hi all,
> 
> I'm porting eCos to a XScale based platform. The board have Cygmon in its
> Flash memory, which is invoked at reset time. I can load an eCos
> application in it (I'm modifying the port to IQ80310). So far I have
> modified the file PLATFORM_SETUP1, in which I change the memory map and
> initialize (or re-initialize since cygmon initialize them already) all the
> necessary components (caches, BTB, MMU, etc...). All this seems to work
> fine. The memory mapping is changed so that I have SDRAM at address 0x0.
> 
> Now I'm a little confused on how to make the serial communication work. I
> can download an application using GDB. So obviously there is a connection
> between the target and the GDB in the host. What should I do to keep using
> this connection to send debugging messages to the host? Or should I break
> this connection and restart it somehow?
> 
> Thanks in advance,
> Cristiano.
> 
> ------------------------------------------------------------
> Cristiano Ligieri Pereira - http://www.ics.uci.edu/~cpereira




More information about the Ecos-discuss mailing list