Subject: ISA/PCI autoconfiguration changes...
To: None <current-users@NetBSD.ORG>
From: None <Chris_G_Demetriou@NIAGARA.NECTAR.CS.CMU.EDU>
List: current-users
Date: 02/27/1996 21:03:01
[ This mostly concerns i386 users...  however, others may be
  interested in it as well. ]

Just thought i'd let you all know that the ISA and PCI
autoconfiguration code has just Seriously Changed.

The main changes are:

	(1) Machine-independent ISA and PCI bus configuration
	    (i.e. m-i attachment of the bus, configuration of
	    subdevices, etc.)
	(2) PCI-PCI bridge support.

Some other notes that may be of interest:

I'm going to implement scanning of multi-function devices soon.
the 'pci' device now handles exactly one PCI bus.  secondary busses
_must_ be configured as 'pci' children of 'ppb' (PCI-PCI bridge)
devices.


What this means to you:

(1) the entries for PCI devices in your kernel configuration file
will have to change.  Right now, they look like:

foo*	at pci? bus ? dev ?

and they'll have to change to:

foo*	at pci? dev ? function ?

(2) If you're using a PCI-PCI bridge (via hacks to i386/pci/pci_machdep.c),
then you'll need to add something like:

ppb*	at pci? dev ? function ?		# PCI-PCI bridges
pci*	at ppb? bus ?

to your kernel configuration file.  Be careful; the PPB support in
this code is ... very lightly tested.  (It's very similar to code i
developed for the Alpha port, but if you're using a PPB with the new
code, PLEASE TELL ME.)



later,

chris