This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: "packets eaten" with AT91 EMAC Ethernet driver


On Mon, Jun 09, 2008 at 05:19:02PM +0200, J?rgen Lambrecht wrote:
> Hello,
>
> Since I solved the bugs in the AT91 EMAC driver
> (RX: reset of ?bytes_in_list? (position in current sg_list))(TX: at  
> TXERR IRQ, reset SW pointer; set all used bits to 0 instead of 1),
> I always had the same problem: after a while of communicating over  
> Ethernet with the AT91 EMAC, packets get ?eaten?.
>
> TX Packets get stuck, and they need an RX packet to get out.

It sounds like missed interrupts, or a race condition in the interrupt
handling. 

You might be interested in looking at the Linux drivers/net/macb.c
file. This is i think the Linux driver for the EMAC. It might give you
some clues. It is interesting that they initialize all the TX buffers
as being used, the opposite to what you do.

     Andrew

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]