Bug#558292: kernel: ethernet interface 3c509b will only initialize at boot with 10BaseT/Half duplex.
Package: kernel
Severity: normal
unabel to get 3com 3c509b interface to operate at 100/full-duplex. It only
works at 10/half-duplex. Tried 3com recomended driver 3c509 and it failed
to install with fatal errors when I ran modprobe on it. After reinstalling
the standard debian driver 3c59x the interface came up at 100/full-duplex.
Rebooted the machine and problem went back to eth0 would only work at
10/half-duplex. Found documentation in /etc/src/linux-2.6.31.6/Documentation
that stated the 3c509b interface did not auto negotiate well and should be
set to 100/full no autoneg. Set the switch port to 100/full.
Again rebooted the machine and symptoms were the same, eth0 only works at 10/
half-duplex.
removed the driver and reinstalled it and then eth0 came up at 100/full-duplex.
Then added the following commands to /etc/rc.local to get the interface up
at 100/full-duplex at boot:
/etc/init.d/networking stop
sleep 4
modprobe -r 3c59x
sleep 4
modprobe 3c59x
sleep 4
ethtool -s eth0 autoneg off speed 100 duplex full
sleep 4
/etc/init.d/networking start
sleep 4
Note the sleep commands were added when the commands worked when typed at
the command line but failed in the script.
At this point I have a viable workaround as illustrated above but I thought
you would want to know that the driver does not initialize properly at boot
up time.
-- System Information:
Debian Release: 5.0.3
APT prefers stable
APT policy: (500, 'stable')
Architecture: i386 (i686)
Kernel: Linux 2.6.31.6 (SMP w/2 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash
Reply to: