Skip to contentSkip to conversation

ACPI / ACPICA: Do not attempt to disable GPE when installing handler

PATCH Applied Rafael J. Wysocki 2 participants 2 messages Jun 11, 2010

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ACPI / ACPICA: Do not attempt to disable GPE when installing handler

From: Rafael J. Wysocki <[email protected]>

Commit 0f849d2cc6863c7874889ea60a871fb71399dd3f (ACPICA: Minimize the differences between linux GPE code and ACPICA code base) introduced a change attempting to disable a GPE before installing a handler for it in acpi_install_gpe_handler() which was incorrect. First, the GPE disabled by it is never enabled again (except during resume) which leads to battery insert/remove events not being reported on the Maxim Levitsky's machine. Second, the disabled GPE is still reported as enabled by the sysfs interface that only checks its enable register's enable_for_run mask.

Revert this change for now, because it causes more damage to happen than the bug it was supposed to fix.

---
Hi Len,

This will conflict with
http://git.kernel.org/?p=linux/kernel/git/lenb/linux-acpi-2.6.git;a=commit;h=a771b5f7b5b132fc3e653645405e20abb4da6e8c
but the conflict is easy to resolve.

Please apply.

Rafael

---
 drivers/acpi/acpica/evxface.c |   20 +++++++++-----------
 1 file changed, 9 insertions(+), 11 deletions(-)
drivers/acpi/acpica/evxface.c +0 -7
Index: linux-2.6/drivers/acpi/acpica/evxface.c
===================================================================
@@ -719,13 +720,6 @@ acpi_install_gpe_handler(acpi_handle gpe
 	handler->context = context;
 	handler->method_node = gpe_event_info->dispatch.method_node;
 
-	/* Disable the GPE before installing the handler */
-
-	status = acpi_ev_disable_gpe(gpe_event_info);
-	if (ACPI_FAILURE (status)) {
-		goto unlock_and_exit;
-	}
-
 	/* Install the handler */
 
 	flags = acpi_os_acquire_lock(acpi_gbl_gpe_lock);
reviewer Applied
#1 lore raw

applied

thanks,
Len Brown, Intel Open Source Technology Center