diff options
author | Len Brown <len.brown@intel.com> | 2008-10-23 05:25:26 +0200 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2008-10-23 05:25:26 +0200 |
commit | 47bf31adc541bef0c20de15e800e0011f1ae70c7 (patch) | |
tree | 28903879a8570eaefa57942ec3d475d365f5a465 /drivers/acpi/bus.c | |
parent | Merge branch 'cpuidle' into test (diff) | |
parent | Subject: ACPI dock: Use ACPI_EXCEPTION instead of printk(KERN_ERR (diff) | |
download | linux-47bf31adc541bef0c20de15e800e0011f1ae70c7.tar.xz linux-47bf31adc541bef0c20de15e800e0011f1ae70c7.zip |
Merge branch 'dock' into test
Conflicts:
drivers/acpi/osl.c
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/bus.c')
-rw-r--r-- | drivers/acpi/bus.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c index e9b116d2b56d..e6311f432edf 100644 --- a/drivers/acpi/bus.c +++ b/drivers/acpi/bus.c @@ -525,6 +525,19 @@ static int acpi_bus_check_scope(struct acpi_device *device) return 0; } +static BLOCKING_NOTIFIER_HEAD(acpi_bus_notify_list); +int register_acpi_bus_notifier(struct notifier_block *nb) +{ + return blocking_notifier_chain_register(&acpi_bus_notify_list, nb); +} +EXPORT_SYMBOL_GPL(register_acpi_bus_notifier); + +void unregister_acpi_bus_notifier(struct notifier_block *nb) +{ + blocking_notifier_chain_unregister(&acpi_bus_notify_list, nb); +} +EXPORT_SYMBOL_GPL(unregister_acpi_bus_notifier); + /** * acpi_bus_notify * --------------- @@ -535,6 +548,8 @@ static void acpi_bus_notify(acpi_handle handle, u32 type, void *data) int result = 0; struct acpi_device *device = NULL; + blocking_notifier_call_chain(&acpi_bus_notify_list, + type, (void *)handle); if (acpi_bus_get_device(handle, &device)) return; |