ACPI / PM: Do not enable multiple devices to wake up simultaneously
[pandora-kernel.git] / drivers / acpi / proc.c
index afad677..129effb 100644 (file)
@@ -341,7 +341,6 @@ acpi_system_write_wakeup_device(struct file *file,
        char strbuf[5];
        char str[5] = "";
        unsigned int len = count;
-       struct acpi_device *found_dev = NULL;
 
        if (len > 4)
                len = 4;
@@ -363,33 +362,10 @@ acpi_system_write_wakeup_device(struct file *file,
                if (!strncmp(dev->pnp.bus_id, str, 4)) {
                        dev->wakeup.state.enabled =
                            dev->wakeup.state.enabled ? 0 : 1;
-                       found_dev = dev;
+                       physical_device_enable_wakeup(dev);
                        break;
                }
        }
-       if (found_dev) {
-               physical_device_enable_wakeup(found_dev);
-               list_for_each_safe(node, next, &acpi_wakeup_device_list) {
-                       struct acpi_device *dev = container_of(node,
-                                                              struct
-                                                              acpi_device,
-                                                              wakeup_list);
-
-                       if ((dev != found_dev) &&
-                           (dev->wakeup.gpe_number ==
-                            found_dev->wakeup.gpe_number)
-                           && (dev->wakeup.gpe_device ==
-                               found_dev->wakeup.gpe_device)) {
-                               printk(KERN_WARNING
-                                      "ACPI: '%s' and '%s' have the same GPE, "
-                                      "can't disable/enable one separately\n",
-                                      dev->pnp.bus_id, found_dev->pnp.bus_id);
-                               dev->wakeup.state.enabled =
-                                   found_dev->wakeup.state.enabled;
-                               physical_device_enable_wakeup(dev);
-                       }
-               }
-       }
        mutex_unlock(&acpi_device_lock);
        return count;
 }