problem with 91g

Johan Kullstam kullstam@ne.mediaone.net
Mon Dec 13 18:30:39 1999


i am having trouble with the new tulip driver 0.91g.  by falling back
to 0.91 or 0.89H, things work again.  i posted this to linux kernel
but got no response to that.

i have two tulip cards in my system.  a dec 21041 and a d-link 21140.
the latter works with all versions of the tulip driver that i've
tested.  the former has trouble with the newest driver - 0.91g.
falling back to old_tulip or 0.91 makes things happy.

here is a section of my boot logs using the 0.91g driver.  somehow,
the driver starts thinking that the 21041 is a 21143.  then the
interface refuses to come up.  i can rmmod the 91g and insmod plain 91
and things work fine.


Dec 12 04:23:40 sophia kernel: tulip.c:v0.91g-ppc 7/16/99 becker@cesdis.gsfc.nas
a.gov 
Dec 12 04:23:40 sophia kernel: eth0: Digital DC21041 Tulip rev 17 at 0xe800, 00:
00:F8:05:BE:2F, IRQ 11. 
Dec 12 04:23:40 sophia kernel: eth0: 21041 Media table, default media 0000 (10ba
seT). 
Dec 12 04:23:40 sophia kernel: eth0:  21041 media #0, 10baseT. 
Dec 12 04:23:40 sophia kernel: eth0:  21041 media #4, 10baseT-FD. 
Dec 12 04:23:41 sophia kernel: eth1: Digital DS21140 Tulip rev 34 at 0xe880, 00:
80:C8:27:6B:4C, IRQ 9. 
Dec 12 04:23:41 sophia kernel: eth1:  EEPROM default media type Autosense. 
Dec 12 04:23:41 sophia kernel: eth1:  Index #0 - Media MII (#11) described by a 
21140 MII PHY (1) block. 
Dec 12 04:23:41 sophia kernel: eth1:  MII transceiver #0 config 1000 status 782d
 advertising 01e1. 
Dec 12 04:23:41 sophia kernel: eth0: 21143 10baseT link beat good.

                                     ^^^^^
                                     why does 0.91g suddenly think i
                                     have a 21143?  the old_tulip
                                     0.89H doesn't think so and
                                     neither does 0.91.

at this point the interface refuses to come up and dhcpcd times out.




some extra info ripped from /proc/pci

  Bus  0, device  18, function  0:
    Ethernet controller: DEC DC21041 (rev 17).
      Medium devsel.  Fast back-to-back capable.  IRQ 11.  Master Capable.  Late
ncy=64.  
      I/O at 0xe800 [0xe801].
      Non-prefetchable 32 bit memory at 0xfebfaf00 [0xfebfaf00].
  Bus  0, device  19, function  0:
    Ethernet controller: DEC DC21140 (rev 34).
      Medium devsel.  Fast back-to-back capable.  IRQ 9.  Master Capable.  Laten
cy=64.  Min Gnt=20.Max Lat=40.
      I/O at 0xe880 [0xe881].
      Non-prefetchable 32 bit memory at 0xfebfaf80 [0xfebfaf80].

i have run the tulip-diag program and gotten this

sophia(~)# tulip-diag
tulip-diag.c:v1.19 10/2/99 Donald Becker (becker@cesdis.gsfc.nasa.gov)
Index #1: Found a Digital DC21041 Tulip adapter at 0xe800.
 Port selection is full-duplex.
 Transmit stopped, Receive stopped, full-duplex.
  The Rx process state is 'Stopped'.
  The Tx process state is 'Stopped'.
  The transmit unit is set to store-and-forward.
  The NWay status register is 000001c8.
  Internal autonegotiation state is 'Autonegotiation disabled'.
Index #2: Found a Digital DS21140 Tulip adapter at 0xe880.
 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.
 Use '-a' or '-aa' to show device registers,
     '-e' to show EEPROM contents, -ee for parsed contents,
  or '-m' or '-mm' to show MII management registers.


i am happy to tinker with the driver or supply additional information
upon request.  i am not sure how to proceed.  please advise.

-- 
J o h a n  K u l l s t a m
[kullstam@ne.mediaone.net]
Don't Fear the Penguin!