Hi, 

My kernel is 3.2 (same with 2.6.32) , 
I have a Intel Corporation 82545EM Gigabit Ethernet Controller (fiber LX) 

I'm connected to Cogent with fiber, and I have to disable autoneg and set 
1000/Full duplex. 

But there is a problem with e100 0 driver : 

int e1000_set_spd_dplx(struct e1000_adapter *adapter, u32 spd, u8 dplx) 
{ 
struct e1000_hw *hw = &adapter->hw; 

hw->autoneg = 0; 

/* Make sure dplx is at most 1 bit and lsb of speed is not set 
* for the switch() below to work */ 
if ((spd & 1) || (dplx & ~1)) 
goto err_inval; 

/* Fiber NICs only allow 1000 gbps Full duplex */ 
if ((hw->media_type == e1000_media_type_fiber) && 
spd != SPEED_1000 && 
dplx != DUPLEX_FULL) 
goto err_inval; 

switch (spd + dplx) { 
case SPEED_10 + DUPLEX_HALF: 
hw->forced_speed_duplex = e1000_10_half; 
break; 
case SPEED_10 + DUPLEX_FULL: 
hw->forced_speed_duplex = e1000_10_full; 
break; 
case SPEED_100 + DUPLEX_HALF: 
hw->forced_speed_duplex = e1000_100_half; 
break; 
case SPEED_100 + DUPLEX_FULL: 
hw->forced_speed_duplex = e1000_100_full; 
break; 
case SPEED_1000 + DUPLEX_FULL: 
hw->autoneg = 1; 
hw->autoneg_advertised = ADVERTISE_1000_FULL; 
break; 
case SPEED_1000 + DUPLEX_HALF: /* not supported */ 


As you can see autoneg is forced on, and my link doesn't come up because of 
this. 
The other side is a cisco with nonegociate . 

Setting speed and duplex, even with "advertise 0x020" doesn't work, I have to 
disable negociation. 

Regards 

Nicolas 


------------------------------------------------------------------------------
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis & visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter
_______________________________________________
E1000-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel® Ethernet, visit 
http://communities.intel.com/community/wired

Reply via email to