Subject: Re: resource allocation, pcmcia, isapnp, etc.
To: None <tech-kern@netbsd.org>
From: Christos Zoulas <christos@zoulas.com>
List: tech-kern
Date: 06/17/1999 08:29:29
In article <199906170757.JAA02036@mail.wins.uva.nl>,
Frank van der Linden <frank@wins.uva.nl> wrote:
>
>One of the main problems I see with irq/iospace allocation, is that
>there is no total overview over who needs what at any given time.
>The code knows what has been allocated so far (but even then
>still messes up sometimes), but doesn't know what still might come.
>So it could pick a solution that will prevent a later device from
>working at all.
>
>It seems to me that we need some extra information before resources
>can really be allocated. I.e. a scan through all present devices,
>getting information out of them on what they need, and only after
>we've established a global view of needed resources, attach them.
>Any other sources of information can also be used, like the PnP
>BIOS. A lot of this is machine-specific; architectures that
>are actually sane might not need this :-)
>
>A lot of this information is already kept, but it's only present
>after we need it most -- when we're allocating IRQs/ports for
>ISA pnp and pcmcia devices. You can rely on the order of probing,
>but that's really just pushing the problem around.
>
>I realize that picking the "right" resource allocation for N devices
>given M resources is NP complete, but there is a limited number
>of possibilities, and at present we're not doing a good job at all.
>
>Related issue: we need a way for the the user to tweak resources
>before booting the kernel. At present, we're just about the only
>Free UNIX out there that doesn't allow people to do it..

We need to:
- write code that get information from the pnp bios.
- have a way to specify alternate configurations for the pnp cards
  that stick after a reboot, so that we don't have to solve the np
  complete problem in case of conflicts.

christos