Hi all, This patch adds all the little fixes and tweaks that I have made to this driver over the last year.
In a nutshell I have added support for the RX error interrupts as well as
the none buffer related TX error interrupts.
I thought that since the driver only transmits one frame at a time in its
current implementation that the under/over run interrupts
could be ignored for now.
I have also fixed a small bug in the receive function that cause the driver
to hang in an infinite loop when the sg_list buffers were bigger
than the driver receive buffers.
There still remains a very nasty bug in the eth_deliver/DSR function. The
RBD handling of this function sometimes gets it wrong and
Then hangs in an infinite loop while trying to find a SOF or the first non
software owned Receive buffer. I have added a quick fix kludge to
Try and clear out of the loop after it has cycled through all the buffers at
least once. At the moment I have run out of time to spend on the driver
though.
We are much closer to a real driver but it is still not there yet.
Apologies for not generating the patch from the packages directory, I
somehow stuffed up the cvs tree
and was only able to do the diff from the drivers' current directory
(packages/devs/eth/arm/at91/current/) .
Happy Hacking
John Eigelaar
at91_eth.patch
Description: Binary data
