Index: linux-2.6/drivers/acpi/ac.c
===================================================================
--- linux-2.6.orig/drivers/acpi/ac.c	2006-09-20 07:42:06.000000000 +0400
+++ linux-2.6/drivers/acpi/ac.c	2006-12-07 22:52:00.000000000 +0300
@@ -55,6 +55,7 @@
 
 static int acpi_ac_add(struct acpi_device *device);
 static int acpi_ac_remove(struct acpi_device *device, int type);
+static int acpi_ac_resume(struct acpi_device *device, int state);
 static int acpi_ac_open_fs(struct inode *inode, struct file *file);
 
 static struct acpi_driver acpi_ac_driver = {
@@ -64,6 +65,7 @@
 	.ops = {
 		.add = acpi_ac_add,
 		.remove = acpi_ac_remove,
+		.resume = acpi_ac_resume,
 		},
 };
 
@@ -281,6 +283,22 @@
 	return 0;
 }
 
+static int acpi_ac_resume(struct acpi_device *device, int state)
+{
+	int result = 0;
+	struct acpi_ac *ac = NULL;
+
+
+	if (!device || !acpi_driver_data(device))
+		return -EINVAL;
+
+	ac = (struct acpi_ac *)acpi_driver_data(device);
+
+	result = acpi_ac_get_state(ac);
+
+	return (result);
+}
+
 static int __init acpi_ac_init(void)
 {
 	int result;
