aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Lupien <lupien@physique.usherbrooke.ca>2004-08-19 01:26:00 -0400
committerLen Brown <len.brown@intel.com>2006-07-01 12:09:27 -0400
commit03d782524e2d0511317769521c8d5daadbab8482 (patch)
treec8d1d5b828993712e1a23022f58e61077fe5341e
parent37672d4c5263d54ee4302f55242f6fd5317b0f9f (diff)
ACPI: handle AC notify event on broken BIOS
http://bugzilla.kernel.org/show_bug.cgi?id=3241 updated by Vladimir Lebedev Signed-off-by: Len Brown <len.brown@intel.com>
-rw-r--r--drivers/acpi/ac.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/acpi/ac.c b/drivers/acpi/ac.c
index 4537ae4838c4..69a98da13913 100644
--- a/drivers/acpi/ac.c
+++ b/drivers/acpi/ac.c
@@ -194,6 +194,8 @@ static void acpi_ac_notify(acpi_handle handle, u32 event, void *data)
194 device = ac->device; 194 device = ac->device;
195 switch (event) { 195 switch (event) {
196 case ACPI_AC_NOTIFY_STATUS: 196 case ACPI_AC_NOTIFY_STATUS:
197 case ACPI_NOTIFY_BUS_CHECK:
198 case ACPI_NOTIFY_DEVICE_CHECK:
197 acpi_ac_get_state(ac); 199 acpi_ac_get_state(ac);
198 acpi_bus_generate_event(device, event, (u32) ac->state); 200 acpi_bus_generate_event(device, event, (u32) ac->state);
199 break; 201 break;
@@ -235,7 +237,7 @@ static int acpi_ac_add(struct acpi_device *device)
235 goto end; 237 goto end;
236 238
237 status = acpi_install_notify_handler(device->handle, 239 status = acpi_install_notify_handler(device->handle,
238 ACPI_DEVICE_NOTIFY, acpi_ac_notify, 240 ACPI_ALL_NOTIFY, acpi_ac_notify,
239 ac); 241 ac);
240 if (ACPI_FAILURE(status)) { 242 if (ACPI_FAILURE(status)) {
241 result = -ENODEV; 243 result = -ENODEV;
@@ -267,7 +269,7 @@ static int acpi_ac_remove(struct acpi_device *device, int type)
267 ac = (struct acpi_ac *)acpi_driver_data(device); 269 ac = (struct acpi_ac *)acpi_driver_data(device);
268 270
269 status = acpi_remove_notify_handler(device->handle, 271 status = acpi_remove_notify_handler(device->handle,
270 ACPI_DEVICE_NOTIFY, acpi_ac_notify); 272 ACPI_ALL_NOTIFY, acpi_ac_notify);
271 273
272 acpi_ac_remove_fs(device); 274 acpi_ac_remove_fs(device);
273 275