This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
Ethernet driver (specifically SMSC 91Cxxx) questions...
- From: "Andy Jackson" <andy at grapevinetech dot co dot uk>
- To: <ecos-discuss at ecos dot sourceware dot org>
- Date: Sat, 6 May 2006 09:20:31 +0100
- Subject: [ECOS] Ethernet driver (specifically SMSC 91Cxxx) questions...
Hi,
I have recently been porting the 91Cxxx driver to our LPC2294/SMSC91C111
based hardware and have some questions:
1. Has anyone previously used the 32-bit data access mode in the driver? I
seem to have had to rewrite chunks of it in order to get it to work and I
don't know if its a quirk of our hardware or a general problem. If its that
latter, then I'll submit a patch.
2. From the Generic Ethernet Driver documentation, the xxx_start functions
role is:
This function is called, perhaps much later than system initialization time,
when the system (an application) is ready for the interface to become
active. The purpose of this function is to set up the hardware interface to
start accepting packets from the network and be able to send packets out.
The receiver hardware should not be enabled prior to this call.
A quick look through some of the drivers suggests that most use this
function to reset the controller, phy etc, which is fine. However, I've
noticed that during network initialisation (FreeBSD stack) this gets called
three times or more. Each call results in the SMSC 91C111 dropping the link
and going through an auto-negotiation cycle after which it will start
receiving packets again and so may have to dispose of partially processed
data which can potentially cause problems and anyway slows the whole booting
process.
Is this the intended behavior?
Thanks for any help,
Andy..
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss