AW: [U-Boot-Users] How To Register Interrupt Routines in ARM920T?

Martin Krause Martin.Krause at tqs.de
Wed Dec 8 09:35:53 CET 2004


Hi Miguel,

Rodel Miguel wrotes on Mittwoch, 8. Dezember 2004 07:42:
> I am porting U-Boot to a custom board (ARM920T) and I have to do
> something about the UART (ns16550.c) driver to support (I know WD
> would disagree with this :p) XON/XOFF.  I have to do this because my
> board can support only < 19200 baudrates.  At 19200 baudrate, I have a

Hm, it should work better with lower baud rates, not worse.

> functional serial console but downloading binaries using loadb, kermit
> would always say that the remote host is not reponding (ERROR: Remote
> Kermit Not Responding).  I debugged this on the getc level and
> verified that my board's U-Boot can accept the first few data from my
> PC's kermit and then the loadb function hangs, i.e. does not accept
> any data.  I think this is because my UART's FIFO is not handled well,
> and probably needs software flow control.

I don't think software flow control is much of help. If your interrupt
routine would be fast enough to send an XOFF to the host bevore your
FIFO overflows, it should also be fast enough to read your FIFO and 
copy the received Bytes to RAM bevore an overflow occours.

Since U-Boot drivers normally don't use interrupts, a serial driver
which polls the FIFO (the receive register) should be OK and fast 
enough, not to swallow bytes.

I have a running Board with ARM920T CPU. There the loadb command 
works well with a polling driver at 9600 Baud.

Regards,
Martin




More information about the U-Boot mailing list