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.zh...@intel.com>
Cc: Kirill A. Shutemov <kir...@shutemov.name>
---
 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 majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to