How to force the 1000M network interface work in 100M mode?(AMCC 440GX, board based on ocotea)

Eugene Surovegin ebs at ebshome.net
Tue Feb 13 13:40:15 EST 2007


On Tue, Feb 13, 2007 at 10:34:17AM +0800, Lonsn wrote:
> Hi, all:
> We have design a new board based on AMCC ocotea board. The linux kernel 
> version we use is 2.6.18 from kernel.org. The network interface is the 
> same as ocotea(eth0 and eth1 work in SMII mode, eth2 and eth3 work in 
> RGMII mode).The 1000Mbit ehernet physical transceiver chip is also 
> CIS8201(VSC8201). These pins(ANEG_DIS,FRC_DPLX,MODE10,MODE100,MODE1000) 
> of CIS8201 are set as 01111.
> Maybe because of the signal integrity problem of the gigabit 
> clock&data,eth3 doesn't work in 1000M mode(eth2 is ok). If we connect 
> eth3 with a host which has 100M ethernet, then eth3 works in 100M mode 
> well. If we connect eth3 with a host which has 1000M ethernet interface, 
>  then eth3 can recognize the link is 1000Mbit, but ping is not ok.
> So we want to force the eth3 work in 100M mode even eth3 is connected 
> with a 1000M host.(we think the hardware is ok when eth3 works in 100M 
> mode).
> We have used ethtool in the board and in the host to force the eth3 work 
> in 100M mode, but failed. Maybe we can't change this setting in 
> userspace? or we should changed the IBM_EMAC driver?
> Any suggestions?

Use ethtool to limit advertised auto-negotiation mode or force 100 on 
_both_ ends of the link. Probably, when you forced 100, you did it 
only on 440GX side, that's why it failed. Personally, I prefer 
"forcing" link speed by tweaking advertised modes, this way you have 
to do this only on one side of the link.

-- 
Eugene




More information about the Linuxppc-embedded mailing list