This is my minihelp page. I'll collect solutions to problems I
encounter in daily computing here..
Index
3c509C full duplex problem
For a long time I had a problem getting my 3com 3c509C-TX card
(vortex) working in full duplex mode in Linux. In windows it worked
fine, but in linux I always got half duplex unless I booted to windows
first, after which it stayed full duplex until I powered off the
machine. I also had an identical card in another linux machine which
at all times worked just fine. Both were connected to a 100M switch,
and switching ethernet cable positions didn't change anything. Then I
discovered Documentation/networking/vortex.txt (in the
kernel sources). It informed about options available for the 3c59x
kernel module. First I obviously tried full_duplex=1 and
options=0x204 (100base-TX, force full duplex) but it
didn't work. I also tried options=5 (100base-FX) but that
didn't work at first either. I didn't actually know what -TX and -FX
was, I was just desperately trying everything around.. Then when I at
some point tried options=0 it did actually switch to 10M,
half duplex. And when I then tried options=5 after that,
it switched to 100M, full duplex! Later I discoverd that
options=8 (autonegotiate) also did the same trick. And
both 5 and 8 work well when the driver is
first loaded after bootup, at least for me. And there's no need to
even force the full duplex. (The reason why I didn't try autonegotiate
earlier was that I thought that was the default.. =) So the solution
is to one of these (I suggest using autonegotiation if it works):
- add the following line to /etc/modules.conf or /etc/conf.modules (RedHat-style distributions):
options 3c59x options=8
- change the 3c59x line in /etc/modules.autoload (Gentoo Linux):
3c59x options=8
- if you load the 3c59x module manually, do it like this:
modprobe 3c59x options=8
|