This is the mail archive of the
ecos-discuss@sourceware.cygnus.com
mailing list for the eCos project.
Re: pid_serial driver
- To: ecos-discuss at sourceware dot cygnus dot com
- Subject: Re: [ECOS] pid_serial driver
- From: Grant Edwards <grante at visi dot com>
- Date: Tue, 7 Mar 2000 10:20:08 -0600
- References: <20000218121108.A25521@visi.com>
> The pid_serial driver appears to be a generic 16c550 driver,
> right? Apart from the addresses of the UARTs being hard-wired
> into the source code (grin) I don't see anyting that looks
> specific to the PID board or even to the ARM processor.
FYI,
I've noticed that the 16c550 driver (pid_serial_with_ints.c)
doesn't take advantage of the transmit FIFO. For each Tx
interrupt it only writes a single byte to the UART. IIRC, on
the '550 there's no read the Tx FIFO count or tell when the
FIFO is full. You just have to "know" that when you get an
interrupt you can write 12 bytes. (I think it's 12...)
With the '850, you can actually read the Tx FIFO count, and use
that instead of the transmitter holding register empty bit in
*_putc() to determine if there's room for another byte.
--
Grant Edwards
grante@visi.com