Messages in this thread Patch in this message |  | | From | Lan Tianyu <> | Subject | [PATCH V2] ACPI/Button: Fix enable Button GPEs twice | Date | Thu, 12 Dec 2013 18:08:17 +0800 |
| |
Button GPEs have been enabled in the acpi_wake_device_init() during boot and Button driver enables these GPEs second time. This causes disabling these gpes via sysfs interface requires twice "echo disable > /sys/firmware/acpi/interrupts/gpeXXX". This patch is to remove related code in the Button driver.
Signed-off-by: Lan Tianyu <tianyu.lan@intel.com> --- Change since V1: Remove wakeup_enabled flag and disable gpe operation in the acpi_button_remove().
drivers/acpi/button.c | 18 ------------------ 1 file changed, 18 deletions(-)
diff --git a/drivers/acpi/button.c b/drivers/acpi/button.c index 9e3a6cb..11c11f6 100644 --- a/drivers/acpi/button.c +++ b/drivers/acpi/button.c @@ -100,7 +100,6 @@ struct acpi_button { struct input_dev *input; char phys[32]; /* for input device */ unsigned long pushed; - bool wakeup_enabled; }; static BLOCKING_NOTIFIER_HEAD(acpi_lid_notifier); @@ -406,16 +405,6 @@ static int acpi_button_add(struct acpi_device *device) lid_device = device; } - if (device->wakeup.flags.valid) { - /* Button's GPE is run-wake GPE */ - acpi_enable_gpe(device->wakeup.gpe_device, - device->wakeup.gpe_number); - if (!device_may_wakeup(&device->dev)) { - device_set_wakeup_enable(&device->dev, true); - button->wakeup_enabled = true; - } - } - printk(KERN_INFO PREFIX "%s [%s]\n", name, acpi_device_bid(device)); return 0; @@ -432,13 +421,6 @@ static int acpi_button_remove(struct acpi_device *device) { struct acpi_button *button = acpi_driver_data(device); - if (device->wakeup.flags.valid) { - acpi_disable_gpe(device->wakeup.gpe_device, - device->wakeup.gpe_number); - if (button->wakeup_enabled) - device_set_wakeup_enable(&device->dev, false); - } - acpi_button_remove_fs(device); input_unregister_device(button->input); kfree(button); -- 1.8.2.1
|  |