aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/acpica/evevent.c
diff options
context:
space:
mode:
authorRafael J. Wysocki <rjw@sisk.pl>2010-09-15 18:30:43 -0400
committerLen Brown <len.brown@intel.com>2010-09-24 16:55:47 -0400
commita210080195c95ebca2a517ee3057d71607aa65e0 (patch)
tree96aa2aee4b9bdbc747b7a0d7150d0b41650ebe90 /drivers/acpi/acpica/evevent.c
parent2422084a94fcd5038406261b331672a13c92c050 (diff)
ACPI / ACPICA: Defer enabling of runtime GPEs (v3)
The current ACPI GPEs initialization code has a problem that it enables some GPEs pointed to by device _PRW methods, generally intended for signaling wakeup events (system or device wakeup). These GPEs are then almost immediately disabled by the ACPI namespace scanning code with the help of acpi_gpe_can_wake(), but it would be better not to enable them at all until really necessary. Modify the initialization of GPEs so that the ones that have associated _Lxx or _Exx methods and are not pointed to by any _PRW methods will be enabled after the namespace scan is complete. Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/acpica/evevent.c')
-rw-r--r--drivers/acpi/acpica/evevent.c41
1 files changed, 0 insertions, 41 deletions
diff --git a/drivers/acpi/acpica/evevent.c b/drivers/acpi/acpica/evevent.c
index 303618889da0..c61c3039c31a 100644
--- a/drivers/acpi/acpica/evevent.c
+++ b/drivers/acpi/acpica/evevent.c
@@ -95,47 +95,6 @@ acpi_status acpi_ev_initialize_events(void)
95 95
96/******************************************************************************* 96/*******************************************************************************
97 * 97 *
98 * FUNCTION: acpi_ev_install_fadt_gpes
99 *
100 * PARAMETERS: None
101 *
102 * RETURN: Status
103 *
104 * DESCRIPTION: Completes initialization of the FADT-defined GPE blocks
105 * (0 and 1). The HW must be fully initialized at this point,
106 * including global lock support.
107 *
108 ******************************************************************************/
109
110acpi_status acpi_ev_install_fadt_gpes(void)
111{
112 acpi_status status;
113
114 ACPI_FUNCTION_TRACE(ev_install_fadt_gpes);
115
116 /* Namespace must be locked */
117
118 status = acpi_ut_acquire_mutex(ACPI_MTX_NAMESPACE);
119 if (ACPI_FAILURE(status)) {
120 return (status);
121 }
122
123 /* FADT GPE Block 0 */
124
125 (void)acpi_ev_initialize_gpe_block(acpi_gbl_fadt_gpe_device,
126 acpi_gbl_gpe_fadt_blocks[0]);
127
128 /* FADT GPE Block 1 */
129
130 (void)acpi_ev_initialize_gpe_block(acpi_gbl_fadt_gpe_device,
131 acpi_gbl_gpe_fadt_blocks[1]);
132
133 (void)acpi_ut_release_mutex(ACPI_MTX_NAMESPACE);
134 return_ACPI_STATUS(AE_OK);
135}
136
137/*******************************************************************************
138 *
139 * FUNCTION: acpi_ev_install_xrupt_handlers 98 * FUNCTION: acpi_ev_install_xrupt_handlers
140 * 99 *
141 * PARAMETERS: None 100 * PARAMETERS: None