diff options
author | Bob Moore <robert.moore@intel.com> | 2012-05-03 07:08:19 +0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2012-06-01 19:51:50 +0400 |
commit | 86ed4bc83abf530cf2019044b74f89a39dfd6425 (patch) | |
tree | 7cd21414f6121486079be2ca9cb9ff0a7722e01b /drivers/acpi/acpica/aclocal.h | |
parent | 5134abfcfb4a8a9ef42c82dabad05762fbf04376 (diff) | |
download | linux-86ed4bc83abf530cf2019044b74f89a39dfd6425.tar.xz |
ACPICA: Add support for multiple notify handlers
This change adds support to allow multiple notify handlers on
Device, ThermalZone, and Processor objects. Also re-worked
and restructured the entire notify support code for handler
installation, handler removal, notify event queuing, and notify
dispatch to handler.
Extends and updates original commit 3f0be67("ACPI / ACPICA: Multiple
system notify handlers per device") by Rafael Wysocki.
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lin Ming <ming.m.lin@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/acpica/aclocal.h')
-rw-r--r-- | drivers/acpi/acpica/aclocal.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/drivers/acpi/acpica/aclocal.h b/drivers/acpi/acpica/aclocal.h index e3922ca20e7f..28f677834bfd 100644 --- a/drivers/acpi/acpica/aclocal.h +++ b/drivers/acpi/acpica/aclocal.h @@ -600,13 +600,22 @@ acpi_status(*acpi_parse_downwards) (struct acpi_walk_state * walk_state, typedef acpi_status(*acpi_parse_upwards) (struct acpi_walk_state * walk_state); +/* Global handlers for AML Notifies */ + +struct acpi_global_notify_handler { + acpi_notify_handler handler; + void *context; +}; + /* * Notify info - used to pass info to the deferred notify * handler/dispatcher. */ struct acpi_notify_info { - ACPI_STATE_COMMON struct acpi_namespace_node *node; - union acpi_operand_object *handler_obj; + ACPI_STATE_COMMON u8 handler_list_id; + struct acpi_namespace_node *node; + union acpi_operand_object *handler_list_head; + struct acpi_global_notify_handler *global; }; /* Generic state is union of structs above */ |