freebsd-skq/sys
jhb 4212d70883 Add an ACPI PCI bus driver that is a subclass of the generic PCI bus
driver.  This driver overrides the probe, attach, and read_ivar methods.

If the parent bridge is an ACPI PCI bridge, then the probe routine will
match, otherwise it will fail.  It tests this by seeing if it can get
the ACPI_HANDLE ivar from the bridge device.

In the attach routine, it uses pci_add_children() to add all the child
devices (but with a slightly larger ivar so it can store ACPI_HANDLE's
for child devices) and then walks through the ACPI namespace below the
bus device to cache ACPI_HANDLE's for all child devices present in the
namespace.  It does this by comparing the pci slot and function to the
address encoded in _ADR of the devices in the ACPI namespace.

The read_ivar routine passes most requests off to pci_read_ivar()
and adds a new request so that the ACPI_HANDLE for a child device can
be read.

To add proper power support the power methods can be overridden as well,
but that is not currently implemented.  Also, there are cases where a
device may show in the ACPI namespace as a PCI device that the PCI probe
does not find.  Currently such devices are ignored.

Tested on:	i386, ia64
2002-08-26 17:55:42 +00:00
..
alpha Fix a long-standing bug on alpha: 2002-08-26 02:39:03 +00:00
amd64 Replace various spelling with FALLTHROUGH which is lint()able 2002-08-25 13:23:09 +00:00
arm Since arm and powerpc aren't far enough to set stathz, take a 2002-08-26 03:44:11 +00:00
boot - Do not pretend to compile a kernel and remove the definition 2002-08-21 15:52:23 +00:00
cam Adjust scsi_calc_syncparam() to the exception table changing from 10ths to 2002-08-26 17:13:35 +00:00
coda Fix typo in the last revision. 2002-08-04 19:34:38 +00:00
compat Replace (ab)uses of "NULL" where "0" is really meant. 2002-08-22 21:24:01 +00:00
conf Turned format checking back on. It was left turned off for too long after 2002-08-25 08:05:02 +00:00
contrib Don't use "NULL" when "0" is really meant. 2002-08-23 20:07:19 +00:00
crypto Fix some really pedantic GCC warnings. 2002-07-15 13:45:15 +00:00
ddb When talking about c_db_sym_t, mention that it is not just like db_sym_t: 2002-08-14 17:56:47 +00:00
dev Add an ACPI PCI bus driver that is a subclass of the generic PCI bus 2002-08-26 17:55:42 +00:00
fs Replace various spelling with FALLTHROUGH which is lint()able 2002-08-25 13:23:09 +00:00
geom Use 'p' as the partition specifier instead of 's'. We continue to use 2002-08-24 22:42:16 +00:00
gnu In order to better support flexible and extensible access control, 2002-08-15 20:55:08 +00:00
i4b Replace various spelling with FALLTHROUGH which is lint()able 2002-08-25 13:23:09 +00:00
i386 Replace various spelling with FALLTHROUGH which is lint()able 2002-08-25 13:23:09 +00:00
ia64 o Retire pmap_pageable(). It's an advisory routine that none 2002-08-25 04:20:05 +00:00
isa Add suspend/resume method to syscons. This switch the mode 2002-08-25 18:35:44 +00:00
isofs/cd9660 Replace various spelling with FALLTHROUGH which is lint()able 2002-08-25 13:23:09 +00:00
kern move the assert to cover more cases 2002-08-26 05:02:56 +00:00
libkern Include sys/libkern.h for the kernel prototypes of these libkern functions 2002-08-22 20:08:07 +00:00
modules Keep subdirectory list sorted. 2002-08-20 23:58:49 +00:00
net Replace various spelling with FALLTHROUGH which is lint()able 2002-08-25 13:23:09 +00:00
netatalk Introduce experimental support for MAC in the AppleTalk/EtherTalk stack. 2002-08-15 18:58:44 +00:00
netatm Replace various spelling with FALLTHROUGH which is lint()able 2002-08-25 13:23:09 +00:00
netgraph Don't use "NULL" when "0" is really meant. 2002-08-22 00:30:03 +00:00
netinet Replace various spelling with FALLTHROUGH which is lint()able 2002-08-25 13:23:09 +00:00
netinet6 Lock the sysctl(8) knobs that turn ip{,6}fw(8) firewalling and 2002-08-25 03:50:29 +00:00
netipx Replace various spelling with FALLTHROUGH which is lint()able 2002-08-25 13:23:09 +00:00
netkey - fixed the order of searching SA table for packets. 2002-07-10 16:39:38 +00:00
netnatm
netncp Wire the sysctl output buffer before grabbing any locks to prevent 2002-07-28 19:59:31 +00:00
netns Replace various spelling with FALLTHROUGH which is lint()able 2002-08-25 13:23:09 +00:00
netsmb Wire the sysctl output buffer before grabbing any locks to prevent 2002-07-28 19:59:31 +00:00
nfs
nfsclient Increase size of ifnet.if_flags from 16 bits (short) to 32 bits (int). To avoid 2002-08-18 07:05:00 +00:00
nfsserver Make the V2 errno translation more resistent to new errnos. 2002-08-21 19:28:44 +00:00
pc98 Replace various spelling with FALLTHROUGH which is lint()able 2002-08-25 13:23:09 +00:00
pccard Add 16-bit before bus to keep the words card and bus apart. 2002-07-31 20:01:11 +00:00
pci Replace various spelling with FALLTHROUGH which is lint()able 2002-08-25 13:23:09 +00:00
posix4 Part 1 of KSE-III 2002-06-29 17:26:22 +00:00
powerpc Since arm and powerpc aren't far enough to set stathz, take a 2002-08-26 03:44:11 +00:00
rpc
security Prefer NULL to 0 when passing a NULL pointer. 2002-08-20 02:54:09 +00:00
sparc64 o Retire pmap_pageable(). It's an advisory routine that none 2002-08-25 04:20:05 +00:00
sys Move intrmask_t to the kernel-only section of <sys/types.h>. Add some 2002-08-25 19:26:31 +00:00
tools - Add two new debugging macros: ASSERT_VI_LOCKED and ASSERT_VI_UNLOCKED 2002-08-21 06:19:29 +00:00
ufs Replace various spelling with FALLTHROUGH which is lint()able 2002-08-25 13:23:09 +00:00
vm o Retire pmap_pageable(). It's an advisory routine that none 2002-08-25 04:20:05 +00:00
Makefile