diff options
author | Lin Ming <ming.m.lin@intel.com> | 2011-02-14 02:29:34 -0500 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2011-03-02 19:38:03 -0500 |
commit | 6dfad339645247c9deb553e4d68e21211ddc61bd (patch) | |
tree | 79bbaa90277b9ae5dd54ebdfd856553b6aee8e07 | |
parent | dd9c1549edef02290edced639f67b54a25abbe0e (diff) |
ACPICA: GPE detect optimization - ignore unused GPE registers
This optimization will simply ignore GPE registers that contain
no enabled GPEs - there is no need to read the register.
ACPICA bugzilla 884.
http://www.acpica.org/bugzilla/show_bug.cgi?id=884
Signed-off-by: Lin Ming <ming.m.lin@intel.com>
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
-rw-r--r-- | drivers/acpi/acpica/evgpe.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/acpi/acpica/evgpe.c b/drivers/acpi/acpica/evgpe.c index 14988a86066f..67d44ef2fbc1 100644 --- a/drivers/acpi/acpica/evgpe.c +++ b/drivers/acpi/acpica/evgpe.c | |||
@@ -373,6 +373,15 @@ u32 acpi_ev_gpe_detect(struct acpi_gpe_xrupt_info * gpe_xrupt_list) | |||
373 | 373 | ||
374 | gpe_register_info = &gpe_block->register_info[i]; | 374 | gpe_register_info = &gpe_block->register_info[i]; |
375 | 375 | ||
376 | /* | ||
377 | * Optimization: If there are no GPEs enabled within this | ||
378 | * register, we can safely ignore the entire register. | ||
379 | */ | ||
380 | if (!(gpe_register_info->enable_for_run | | ||
381 | gpe_register_info->enable_for_wake)) { | ||
382 | continue; | ||
383 | } | ||
384 | |||
376 | /* Read the Status Register */ | 385 | /* Read the Status Register */ |
377 | 386 | ||
378 | status = | 387 | status = |