Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 9 Jan 1996 19:47:37 -0700 (MST)
From:      Terry Lambert <terry@lambert.org>
To:        hasty@rah.star-gate.com (Amancio Hasty Jr.)
Cc:        terry@lambert.org, freebsd-hackers@FreeBSD.org
Subject:   Re: PnP problem...
Message-ID:  <199601100247.TAA13642@phaeton.artisoft.com>
In-Reply-To: <199601100221.SAA02264@rah.star-gate.com> from "Amancio Hasty Jr." at Jan 9, 96 06:20:59 pm

next in thread | previous in thread | raw e-mail | index | archive | help
>  > > 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.



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