This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: How to make a code from RAM startup to ROM startup?


> 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



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]