Forcing Kingston KNE100TX to run 10baseT

Allen Mcintosh mcintosh@research.telcordia.com
Tue Apr 18 16:51:59 2000


I'm trying to use a Kingston KNE 100TX card to sniff 10 megabit traffic on a
dual-speed hub.  The hub is smart enough not to convert any traffic that it
doesn't have to, so I really need to force the card to run at 10 megabits in
order to see traffic between pairs of network elements that are talking
entirely at 10 megabits.

I have two cards, one (older) with the 21140 chip (labeled "digital") and
one (newer) with the 21143 chip (labeled "intel").  In a nutshell, the older
card works just fine, and the newer one does not.  Does anyone have any
thoughts on what could be going wrong?  I'd use only the old card, but
I need to collect traffic from more than one place in the network.

Kernel version: 2.2.14
Tulip driver version: v0.91g, v0.91g2, v0.91g-ppc

The older card is recognized as a "Digital DS21140 Tulip rev 34".  When
I load the module with
	insmod tulip options=9
the hub shows a 10baseT connection, I can see 10baseT traffic, and
everything is fine.

The newer card is recognized as a "Digital DS21143 Tulip rev 65".  If I plug
the NIC into a 10baseT only hub, and allow autonegotiation
	insmod tulip
everything works fine.  If I plug it into the same 10baseT only hub, but
install the driver it with 10baseT forced
	insmod tulip options=9
I get no traffic, and ping doesn't work.  Relevant messages from the logfile
(with debug=7 added to the insmod):

Apr 18 13:01:51 snuffy kernel: tulip.c:v0.91g2 10/9/99 becker@cesdis.gsfc.nasa.gov
Apr 18 13:01:51 snuffy kernel: eth2: Digital DS21143 Tulip rev 65 at 0x2880, 00:C0:F0:4B:E7:3D, IRQ 9.
Apr 18 13:01:51 snuffy kernel: eth2:  EEPROM default media type Autosense.
Apr 18 13:01:51 snuffy kernel: eth2:  MII interface PHY 0, setup/reset sequences 0/0 long, capabilities e0 78.
Apr 18 13:01:51 snuffy kernel: eth2:  Index #0 - Media MII (#11) described by a 21142 MII PHY (3) block.
Apr 18 13:01:51 snuffy kernel: eth2:  MII transceiver #1 config 3100 status 782d advertising 01e1.
Apr 18 13:02:15 snuffy kernel: eth2: Using user-specified media MII 10baseT.
Apr 18 13:02:18 snuffy kernel: eth2: 21143 negotiation status 000000c6, MII 10baseT.
Apr 18 13:02:18 snuffy kernel: eth2: MII status 782d, Link partner report 0021.
Apr 18 13:03:18 snuffy kernel: eth2: 21143 negotiation status 000000c6, MII 10baseT.
Apr 18 13:03:18 snuffy kernel: eth2: MII status 782d, Link partner report 0021.
Apr 18 13:03:23 snuffy kernel: eth2: Transmit timeout using MII device.
Apr 18 13:03:58 snuffy last message repeated 7 times
Apr 18 13:04:13 snuffy last message repeated 3 times
Apr 18 13:04:18 snuffy kernel: eth2: 21143 negotiation status 000000c6, MII 10baseT.
Apr 18 13:04:18 snuffy kernel: eth2: MII status 782d, Link partner report 0021.
Apr 18 13:04:18 snuffy kernel: eth2: Tx hung, 22 vs. 7.

If I plug into the dual speed hub, and try to force 10baseT, the lights
on the hub show a 10baseT connection[*], but I get no traffic and ping
doesn't work.  Relevant bits from logfile:

Apr 18 10:13:15 snuffy kernel: Found Digital DS21143 Tulip at PCI I/O address 0x2880.
Apr 18 10:13:15 snuffy kernel: tulip.c:v0.91g 7/16/99 becker@cesdis.gsfc.nasa.gov
Apr 18 10:13:15 snuffy kernel: eth2: Digital DS21143 Tulip rev 65 at 0x2880, 00:C0:F0:4B:E7:3D, IRQ 9.
Apr 18 10:13:15 snuffy kernel: eth2:  EEPROM default media type Autosense.
Apr 18 10:13:15 snuffy kernel: eth2:  MII interface PHY 0, setup/reset sequences 0/0 long, capabilities e0 78.
Apr 18 10:13:15 snuffy kernel: eth2:  Index #0 - Media MII (#11) described by a 21142 MII PHY (3) block.
Apr 18 10:13:15 snuffy kernel: eth2:  MII transceiver #1 config 3100 status 782d advertising 01e1.
Apr 18 10:13:24 snuffy kernel: eth2: Using user-specified media MII 10baseT.
Apr 18 10:13:27 snuffy kernel: eth2: 21143 negotiation status 000000c6, MII 10baseT.
Apr 18 10:13:27 snuffy kernel: eth2: MII status 782d, Link partner report 40a1.
Apr 18 10:14:08 snuffy kernel: eth2: Transmit timeout using MII device.
Apr 18 10:14:23 snuffy last message repeated 3 times
Apr 18 10:14:27 snuffy kernel: eth2: 21143 negotiation status 000000c6, MII 10baseT.
Apr 18 10:14:27 snuffy kernel: eth2: MII status 782d, Link partner report 40a1.
Apr 18 10:14:27 snuffy kernel: eth2: Tx hung, 22 vs. 7.

[*] If I've been running at 100baseT, I need to unplug/re-plug the connection
to the hub before it starts to show 10baseT instead of 100baseT.

I ran tulip-diag after running "insmod tulip options=9" and got
this:

tulip-diag.c:v1.19 10/2/99 Donald Becker (becker@cesdis.gsfc.nasa.gov)
Index #1: Found a Digital DS21143 Tulip adapter at 0x2880.
Digital DS21143 Tulip chip registers at 0x2880:
  f8a08000 ffffffff ffffffff 00c2d810 00c2da10 f0000102 b20e0000 f3fe0000
  e0000000 fffd83ff ffffffff 00000000 000000c6 ffff0000 fff80000 8ff0c000
 Port selection is MII, half-duplex.
 Transmit stopped, Receive stopped, half-duplex.
  The Rx process state is 'Stopped'.
  The Tx process state is 'Stopped'.
  The transmit threshold is 128.
  The NWay status register is 000000c6.
  Internal autonegotiation state is 'Autonegotiation disabled'.


Does anyone have any suggestions on how to get the 21143 based card to work?
-------------------------------------------------------------------
To unsubscribe send a message body containing "unsubscribe"
to linux-tulip-request@beowulf.org