Date: Sat, 1 Aug 1998 21:15:33 +0200 From: Stefan Esser <se@FreeBSD.ORG> To: Ted Faber <faber@isi.edu>, Frank McConnell <fmc@reanimators.org> Cc: Mike Smith <mike@smith.net.au>, Robert Swindells <swindellsr@genrad.co.uk>, hackers@FreeBSD.ORG, Stefan Esser <se@FreeBSD.ORG> Subject: Re: AMD PCNet/FAST cards; suppliers? Message-ID: <19980801211533.D267@mi.uni-koeln.de> In-Reply-To: <199807301758.KAA24012@tnt.isi.edu>; from Ted Faber on Thu, Jul 30, 1998 at 10:58:53AM -0700 References: <199807300038.RAA19554@daemonweed.reanimators.org> <199807301758.KAA24012@tnt.isi.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On 1998-07-30 10:58 -0700, Ted Faber <faber@ISI.EDU> wrote: > I believe that with the stock driver and default configuration that's > roughly what happens, but with a little weirdness in the mix. The PCI > probe maps the ethernet to an unconventional port (0xfce0), modulo > bridge chip initializations. The ISA probe fails, because it's looking > in the wrong place. Probing the correct port also fails without some > work. This is how it's supposed to work. > Modifying the driver not to do the rest of the PCI initialization (not > assigning the PCI interrupt in the PCI probe routine) allows the ISA > probe on port 0xfce0 to succeed, and the driver to run. I avoid the > interrupt assignment by passing a NULL pointer out of the > lnc_attach_ne2100_pci() routine if I notice the chip ID in my Hitachi. You could just disable "if_lnc_p.c" (replace with an empty file, or wrap into "#if 0 / #endif"). > If I either take out the change to from pci_conf_read() to > pci_map_port() or restore the assignment of the PCI interrupt > (pci_map_int()) in the pci attach routines, the driver fails. Ahhh, you are running under 2.2.x ? Depending on your PCI BIOS, the chip will need some initialization that is performed by pci_map_port(). (The IO_ENABLE and/or MASTER_ENABLE bits in the device's PCI command register may be left off by the BIOS.) > There seem to be a couple ways to proceed. If we can determine how > the chip is set up that allows my bizarre system to work, we can test > for that instead of the chip ID, avoid the interrupt assignment and > use the ISA port. This doesn't strike me as the best plan, but it may > be feasible. If you want to do this, if you can send me a snippet of > code to plunk into the driver to dump the values of the appropriate > configuration registers, I'm happy to do it. The COMMAND register as initialized by the PCI BIOS would be most interesting. I guess, that the MASTER enable bit is not set. > On the other hand Robert Swindells's driver seems to attach the chip > as a PCI device and work fine. If his modifications are small and > acceptable, maybe the best plan is to incorporate them. If his mods I'd like to understand what's different in that new driver. The current driver worked well with the AMD PCnet found on many motherboards, and IMHO we need to make sure that the new driver supports the whole range of Lance chips ... Regards, STefan 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?19980801211533.D267>