This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
MPC860 Ethernet driver problem.
- To: "'ecos-discuss at sources dot redhat dot com'" <ecos-discuss at sources dot redhat dot com>
- Subject: [ECOS] MPC860 Ethernet driver problem.
- From: Geoff Patch <grp at cea dot com dot au>
- Date: Tue, 1 May 2001 17:34:09 +1000
Hi All,
We have ported eCos to our custom MPC860 based board, and we've run across
a problem with the Ethernet driver. The problem is that when the Ethernet
cable is disconnected from the board for more than a couple of seconds we
lose LAN connectivity permanently. In other words, when we reconnect the
LAN cable, we don't recover the connection.
I've had a look through the Ethernet driver in if_quicc.c and observed that
when the LAN is disconnected the function quicc_eth_can_send() starts
returning zero after a few transmission attempts, indicating that there are
no free transmit buffers available. Once we get into this state we never
recover from it.
I've implemented a quick brute force fix, which is to reinitialise the SCC
when this condition is detected. This seems to work but I'm not real
pleased with it.
I'm unsure at the moment whether this is a generic problem, or something
that is characteristic of our particular board. Has anybody else observed
this problem, and if so come up with a more elegant solution?
Thanks in Advance
Geoff
------------------------------
Geoff Patch
Senior Software Engineer
CEA Technologies
Canberra Australia
02-6213 0141