linux/drivers/acpi
Zhao Yakui e92b297cc7 IPMI/ACPI: Add the IPMI opregion driver to enable ACPI to access BMC controller
ACPI 4.0 spec adds the ACPI IPMI opregion, which means that the ACPI AML
code can also communicate with the BMC controller. This is to install
the ACPI IPMI opregion and enable the ACPI to access the BMC controller
through the IPMI message.

     It will create IPMI user interface for every IPMI device detected
in ACPI namespace and install the corresponding IPMI opregion space handler.
Then it can enable ACPI to access the BMC controller through the IPMI
message.

The following describes how to process the IPMI request in IPMI space handler:
    1. format the IPMI message based on the request in AML code.
    IPMI system address. Now the address type is SYSTEM_INTERFACE_ADDR_TYPE
    IPMI net function & command
    IPMI message payload
    2. send the IPMI message by using the function of ipmi_request_settime
    3. wait for the completion of IPMI message. It can be done in different
routes: One is in handled in IPMI user recv callback function. Another is
handled in timeout function.
    4. format the IPMI response and return it to ACPI AML code.

At the same time it also addes the module dependency. The ACPI IPMI opregion
will depend on the IPMI subsystem.

Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
cc: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Corey Minyard <cminyard@mvista.com>
Signed-off-by: Len Brown <len.brown@intel.com>
2010-12-14 00:22:14 -05:00
..
acpica Merge branch 'gpe-defer' into release 2010-10-25 02:13:09 -04:00
apei Merge branch 'llseek' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl 2010-10-22 10:52:56 -07:00
ac.c ACPI ac/battery/sbs: sysfs I/F always built in, procfs I/F disabled by default 2010-10-15 22:02:38 -04:00
acpi_ipmi.c IPMI/ACPI: Add the IPMI opregion driver to enable ACPI to access BMC controller 2010-12-14 00:22:14 -05:00
acpi_memhotplug.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
acpi_pad.c Merge branch 'x86-idle-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-10-21 13:45:38 -07:00
atomicio.c ACPI, APEI, Fix acpi_pre_map() return value 2010-09-29 14:02:16 -04:00
battery.c Merge branch 'battery' into release 2010-10-25 02:12:57 -04:00
blacklist.c Merge branch 'msi-dmi' into release 2010-10-08 22:37:46 -04:00
bus.c ACPI: install ACPI table handler before any dynamic tables being loaded 2010-10-26 04:55:29 -04:00
button.c ACPI/PNP: A HID value of an object never changes -> make it const 2010-10-01 19:28:51 -04:00
cm_sbs.c ACPI: Move definition of PREFIX from acpi_bus.h to internal..h 2009-08-28 19:57:27 -04:00
container.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
debugfs.c ACPI: debugfs custom_method open to non-root 2010-11-13 09:52:16 -08:00
dock.c Merge branch 'misc' into release 2010-10-26 14:51:00 -04:00
ec_sys.c llseek: automatically add .llseek fop 2010-10-15 15:53:27 +02:00
ec.c ACPI: Make Embedded Controller command timeout delay configurable 2010-10-22 01:21:30 -04:00
event.c llseek: automatically add .llseek fop 2010-10-15 15:53:27 +02:00
fan.c ACPI fan: remove deprecated procfs I/F 2010-10-15 22:02:47 -04:00
glue.c ACPI: Add the check of ADR flag in course of finding ACPI handle for PCI device 2010-07-26 22:32:13 -04:00
hed.c ACPI Hardware Error Device (PNP0C33) support 2010-05-19 22:40:24 -04:00
internal.h Merge branch 'linus' into release 2010-08-15 01:06:31 -04:00
Kconfig IPMI/ACPI: Add the IPMI opregion driver to enable ACPI to access BMC controller 2010-12-14 00:22:14 -05:00
Makefile IPMI/ACPI: Add the IPMI opregion driver to enable ACPI to access BMC controller 2010-12-14 00:22:14 -05:00
numa.c gcc-4.6: ACPI: fix unused but set variables in ACPI 2010-08-15 00:53:08 -04:00
osl.c Merge branch 'misc' into release 2010-10-26 14:51:00 -04:00
pci_bind.c PCI / ACPI / PM: Platform support for PCI PME wake-up 2010-02-22 16:21:02 -08:00
pci_irq.c ACPI: remove unused declaration of proc_fs.h 2010-10-15 22:03:36 -04:00
pci_link.c ACPI: remove unused declaration of proc_fs.h 2010-10-15 22:03:36 -04:00
pci_root.c ACPI: remove unused declaration of proc_fs.h 2010-10-15 22:03:36 -04:00
pci_slot.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
power_meter.c power_meter: acpi_device_class "power_meter_resource" too long 2010-05-06 02:38:24 -04:00
power.c ACPI / PM: Fix reference counting of power resources 2010-10-23 01:56:14 -04:00
proc.c ACPI: remove deprecated ACPI procfs I/F 2010-08-15 00:27:51 -04:00
processor_core.c Merge branch 'pdc-regression' into release 2010-10-08 22:35:02 -04:00
processor_driver.c Merge branch 'misc' into release 2010-10-26 14:51:00 -04:00
processor_idle.c Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 2010-10-26 17:28:37 -07:00
processor_perflib.c ACPI: Fix typos 2010-09-28 21:38:19 -04:00
processor_thermal.c ACPI: thermal: remove unused limit code 2010-10-19 13:58:34 -04:00
processor_throttling.c ACPI processor: make /proc/acpi/processor/*/throttle depends on CONFIG_ACPI_PROCFS 2010-10-15 22:03:17 -04:00
reboot.c ACPI: reboot.c: use new acpi_reset interface 2008-12-31 01:15:00 -05:00
sbs.c ACPI ac/battery/sbs: sysfs I/F always built in, procfs I/F disabled by default 2010-10-15 22:02:38 -04:00
sbshc.c sbshc: acpi_device_class "smbus_host_controller" too long 2010-05-06 02:38:25 -04:00
sbshc.h
scan.c Merge branch 'gpe-defer' into release 2010-10-25 02:13:09 -04:00
sleep.c Merge branch 'misc' into release 2010-10-26 14:51:00 -04:00
sleep.h ACPI: static sleep_states[] and acpi_gts_bfs_check 2010-10-19 13:44:37 -04:00
sysfs.c ACPI: fix build warnings resulting from merge window conflict 2010-09-28 21:38:01 -04:00
tables.c ACPI: delete the "acpi=ht" boot option 2010-03-14 20:58:38 -04:00
thermal.c ACPI thermal: remove deprecated procfs I/F 2010-10-15 22:03:01 -04:00
utils.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
video_detect.c ACPI video: fix a poor warning message 2010-09-28 21:38:01 -04:00
video.c ACPI video: remove deprecated procfs I/F 2010-10-15 22:03:08 -04:00
wakeup.c Merge branch 'acpica-gpe' into release 2010-08-15 00:25:40 -04:00