Subject: Re: pmac_zilog debugging ...

From: Benjamin Herrenschmidt <[email-masked]>
Date: Fri, 14 Nov 2008 08:44:14 +1100

On Thu, 2008-11-13 at 03:38 -0800, Kevin Diggs wrote:

> 12,206 PowerMac Zilog interrupts
> 
> Interrupt load is higher without the DMA support.
> 
> Is it possible that this hardware was not meant to be used without the
> DMA (i.e. it does not work quite right?)?

Well, the HW Rx buffer is only 3 bytes so if you have high interrupt
latencies you are more likely to loose data...

Now, as I said, have you looked at flow control ? It's a likely cause of
problems and it's possible that pmac_zilog doesn't do it the way
macserial did...

Regarding DMA, it's possible to implement, though there were interesting
issues with the way it was done in macserial, it should be done
differently in pmac_zilog.

I think the only approach that really works properly (though it's fugly)
is what Apple does in OSX I think, which is to have a DMA descriptor per
input byte (no need for a huge DMA buffer anyway).

Cheers,
Ben.