[ECOS] Settign ethernet speed and duplex

Nick Garnett nickg@ecoscentric.com
Fri Sep 15 11:07:00 GMT 2006

"Laurie Gellatly" <laurie.gellatly@netic.com> writes:

> Nick,
> You've never seen auto negotiation fail then like I have.
> If auto negotiation works the way its suppose to then I agree, you're better
> off leaving it like that.
> Reality unfortunatly does not always follow the best laid plans of mice and
> men.

Indeed. But we sort it out in the ethernet driver, no need for the
application to be bothered.

> Regardless of what you and I might think the customer would still like to
> set speed and duplex manually so....
> Back to the original question, how should this be provided for?

You might be able to get an ioctl() to work. However there is no
existing BSD IOCTL to do this. So you would have to invent a new one,
work out how to encode it and work out how it gets passed through the
stack to the driver.

Note that the fact that there is not an existing IOCTL for this
suggests that it is not something that applications should normally
get involved in.

Alternatively, define some config options, or some global variables
that the application can set before bringing the ethernet up. Changing
these settings after the driver is already running is a very bad idea.

Nick Garnett                                 eCos Kernel Architect
http://www.ecoscentric.com            The eCos and RedBoot experts

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

More information about the Ecos-discuss mailing list