freebsd-nq/sys/dev/acpica
John Baldwin 28bf1fad05 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
..
Osd Resolve conflicts arising from the ACPI CA 20020725 import. 2002-07-30 19:35:32 +00:00
acpi_acad.c Add generalized power profile code. 2002-03-04 18:46:13 +00:00
acpi_battery.c Staticise devclasses and some unnecessarily global variables. 2002-01-08 06:46:01 +00:00
acpi_button.c Add device(power/sleep button and lid) wake function from sleeping state. 2002-07-22 12:52:54 +00:00
acpi_cmbat.c Use the _STA method of a battery control method to see if a battery is 2002-08-21 15:01:53 +00:00
acpi_cpu.c Brutally deal with __func__ being 'const char *' on gcc-3.1. 2002-05-19 06:16:47 +00:00
acpi_ec.c Make interrupt driven EC transaction optional. 2002-07-02 03:38:07 +00:00
acpi_lid.c Add device(power/sleep button and lid) wake function from sleeping state. 2002-07-22 12:52:54 +00:00
acpi_pci.c Add an ACPI PCI bus driver that is a subclass of the generic PCI bus 2002-08-26 17:55:42 +00:00
acpi_pcib_acpi.c In acpi_pcib_route_interrupt(), the code claims to check to see if a PCI 2002-08-26 15:12:47 +00:00
acpi_pcib.c In acpi_pcib_route_interrupt(), the code claims to check to see if a PCI 2002-08-26 15:12:47 +00:00
acpi_powerres.c Brutally deal with __func__ being 'const char *' on gcc-3.1. 2002-05-19 06:16:47 +00:00
acpi_resource.c Brutally deal with __func__ being 'const char *' on gcc-3.1. 2002-05-19 06:16:47 +00:00
acpi_thermal.c Fixed printf format errors which apparently crept in while -Wformat was 2002-05-25 11:18:03 +00:00
acpi_timer.c Brutally deal with __func__ being 'const char *' on gcc-3.1. 2002-05-19 06:16:47 +00:00
acpi.c Add new sysctl MIB (hw.acpi.sleep_delay) to specify the delay (in 2002-08-25 06:13:53 +00:00
acpica_support.c Resolve conflicts arising from the ACPI CA 20020611 import. 2002-07-09 17:54:02 +00:00
acpica_support.h Add S4BIOS sleep (BIOS hibernation) and DSDT overriding support. 2001-11-06 15:00:30 +00:00
acpiio.h Fix wrong member variable ordering of struct acpi_bif. 2002-08-09 07:08:53 +00:00
acpivar.h Add new sysctl MIB (hw.acpi.sleep_delay) to specify the delay (in 2002-08-25 06:13:53 +00:00