Subject: Re: Compaq NetFlex 3/P (fwd)
To: Matthew N. Dodd <winter@jurai.net>
From: Bill Paul <wpaul@ctr.columbia.edu>
List: tech-net
Date: 03/30/1999 12:20:40
Of all the gin joints in all the towns in all the world, Matthew N. Dodd
had to walk into mine and say:

> Date: Mon, 29 Mar 1999 16:24:36 +0200
> From: Manuel Bouyer <bouyer@antioche.lip6.fr>
> To: Gregory McGarry <g.mcgarry@qut.edu.au>
> Cc: tech-net@netbsd.org
> Subject: Re: Compaq NetFlex 3/P
> 
> On Mar 29, Gregory McGarry wrote
> > G'day,
> > 
> > With recent (26/3) changes to the ThunderLAN (tl) attach code, I can get a
> > Compaq NetFlex 3/P board to probe successfully.  The board uses LXT901PC
> > and DP8392CV-1 line driver chips for 10baseT and 10base5 respectively.
> > These aren't PHYs, so the the board must be wired to use the internal
> > PHY.  It should be located at PHY no. 31 according to the ThunderLAN
> > Programmer's Guide, shouldn't it?
> 
> Yes.

No. This chip doesn't have an internal MII PHY. It's not a TNETE100.

> > Well, the internal PHY isn't being found.
> > 
> > Since this board hasn't been used with the tl driver before, I wonder
> > whether anyone has had the internal PHY on the ThunderLAN working.
> 
> I do. I just tried with a -current kernel. This was on a deskpro 5000, here
> the 1.3.3 dmesg (the original thunderlan and MII drivers where developed on
> this machine):
> tl0 at pci1 dev 11 function 0
> tl0: Compaq ProLiant Integrated Netelligent 10/100 TX
> tl0: Ethernet address 00:80:5f:a6:ed:35
> tl0: interrupting at irq 10
> mii0 at tl0
> nsphy0 at mii0 dev 1: 10baseT(full duplex)/100baseTx(full duplex)
> tlphy0 at mii0 dev 31: BNC
> 
> 
> > 
> > Although I haven't looked into the MII code deeply, I don't think the
> > delays recommended in the ThunderLAN Programmer's Guide are present.
> > Perhaps the internal PHY isn't being reset correctly?
> > 
> 
> Can you try to add the delays ?
> I seem to remember someone said that he had to suppress the reset code to get
> his NetFlex 3/P working. Maybe you could try this ?

Adding delays won't help. This particular board doesn't use MII PHYs,
nor does the chip have an internal MII PHY.

I have one of the Netflex-3/P cards in question here. This card is
different from the Netflex-3/P integrated NIC on certain Compaq machines.
The chip on my board is labeled L10000PCE, and the section with the Level1
and NatSemi chips is modular and can be removed. I'm not certain if this
is a core version of the ThunderLAN with external PCI glue or if it's
a mislabeled TNETE110 chip, which according to the manual doesn't have
MII support. In any case, in order to make it work, you have to
set the 'bitrate' bit in the netconfig register. You can then use the
lower 4 bits in the acommit register to control the media mode (see pages
A-27 and A-35 of the ThunderLAN programmer's manual). I made some changes
to the FreeBSD ThunderLAN driver to make this card work, which I just
committed to -current and -stable. The modifications are fairly
straightforward. I think that for the NetBSD driver, if the MII probe
doesn't find any PHY instances, you should switch to bitrate mode.

Note: depending on how you initialize the ThunderLAN chip, all of the
bits in the ACOMMIT register may default to 0. This is fine except for
the MTXD3 bit, which controls full-duplex/half-duplex mode: it must
be set to 1 for half-duplex, which is the mode that people will likely
want by default.

-Bill

-- 
=============================================================================
-Bill Paul            (212) 854-6020 | System Manager, Master of Unix-Fu
Work:         wpaul@ctr.columbia.edu | Center for Telecommunications Research
Home:  wpaul@skynet.ctr.columbia.edu | Columbia University, New York City
=============================================================================
"Mulder, toads just fell from the sky!" "I guess their parachutes didn't open."
=============================================================================