Subject: Re: e1000 speed/duplex error

From: Auke Kok <[email-masked]>
Date: Tue, 01 Aug 2006 07:35:25 -0700

Jeff Kirsher wrote:
> On 8/1/06, a1 <[email-masked]> wrote:
>> Hi, Jeff.
>>
>>
>> JK> OPTION 2: Turn auto-negotiate on the e1000 card and tell it to only
>> JK> advertise 100 Full Duplex.  This will allow negotiation between the
>> JK> two lnk partners and the e1000 will advertise that it is only able to
>> JK> do 100 Full duplex.
>>
>> Is there any way i could do this with ethtool? It only allows force
>> spd/dplx , but not set it for advertising...
> 
> Not currently.  That would be a nice feature though... :)
> 
>>
>> If i do as follows other side reports 1000/FD:
>>
>> ethtool -s eth0 speed 100 duplex full autoneg on
>>
> 
> Which is what I would expect.  I have to step away for a bit, but if
> no one responds with how to load the driver with auto-negotiate
> advertising only 100 Full Duplex, I will do so when I return.

Here's that part of the driver documentation:

$ modprobe e1000 AutoNeg=0x08
e1000: 0000:00:00.0: e1000_validate_option: AutoNeg advertising 100/FD

  99 /* Auto-negotiation Advertisement Override
100  *
101  * Valid Range: 0x01-0x0F, 0x20-0x2F (copper); 0x20 (fiber)
102  *
103  * The AutoNeg value is a bit mask describing which speed and duplex
104  * combinations should be advertised during auto-negotiation.
105  * The supported speed and duplex modes are listed below
106  *
107  * Bit           7     6     5      4      3     2     1      0
108  * Speed (Mbps)  N/A   N/A   1000   N/A    100   100   10     10
109  * Duplex                    Full          Full  Half  Full   Half
110  *
111  * Default Value: 0x2F (copper); 0x20 (fiber)
112  */

hth,

Auke