2004-11-24 23:05:53

by Wenping Luo

[permalink] [raw]
Subject: ethernet Via-rhine driver 1.1.17 duplex detection issue in linux kernel 2.4.25

I used crossed ethernet cable to connect one ethernet NIC to a Via Rhine III
VT6105M NIC. I set the speed mode of Rhine Nic to be "auto" whereas I forced
the peer NIC to be "100 Full Duplex". The Rhine NIC connected in mode of
"100 Half Duplex" , instead of "100 Full Duplex", after detecting the peer.

I searched the Internet and I found another reported for similiar issue at
http://lunar-linux.org/pipermail/lunar/2004-April/003894.html. However,
there is no answer for this issue yet.

Thanks,

Wenping Luo


2004-11-27 01:36:02

by Wenping Luo

[permalink] [raw]
Subject: Re: ethernet Via-rhine driver 1.1.17 duplex detection issue in linux kernel 2.4.25


----- Original Message -----
From: "Roger Luethi" <[email protected]>
To: "Wenping Luo" <[email protected]>
Cc: <[email protected]>
Sent: Thursday, November 25, 2004 1:54 PM
Subject: Re: ethernet Via-rhine driver 1.1.17 duplex detection issue in
linux kernel 2.4.25


> On Wed, 24 Nov 2004 13:58:58 -0800, Wenping Luo wrote:
> > I used crossed ethernet cable to connect one ethernet NIC to a Via Rhine
III
> > VT6105M NIC. I set the speed mode of Rhine Nic to be "auto" whereas I
forced
> > the peer NIC to be "100 Full Duplex". The Rhine NIC connected in mode of
> > "100 Half Duplex" , instead of "100 Full Duplex", after detecting the
peer.
> >
> > I searched the Internet and I found another reported for similiar issue
at
> > http://lunar-linux.org/pipermail/lunar/2004-April/003894.html. However,
> > there is no answer for this issue yet.
>
> Does it work with 2.6.10-rc? Do other card/driver combinations correctly
> detect the setting of your peer NIC?
Both of my NICs are running in 2.4.25. What I found out is that the Rhine
that sets to be "100 full duplex" doesn't send the advertisement correctly.
I made a fix to set the advertisement register accordingly and then to turn
on the autonegotiation bit. It worked for Via Rhine III.

It seems other NIC, like e100(Intel Pro 100M), has similiar issue. However,
the similiar fix doesn't work for it.

I don't have 2.6.10-rc installed so that I don't know. But I looked at the
patch related to via-rhine.c. It doesn't look like it has been fixed.
>
> Roger

2004-11-27 04:09:26

by Roger Luethi

[permalink] [raw]
Subject: Re: ethernet Via-rhine driver 1.1.17 duplex detection issue in linux kernel 2.4.25

On Wed, 24 Nov 2004 13:58:58 -0800, Wenping Luo wrote:
> I used crossed ethernet cable to connect one ethernet NIC to a Via Rhine III
> VT6105M NIC. I set the speed mode of Rhine Nic to be "auto" whereas I forced
> the peer NIC to be "100 Full Duplex". The Rhine NIC connected in mode of
> "100 Half Duplex" , instead of "100 Full Duplex", after detecting the peer.
>
> I searched the Internet and I found another reported for similiar issue at
> http://lunar-linux.org/pipermail/lunar/2004-April/003894.html. However,
> there is no answer for this issue yet.

Does it work with 2.6.10-rc? Do other card/driver combinations correctly
detect the setting of your peer NIC?

Roger

2004-11-27 22:29:28

by Lee Revell

[permalink] [raw]
Subject: Re: ethernet Via-rhine driver 1.1.17 duplex detection issue in linux kernel 2.4.25

On Wed, 2004-11-24 at 13:58 -0800, Wenping Luo wrote:
> I used crossed ethernet cable to connect one ethernet NIC to a Via Rhine III
> VT6105M NIC. I set the speed mode of Rhine Nic to be "auto" whereas I forced
> the peer NIC to be "100 Full Duplex". The Rhine NIC connected in mode of
> "100 Half Duplex" , instead of "100 Full Duplex", after detecting the peer.
>
> I searched the Internet and I found another reported for similiar issue at
> http://lunar-linux.org/pipermail/lunar/2004-April/003894.html. However,
> there is no answer for this issue yet.
>

Duplex detection is tricky, especially when one side is forced. You
will get inconsistent results with all types of hardware. Maybe this is
an unclear area in the Ethernet spec. When I worked at a telco we had
this problem with Cisco gear, BSD/OS, Linux, Windows... We just made
sure everything was either forced on both sides or auto everywhere.

Lee