diff options
author | Vladimir Lebedev <vladimir.p.lebedev@intel.com> | 2006-06-27 04:49:00 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2006-07-01 12:13:49 -0400 |
commit | 9fdae727645215d4dbb88912b9a176ef87911a05 (patch) | |
tree | e1087f6e8f7616a7cf836bef04aba61c77b18b88 /drivers/acpi/battery.c | |
parent | 03d782524e2d0511317769521c8d5daadbab8482 (diff) |
ACPI: handle battery notify event on broken BIOS
http://bugzilla.kernel.org/show_bug.cgi?id=3241
Signed-off-by: Vladimir Lebedev <vladimir.p.lebedev@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/battery.c')
-rw-r--r-- | drivers/acpi/battery.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/acpi/battery.c b/drivers/acpi/battery.c index 2b8aab560b5..a192d2b47cc 100644 --- a/drivers/acpi/battery.c +++ b/drivers/acpi/battery.c @@ -665,6 +665,8 @@ static void acpi_battery_notify(acpi_handle handle, u32 event, void *data) switch (event) { case ACPI_BATTERY_NOTIFY_STATUS: case ACPI_BATTERY_NOTIFY_INFO: + case ACPI_NOTIFY_BUS_CHECK: + case ACPI_NOTIFY_DEVICE_CHECK: acpi_battery_check(battery); acpi_bus_generate_event(device, event, battery->flags.present); break; @@ -706,7 +708,7 @@ static int acpi_battery_add(struct acpi_device *device) goto end; status = acpi_install_notify_handler(device->handle, - ACPI_DEVICE_NOTIFY, + ACPI_ALL_NOTIFY, acpi_battery_notify, battery); if (ACPI_FAILURE(status)) { result = -ENODEV; @@ -738,7 +740,7 @@ static int acpi_battery_remove(struct acpi_device *device, int type) battery = (struct acpi_battery *)acpi_driver_data(device); status = acpi_remove_notify_handler(device->handle, - ACPI_DEVICE_NOTIFY, + ACPI_ALL_NOTIFY, acpi_battery_notify); acpi_battery_remove_fs(device); |