This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: How to make a code from RAM startup to ROM startup?
- To: "Jesper Skov" <jskov at cambridge dot redhat dot com>
- Subject: Re: [ECOS] How to make a code from RAM startup to ROM startup?
- From: "Ling Su" <lingsu at palmmicro dot com>
- Date: Wed, 18 Apr 2001 20:26:30 -0700
- Cc: <ecos-discuss at sources dot redhat dot com>
- Organization: Palm Microsystems, Inc.
- References: <000b01c0c493$1632f9d0$0201a8c0@raccoon> <otn19gngg6.fsf@thinktwice.zoftcorp.adsl.dk>
- Reply-To: "Ling Su" <lingsu at palmmicro dot com>
> Ling> situation for me is, I realized that the HAL_IO and serial IO
> Ling> might have conflict problems, so I removed all the diag_printf()
> Ling> call. I just use GDB to download the code onto the board, then
> Ling> issue a "continue" command to let it run, in this case, I am not
> Ling> sure if the HAL_IO layer still alive to access serial port?
>
> It should not be - the HAL_IO in ROM is used for the download. When
> you issue the continue command, the RAM application will take control
> of the board - and if it does not contain any diag_printf calls, it
> should have no HAL_IO code either.
>
> Ling> I remember there is some serial test cases, which use obviously
> Ling> serial IO running under GDB, they are all working very
> Ling> well. From Jesper's explanation, I guess they should fail at
> Ling> least sometime, right?
>
> No - they have been written carefully to allow both the IO serial
> driver and GDB communication to coexist on the same line. They use a
> strict protocol that allow a clean separation of the two data streams
> - you cannot guarantee the same with an application that uses the
> serial while you try to debug it on the same line.
>
Thank Jesper for the clear explaination, but I got more detail questions.
:-) The board I am using (vrc4373) has two serial ports, so I only the
second serial port for my only application, and the first serial port for
GDB downloading purpose. The serious problem I am facing is, I can smoothly
go through the handshaking phase between PC and the evaluation board, but we
the data transfer begans, the serial port will usually dead in the middle,
at that time I checked the Interrupt line of ther 85C30 (serial port) chip,
it is a low, which means the interrupt is activated but no acknowledegment,
so it can not receive any more interrupt. I tried many ways to figure out
what's wrong, unfortunately no outcome. :( Could anyone (or Jesper) please
kindly offer some clue on why the serial port is so fragile on large data
transfer? Thanks in advance!
Best Regards,
-Ling