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: bugs in AT91 Ethernet driver


> During debugging, I see that 'priv->tx_busy' stays 'true', because the  
> TX-Complete bit (COMP of TSR reg) is never set - I also see that the  
> TX-Used Bit Read (UBR of TSR reg) is set, which is normal I think  
> because the TX buffers have not yet been released (because COMP is not  
> set..). But the TX-GO bit is 0, meaning that transmit is not busy.
>
> I added code to release the TX buffers and to clear 'priv->tx_busy' when  
> TX-GO is read 0. Then at each ARP request, there is an ARP reply, but it  
> does not get out.. (monitoring with Wireshark)
> What's happening - it is like the EMAC TX is blocked, but why?

It might be worth printing out the value of isr in at91_eth_isr. As
the comment says, error conditions are not handled. Maybe you are
getting a buffer under run?

        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]