From owner-freebsd-hackers Tue Jan 9 18:52:37 1996 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id SAA00429 for hackers-outgoing; Tue, 9 Jan 1996 18:52:37 -0800 (PST) Received: from phaeton.artisoft.com (phaeton.Artisoft.COM [198.17.250.211]) by freefall.freebsd.org (8.7.3/8.7.3) with SMTP id SAA00424 for ; Tue, 9 Jan 1996 18:52:32 -0800 (PST) Received: (from terry@localhost) by phaeton.artisoft.com (8.6.11/8.6.9) id TAA13642; Tue, 9 Jan 1996 19:47:38 -0700 From: Terry Lambert Message-Id: <199601100247.TAA13642@phaeton.artisoft.com> Subject: Re: PnP problem... To: hasty@rah.star-gate.com (Amancio Hasty Jr.) Date: Tue, 9 Jan 1996 19:47:37 -0700 (MST) Cc: terry@lambert.org, freebsd-hackers@FreeBSD.org In-Reply-To: <199601100221.SAA02264@rah.star-gate.com> from "Amancio Hasty Jr." at Jan 9, 96 06:20:59 pm X-Mailer: ELM [version 2.4 PL24] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-hackers@FreeBSD.org Precedence: bulk > > > Grand Total: 4 Interrupts, 3 DMA Channels, 7 sets of I/O ports... > > > > One would think you could share interrupts... then ask where it was > > coming from. [ ... ] > Sorry Terry this does not make any sense. My gus does have different devices. > You can say that the GUS PnP has a poor architecture for handling different > devices -- that I would agree with. > > The fact remains that the GUS PnP is not an isolated PnP soundcard which is > going to offered similar configuration problems. Somehow we have to : > > a. know in advance which devices is the kernel configured for, if possible > given that we have lkms > > b. then configured all PnP devices which we know we have driver for. > > c. continue with normal probe and attach driver initialization sequence. You have to preallocate locations for devices that can be neither moved nor disabled; your sequence order is incorrect. It makese sense that you would have one interrupt per card so you don't run out between card slots and onboard devices... it's stupid that the GUS doesn't have an interupt multiplex on board. You'll have to live with it until you buy a pure PCI system instead of a PCI bridged off of ISA. I recommend the Apple and Motorolla chipsets. 8-). However, the PnP discovery ordering is: 1) disable all PnP 2) probe all non-PnP cards 3) Query PnP cards for where they may fit 4) Do a topological sort to fit them all 5) Make them pick one to disable if the sort results in a collision. Repeat as necessary. 6) Map the mappable locations 7) Enable the PnP cards that were not marked disabled 8) Attach drivers as available, loading them if necessary Exception: Treat ISA cards on a PnP ISA bus motherboard (slot disabling) as single address devices in terms of the topological sort. Note that you can still be screwed if you don't recognize a non-PnP card on an ISA bus, since you will not be able to infer its location for the sort, and it can't be disabled. Conclusion: If you have problems, it's because your GUS is too greedy. Regards, Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers.