Subject: Re: Refactoring MI devices in GENERIC and friends
To: None <tech-kern@netbsd.org>
From: Jachym Holecek <freza@NetBSD.org>
List: tech-kern
Date: 09/09/2007 13:55:56
# Joerg Sonnenberger 2007-09-08:
> My suggestion is that all MI drivers for PCI, Cardbus, USB and PCMCIA
> (devices, not necessarily controllers) are collected from i386 and
> amd64's GENERIC kernels and added to
> src/sys/conf/std.{pci,cardbus,usb,pcmcia}. The direct lists of i386 and
> amd64 kernels will refer to those with a possible exception for space
> limited install kernels. Other platforms should be converted by the
> portmaster.

I like the general idea, but I don't think it should be fixed by
maintaining yet another file. What you (seem to) really want is a
config(1) extension like:

  # Fabricate wildcarded instance for any driver capable of attaching
  # at "pci" attribute (using the proper attachment of course).
  any pci

This should be fairly easy to implement and the 'no foo' feature gives
you a way to avoid borken drivers. Rationale for this approach is that
config(1) already knows about all drivers/attachments/attributes via
files.* lists (included normally via std.${arch}), so we might just as
well make use of that instead of doing the work manually.

What do you think?

	-- Jachym