summaryrefslogtreecommitdiffstats
path: root/drivers/acpi/battery.c
diff options
context:
space:
mode:
authorVladimir Lebedev2006-06-27 10:49:00 +0200
committerLen Brown2006-07-01 18:13:49 +0200
commit9fdae727645215d4dbb88912b9a176ef87911a05 (patch)
treee1087f6e8f7616a7cf836bef04aba61c77b18b88 /drivers/acpi/battery.c
parentACPI: handle AC notify event on broken BIOS (diff)
downloadkernel-qcow2-linux-9fdae727645215d4dbb88912b9a176ef87911a05.tar.gz
kernel-qcow2-linux-9fdae727645215d4dbb88912b9a176ef87911a05.tar.xz
kernel-qcow2-linux-9fdae727645215d4dbb88912b9a176ef87911a05.zip
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.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/acpi/battery.c b/drivers/acpi/battery.c
index 2b8aab560b58..a192d2b47cc8 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);