Skip site navigation (1)Skip section navigation (2)
Date:      27 Jul 1998 17:08:42 -0700
From:      Frank McConnell <fmc@reanimators.org>
To:        Robert Swindells <swindellsr@genrad.co.uk>
Cc:        mike@smith.net.au, hackers@FreeBSD.ORG, faber@isi.edu
Subject:   Re: AMD PCNet/FAST cards; suppliers?
Message-ID:  <199807280008.RAA18750@daemonweed.reanimators.org>
In-Reply-To: Robert Swindells's message of Mon, 27 Jul 1998 05:01:10 -0700 (PDT)
References:  <199807271201.FAA03886@hub.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Robert Swindells <swindellsr@genrad.co.uk> wrote:
> I may have spoken too soon about the driver in stable being OK.
> 
> There was a change committed on July 20 which looks like it will break
> probing of the PCnet-II chip.

I seem to have run afoul of another part of this change.  I'm not sure
if it's due to hardware misconfiguration on my part, but the way it
behaves is bothersome.

The system is an HP Vectra XM Series 4 5/133 with the "integrated LAN
adapter", which looks like a PCI card hidden on the backside of the
bus riser where it's hard to look at.  I haven't had it out to look at
it, and FreeBSD-previous (maybe 2.2.2, definitely 2.2.5-RELEASE and
-stable since) just probed and attached it as lnc1 so I never had to
think about it before.

When I did up a custom kernel configuration for this PC, I commented
stuff out of GENERIC for the hardware I didn't have, but left in the
"device lnc0"... line (with addresses not matching my card) because I
figured that without that the lnc code wouldn't be in the resulting
kernel.

Saturday morning I did the cvsup+build+install drill (for -stable),
and after rebooting with the new kernel I noticed console messages
about not being able to resolve names from /etc/exports.  "netstat
-in" showed no Ethernet interfaces, "dmesg | grep lnc" got me
  lnc1 <PCNet/PCI Ethernet adapter> rev 22 int a irq 11 on pci0:8:0
(and looking at the entire dmesg output showed nothing amiss) 
and "ifconfig lnc1" got me
  ifconfig: interface lnc1 does not exist

Saturday evening I scattered debug printf()s around to figure out what
was going on, and worked out that lnc_attach_ne2100_pci() was losing
due to the new test for sc->nic.ic == PCnet_PCI.  So I added the
appropriate "device lnc1" line to the config file and rebuilt the
kernel, and that worked OK.

The annoyances are (a) that it probes and finds the card as a PCI
device, then silently discards the info; and (b) the probe message
doesn't give you the base I/O address so you know how to fill in the
device information (I got that from my debug printf()s).

And (c) I've gone from having the miracle of plug-and-play working on
my desktop to having to know another I/O address and IRQ, for a card
that doesn't make them obvious or let me set them so far as I've 
noticed.

For all I know there is some way to tell the card not to do the ISA
emulation, but that's been pushed to the copious free time list so I
may not find out soon.  Poking through the Vectra's BIOS setup, there
is a way to disable the "Integrated LAN Adapter" but that's the only
relevant setting I could find.

-Frank McConnell

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199807280008.RAA18750>