From owner-freebsd-arch Tue Jun 13 9:42:25 2000 Delivered-To: freebsd-arch@freebsd.org Received: from smtp09.phx.gblx.net (smtp09.phx.gblx.net [206.165.6.139]) by hub.freebsd.org (Postfix) with ESMTP id 32E9037B8F4 for ; Tue, 13 Jun 2000 09:42:22 -0700 (PDT) (envelope-from tlambert@usr05.primenet.com) Received: (from daemon@localhost) by smtp09.phx.gblx.net (8.9.3/8.9.3) id JAA22354; Tue, 13 Jun 2000 09:42:19 -0700 Received: from usr05.primenet.com(206.165.6.205) via SMTP by smtp09.phx.gblx.net, id smtpdGFi_Ma; Tue Jun 13 09:42:17 2000 Received: (from tlambert@localhost) by usr05.primenet.com (8.8.5/8.8.5) id JAA08631; Tue, 13 Jun 2000 09:42:15 -0700 (MST) From: Terry Lambert Message-Id: <200006131642.JAA08631@usr05.primenet.com> Subject: Re: cvs commit: src/sys/pci pci.c pcisupport.c pcivar.h To: mjacob@feral.com Date: Tue, 13 Jun 2000 16:42:15 +0000 (GMT) Cc: imp@village.org (Warner Losh), arch@FreeBSD.ORG In-Reply-To: from "Matthew Jacob" at Jun 13, 2000 09:31:05 AM X-Mailer: ELM [version 2.5 PL2] MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-arch@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > > Most of this is present in FreeBSD right now, except for load all > > drivers at boot and unload the ones that don't probe. > > *cough*. Let me correct myself. > > Strictly speaking, Solaris doesn't do quite do this. It only loads drivers for > which it it finds a binding to a hardware name. I argued strenously for the > 'load all' case because if you start with everything loaded, you can sort out, > in memory, the bus interconnects, w/o having to do any fancy special case > dependencies or any 'side' configs for booting. But I lost that argument back > in 1990. > > > We're moving away from hard wired configuration, so it becomes more and > > more possible to have all drivers just load and unload as needed. There is the corner case of legacy (non-self-identifying) hardware; for this hardware, you have to load the probe code and activate it. This is not the case for SBUS or PCI hardware, which can be data driven using a table. I think that the active probe case still needs to be dealt with. Windows 95/98/2000/NT handle this by paging in the probe code, running it, and if it probes true, paging in the driver and doing the attach. The probe code is then discarded. Each severable section is in a seperate ELF section, on a 4k page boundary (logical, not physical, in the ELF file). Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message