Subject: Re: Refactoring MI devices in GENERIC and friends
To: None <tech-kern@netbsd.org>
From: Greg Troxel <gdt@ir.bbn.com>
List: tech-kern
Date: 09/08/2007 13:41:39
  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 think this is broadly a good idea.  It's a little disconcerting to
have ath* at pci* and ath* at cardbus* in separate files, but given that
we don't have to have ath* by itself and then bus glue, I think it will
be fine in practice.

I would further suggest splitting some of these into mainstream and
fringe devices, so that people can include them separately, but that
gets to be MD in practice.  But it might enable omitting (on
e.g. sparc64) lots of stuff that's in practice only on i386 and is odd
even there.

With this, std.pci would include

  pci.common
  pci.uncommon