Weird problem on rs232 vs USB-serial...
mike
antispam21 at verizon.net
Tue Feb 24 22:35:49 UTC 2009
Thanks Jiri,
What puzzled me was that the same bootrom/RTEMS app worked
fine if the target UART connected to USB<->serial...
We can live with it (using USB<->serial instead of ttyS1) but I just
couldn't keep it out of my head as to why can this happened.. :-)
-mike-
Jiri Gaisler wrote:
>
> The problem might be with your boot loader. We have created many
> RTEMS boot images with mkprom/mkprom2 and never seen this problem.
> If you use LEON2FT, then you also have to wash all registers
> and memory to initialize the BCH checksum, before launching RTEMS ...
>
> mike wrote:
>> Thanks Jiri,
>>
>> 1) with grmon, everything was fine. The target DSU was connect on
>> ttyS0 and Uart on ttyS1.
>> We always used 'grmon -freq 66 -leon2', and it connected fine.
>> 'load xxx' then 'run' was fine as
>> I could see the RTEMS shell coming up on ttyS1 (with minicom
>> connected to
>> ttyS1, 38400, 8N1 and no flow control). The target has a basic
>> bootrom but
>> we were not using it in this case. The exe file was an executable
>> linked and
>> resolved to 0x41000000 (for our purpose).
>>
>> 2) Now, when we were not using grmon, on power up the target, the
>> bootrom
>> messages came up on ttyS1 as expected. We then loaded the same
>> RTEMS app
>> to ram at 0x41000000 with the bootrom ( and with minicom raw
>> upload), with a binary
>> file produced from .exe in (1) above by sparc-rtems-objcopy -O
>> binary,
>> then jump to 0x41000000. Nothing on ttyS1
>>
>> 3) the funny thing is, with the target uart port connected to
>> usb<->serial, repeating
>> (2) above worked as expected (RTEMS shell came up on ttyUSB0, with
>> minicom connected to ttyUSB0, same 38400, 8N1, no flow control.
>>
>> Anything else I can look? Thanks!
>> -mike-
>>
>> PS:
>>
>> - the bootrom set the target uart to 38400, no flow control , 8N1
>> - I set it (0x80000078 & 7c, UART control/scaler) again in the RTEMS
>> app, just to test. No change.
>> - I use shell.c in the RTEMS tree. I also set B38400 there. No change.
>>
>>
>>
>> Jiri Gaisler wrote:
>>> If you load your application via grmon, check that the
>>> detected target frequency is correct. Grmon will use
>>> this frequency to set the baud rate of the UARTs.
>>> If the frequency is wrong, the baud rate will be
>>> set wrong and your host UART will not receive the
>>> characters. Try to use the -freq XX option when starting
>>> grmon to specify the target system frequency.
>>>
>>> Jiri.
>>>
>>
>>
>>
>
>
More information about the users
mailing list