[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: