Skip to contentSkip to conversation

ACPI: disable the gpe that doesn't have a GPE handler correctly

PATCH New Zhang Rui 1 participant 1 message Nov 20, 2007 ACPI

lore
Share & tools
lore

Zhang Rui

author
#0 lore raw

PATCH 1/1 ACPI: disable the gpe that doesn't have a GPE handler correctly

From: Zhang Rui <[email protected]>

The current code only disable the GPE by judging the GPE type, which is one of WAKE, RUNTIME and WAKE_RUN. In bug 6217, GPE 17 is enabled by the AML code ... And it will be triggerred when an extra CRT is connected. As GPE 17 is not ec gpe, and there is no _Lxx/_Exx method exists in the _GPE scope, the type flag of GPE 17 is none of the three GPE types.
In this case, the GPE is not disabled correctly.

http://bugzilla.kernel..org/show_bug.cgi?id=6217

---
 drivers/acpi/events/evgpe.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
drivers/acpi/events/evgpe.c +3 -3
Index: linux-2.6/drivers/acpi/events/evgpe.c
===================================================================
@@ -277,11 +277,11 @@ acpi_status acpi_ev_disable_gpe(struct a
 		/* Disable the requested runtime GPE */
 
 		ACPI_CLEAR_BIT(gpe_event_info->flags, ACPI_GPE_RUN_ENABLED);
-		status = acpi_hw_write_gpe_enable_reg(gpe_event_info);
-		break;
+
+		/*lint -fallthrough */
 
 	default:
-		return_ACPI_STATUS(AE_BAD_PARAMETER);
+		acpi_hw_write_gpe_enable_reg(gpe_event_info);
 	}
 
 	return_ACPI_STATUS(AE_OK);