[RFC PATCH v4] ACPICA/Events: Add support to ensure GPE is disabled by default for handlers.

From: Lv Zheng
Date: Thu Nov 20 2014 - 01:45:18 EST


On some platforms, GPE is not disabled by default after ACPI hardware is
enabled. This confuses GPE drivers. This patch adds support to disable GPE
by default for GPE handler drivers.

Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
Cc: Kirill A. Shutemov <kirill@xxxxxxxxxxxxx>
---
drivers/acpi/acpica/evxface.c | 7 +++++++
1 file changed, 7 insertions(+)

Index: linux-acpica/drivers/acpi/acpica/evxface.c
===================================================================
--- linux-acpica.orig/drivers/acpi/acpica/evxface.c
+++ linux-acpica/drivers/acpi/acpica/evxface.c
@@ -821,6 +821,14 @@ acpi_install_gpe_handler(acpi_handle gpe
~(ACPI_GPE_XRUPT_TYPE_MASK | ACPI_GPE_DISPATCH_MASK);
gpe_event_info->flags |= (u8)(type | ACPI_GPE_DISPATCH_HANDLER);

+ /*
+ * Make sure that the GPE is disabled by default for the GPE
+ * handler driver. It is expected that the GPE handler driver
+ * should invoke acpi_enable_gpe() after installing the GPE
+ * handler.
+ */
+ (void)acpi_hw_low_set_gpe(gpe_event_info, ACPI_GPE_DISABLE);
+
acpi_os_release_lock(acpi_gbl_gpe_lock, flags);

unlock_and_exit:
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/