Michael Gao | 12 Mar 20:04
Picon

Re: PATCH dm9ks interrupt handling


On Wed, 2007-03-07 at 21:05 -0800, Dan Fandrich wrote:
> On Wed, Mar 07, 2007 at 11:49:16PM -0500, mgao <at> neuros.us wrote:
> > MG: One big part of the trouble (definitely not right yet, messy too?) is
> > Ethernet DMA support. Currently the Ethernet packet receiving is directly
> > handled by the ISR (which is why I am afraid taking out the packet limit check
> > may cause holding the interrupt too long), thus DMA can not be fully supported
> > without rewriting this part of the logic. The code today enables the DMA in the
> > ISR but has to _wait_ till DMA is done, which is pretty pointless.
> >  
> > Does anyone have an idea of how this should be fixed?
> 
> Why not start the DMA in the ISR before exiting, then process the packet from
> another ISR triggered by the end of the DMA transfer?
Yes, this is basically the idea. The challenge is how to split current
packet receive routine from simple synchronous operation to asynchronous
one. 


Gmane