8600 serial support

Benjamin Herrenschmidt benh at kernel.crashing.org
Thu Oct 9 07:45:11 EST 2008


On Wed, 2008-10-08 at 12:51 -0700, Kevin Diggs wrote:
> Hi,
> 
> 	I thought I might take a whack at fixing the 2.6 serial driver
> for my 8600. At the top of pmac_zilog.c (2.6.26) there is a todo for DMA.
> A quick glance at macserial.c (2.4.31) suggests it has dbdma support for
> receive. Anyone know of any pitfalls for adding dbdma support for
> pmac_zilog.c?

Yes, it's not totally trivial and I wouldn't recommend using the weirdo
code in macserial (it does things that I don't understand how they work
with the dbdma engine).

The best way I see is to start from scratch with two different
mechanisms:

 - For Tx, that's the easiest, the fire off DMA's for outgoing chars,
maybe queue up a few descriptors to let data accumulate.

 - For Rx, one descriptor per byte. That sucks but I think that's also
what Apple does. No need to have a huge Rx buffer anyway. That gives you
precise Rx status to the byte.

Ben.




More information about the Linuxppc-dev mailing list