summary refs log tree commit diff
path: root/drivers/acpi/scan.c
diff options
context:
space:
mode:
authorLen Brown <len.brown@intel.com>2010-10-25 02:13:09 -0400
committerLen Brown <len.brown@intel.com>2010-10-25 02:13:09 -0400
commit6e04c417aed5b0a5bd6ae80928bbd759fa1faabc (patch)
treebe657ff1734320850c2ea37d4336b576f07dca31 /drivers/acpi/scan.c
parent880308089d0abebac365c3a1378b4e3238b100ac (diff)
parenta210080195c95ebca2a517ee3057d71607aa65e0 (diff)
downloadlinux-6e04c417aed5b0a5bd6ae80928bbd759fa1faabc.tar.gz
Merge branch 'gpe-defer' into release
Diffstat (limited to 'drivers/acpi/scan.c')
-rw-r--r--drivers/acpi/scan.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c
index 6155eeb2e89a..2b6c21d86b98 100644
--- a/drivers/acpi/scan.c
+++ b/drivers/acpi/scan.c
@@ -1434,6 +1434,7 @@ EXPORT_SYMBOL(acpi_bus_add);
 int acpi_bus_start(struct acpi_device *device)
 {
 	struct acpi_bus_ops ops;
+	int result;
 
 	if (!device)
 		return -EINVAL;
@@ -1441,7 +1442,11 @@ int acpi_bus_start(struct acpi_device *device)
 	memset(&ops, 0, sizeof(ops));
 	ops.acpi_op_start = 1;
 
-	return acpi_bus_scan(device->handle, &ops, NULL);
+	result = acpi_bus_scan(device->handle, &ops, NULL);
+
+	acpi_update_gpes();
+
+	return result;
 }
 EXPORT_SYMBOL(acpi_bus_start);
 
@@ -1555,6 +1560,8 @@ int __init acpi_scan_init(void)
 
 	if (result)
 		acpi_device_unregister(acpi_root, ACPI_BUS_REMOVAL_NORMAL);
+	else
+		acpi_update_gpes();
 
 	return result;
 }