Driver for DEC 21142/3 linux kernel 2.0.34?
MJ Watson
mjwatson@snafu.livenet.net
Thu Apr 15 15:36:04 1999
Donald,
OK, I managed to compile tulip.c with no unresovled references, and tried
three different versions with pretty much the same results. The device
busy error went away, but none of the different versions with the likely
options worked. Likely options were determined by the fact that our hubs
only support half-duplex 10Mb, so the options tried were 0,4,9,11,12 and
(once) 10.
The IO ports looked OK, eth0 showed up as and where expected.
FYI, I contacted a couple of authors of messages found in the archives
who had similar problems with similar hardware, and neither had ever
solved their problems. They got other vendor's cards that worked right away.
This is a government computer, so that's not really an option here. It's
either this or nothing.
Anyway, some of the various outputs are included below. Hope they can give
you a clue what's missing.
Regards,
Michael
----------------------------------------------------------------------------
PING localhost (127.0.0.1): 56 data bytes
ping: wrote localhost 64 chars, ret=-1
ping: sendto: Operation not permitted
--- localhost ping statistics ---
1 packets transmitted, 0 packets received, 100% packet loss
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
localnet * 255.255.240.0 U 1500 0 0 eth0
127.0.0.0 * 255.0.0.0 U 3584 0 0 lo
[The "TUDIAG" listings are the greps of the only parts that changed between
the trials. Sorry, I don't know how to do a more substantial trace, not
being a programmer any more. A full tulip-diag listing is at the end.]
TUDIAG## Version Options
01 v090 0
02 4
03 9
04 11
05 12
06 v079 0
07 4
08 9
09 (missing) 11
10 12
11 v086 0
12 4
13 9
14 11
15 12
tudiag01.415: Port selection is MII, half-duplex.
tudiag01.415: Transmit started, Receive started, half-duplex.
tudiag01.415: The Rx process state is 'Waiting for packets'.
tudiag01.415: The Tx process state is 'Idle'.
tudiag01.415: The transmit threshold is 128.
tudiag01.415: Internal autonegotiation state is 'Autonegotiation disabled'.
tudiag02.415: Port selection is 100mbps-SYM/PCS 100baseTx scrambler, half-duplex
tudiag02.415: Transmit started, Receive started, half-duplex.
tudiag02.415: The Rx process state is 'Waiting for packets'.
tudiag02.415: The Tx process state is 'Idle'.
tudiag02.415: The transmit threshold is 128.
tudiag02.415: Internal autonegotiation state is 'Autonegotiation disabled'.
tudiag03.415: Port selection is MII, half-duplex.
tudiag03.415: Transmit started, Receive started, half-duplex.
tudiag03.415: The Rx process state is 'Waiting for packets'.
tudiag03.415: The Tx process state is 'Idle'.
tudiag03.415: The transmit threshold is 128.
tudiag03.415: Internal autonegotiation state is 'Autonegotiation disabled'.
tudiag04.415: Port selection is MII, half-duplex.
tudiag04.415: Transmit started, Receive started, half-duplex.
tudiag04.415: The Rx process state is 'Waiting for packets'.
tudiag04.415: The Tx process state is 'Idle'.
tudiag04.415: The transmit threshold is 128.
tudiag04.415: Internal autonegotiation state is 'Autonegotiation disabled'.
tudiag05.415: Port selection is 100mbps-SYM/PCS 100baseTx scrambler, half-duplex.
tudiag05.415: Transmit started, Receive started, half-duplex.
tudiag05.415: The Rx process state is 'Waiting for packets'.
tudiag05.415: The Tx process state is 'Idle'.
tudiag05.415: The transmit threshold is 128.
tudiag05.415: Internal autonegotiation state is 'Autonegotiation disabled'.
tudiag06.415: Port selection is MII, half-duplex.
tudiag06.415: Transmit started, Receive started, half-duplex.
tudiag06.415: The Rx process state is 'Waiting for packets'.
tudiag06.415: The Tx process state is 'Idle'.
tudiag06.415: The transmit threshold is 128.
tudiag06.415: Internal autonegotiation state is 'Autonegotiation disabled'.
tudiag07.415: Port selection is 10mpbs-serial, half-duplex.
tudiag07.415: Transmit started, Receive started, half-duplex.
tudiag07.415: The Rx process state is 'Waiting for packets'.
tudiag07.415: The Tx process state is 'Idle'.
tudiag07.415: The transmit threshold is 72.
tudiag07.415: Internal autonegotiation state is 'Autonegotiation disabled'.
tudiag08.415: Port selection is MII, half-duplex.
tudiag08.415: Transmit started, Receive started, half-duplex.
tudiag08.415: The Rx process state is 'Waiting for packets'.
tudiag08.415: The Tx process state is 'Idle'.
tudiag08.415: The transmit threshold is 128.
tudiag08.415: Internal autonegotiation state is 'Autonegotiation disabled'.
tudiag10.415: Port selection is 10mpbs-serial, half-duplex.
tudiag10.415: Transmit started, Receive started, half-duplex.
tudiag10.415: The Rx process state is 'Waiting for packets'.
tudiag10.415: The Tx process state is 'Idle'.
tudiag10.415: The transmit threshold is 72.
tudiag10.415: Internal autonegotiation state is 'Ability detect'.
tudiag11.415: Port selection is MII, half-duplex.
tudiag11.415: Transmit started, Receive started, half-duplex.
tudiag11.415: The Rx process state is 'Waiting for packets'.
tudiag11.415: The Tx process state is 'Idle'.
tudiag11.415: The transmit threshold is 128.
tudiag11.415: Internal autonegotiation state is 'Autonegotiation disabled'.
tudiag12.415: Port selection is 10mpbs-serial, half-duplex.
tudiag12.415: Transmit started, Receive started, half-duplex.
tudiag12.415: The Rx process state is 'Waiting for packets'.
tudiag12.415: The Tx process state is 'Idle'.
tudiag12.415: The transmit threshold is 72.
tudiag12.415: Internal autonegotiation state is 'Autonegotiation disabled'.
tudiag13.415: Port selection is MII, half-duplex.
tudiag13.415: Transmit started, Receive started, half-duplex.
tudiag13.415: The Rx process state is 'Waiting for packets'.
tudiag13.415: The Tx process state is 'Idle'.
tudiag13.415: The transmit threshold is 128.
tudiag13.415: Internal autonegotiation state is 'Autonegotiation disabled'.
tudiag14.415: Port selection is MII, half-duplex.
tudiag14.415: Transmit started, Receive started, half-duplex.
tudiag14.415: The Rx process state is 'Waiting for packets'.
tudiag14.415: The Tx process state is 'Idle'.
tudiag14.415: The transmit threshold is 128.
tudiag14.415: Internal autonegotiation state is 'Autonegotiation disabled'.
tudiag15.415: Port selection is 10mpbs-serial, half-duplex.
tudiag15.415: Transmit started, Receive started, half-duplex.
tudiag15.415: The Rx process state is 'Waiting for packets'.
tudiag15.415: The Tx process state is 'Idle'.
tudiag15.415: The transmit threshold is 72.
tudiag15.415: Internal autonegotiation state is 'Autonegotiation disabled'.
TUDIAG01 listing in full:
tulip-diag.c:v1.10 4/12/99 Donald Becker (becker@cesdis.gsfc.nasa.gov)
Index #1: Found a Digital DS21143 Tulip adapter at 0xec00.
Digital DS21143 Tulip chip registers at 0xec00:
ffa04800 ffffffff ffffffff 00472028 00472228 f0660000 b20e2002 fbfffbff
e0000000 fffd83ff ffffffff fffe0000 000000c6 ffff0000 fff80000 8ff10008
Port selection is MII, half-duplex.
Transmit started, Receive started, half-duplex.
The Rx process state is 'Waiting for packets'.
The Tx process state is 'Idle'.
The transmit threshold is 128.
EEPROM contents:
0000 0000 0000 0000 0000 0000 0000 0000
0000 0103 0000 78f8 f5dc 1e00 0000 0800
8605 0002 08ff 00f0 0286 ff04 f008 8600
0102 08ff 00f0 0286 ff02 f008 9100 0003
ff02 f008 0000 7800 01e0 5000 1800 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 a8d0
ID CRC 0xe3 (vs. 00), complete CRC f4ea39bb.
Ethernet MAC Station Address 00:00:F8:78:DC:F5.
EEPROM transceiver/media description for the Digital DS21143 Tulip chip.
Leaf node at offset 30, default media type 0800 (Autosense).
5 transceiver description blocks:
Media 10baseT, block type 2, length 6.
Serial transceiver for 10baseT (media type 0).
GP pin direction 08ff GP pin data 00f0.
Media 10baseT-Full Duplex, block type 2, length 6.
Serial transceiver for 10baseT-Full Duplex (media type 4).
GP pin direction 08ff GP pin data 00f0.
Media 10base2, block type 2, length 6.
Serial transceiver for 10base2 (media type 1).
GP pin direction 08ff GP pin data 00f0.
Media AUI, block type 2, length 6.
Serial transceiver for AUI (media type 2).
GP pin direction 08ff GP pin data 00f0.
Media MII, block type 3, length 17.
MII interface PHY 0 (media type 11).
21143 MII initialization sequence is 2 words: 08ff 00f0.
21143 MII reset sequence is 0 words:.
Media capabilities are 7800, advertising 01e1.
Full-duplex map 5000, Threshold map 1800.
No MII interrupt.
21140 Non-MII transceiver with media 0 (10baseT).
CSR12 control port setting 00, command 00 00.
Media detection by looking for a 1 on bit 0 of the CSR12 control port.
21140 Non-MII transceiver with media 0 (10baseT).
CSR12 control port setting 00, command 00 00.
Media detection by looking for a 1 on bit 0 of the CSR12 control port.
21140 Non-MII transceiver with media 0 (10baseT).
CSR12 control port setting 00, command 00 00.
Media detection by looking for a 1 on bit 0 of the CSR12 control port.
21140 Non-MII transceiver with media 0 (10baseT).
CSR12 control port setting 00, command 00 00.
Media detection by looking for a 1 on bit 0 of the CSR12 control port.
MII PHY found at address 5, status 0x786d.
MII PHY #5 transceiver registers:
1100 786d 2000 5c01 01e1 0021 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0001 8060
8020 0c65 0000 3000 a3b9 0080 9805 001b.
Internal autonegotiation state is 'Autonegotiation disabled'.
===================================================
Michael Watson Unix Systems Administrator
U.S. Coast Guard Aircraft Repair and Support Center
CGAS Elizabeth City, NC 252.334.5269
n6wav@yahoo.com mjwatson@livenet.net
===================================================