summaryrefslogtreecommitdiff
path: root/include/acpi
diff options
context:
space:
mode:
authorAlexey Starikovskiy <astarikovskiy@suse.de>2007-09-30 18:39:42 (GMT)
committerLen Brown <len.brown@intel.com>2007-10-10 05:00:39 (GMT)
commit2d571b33cf7efd6a894e765e3cb45587ec5b834a (patch)
treebdc1a1906488d58fde00d855862090ef2289393d /include/acpi
parentd30dc9abb4aacfd4df3f486f22bcbc0531b73283 (diff)
downloadlinux-fsl-qoriq-2d571b33cf7efd6a894e765e3cb45587ec5b834a.tar.xz
ACPICA: hw: Don't carry spinlock over suspend
ACPI uses acpi_get_register() in order to get into suspend. This function is guarded by acpi_gbl_hardware_lock, which will be carried into resume phase. At resume interrupts are enabled and first ACPI interrupt deadlocks on this lock. Solution seems to be to not lock register read, as there are no concurrent activity at this point. Reference: http://bugzilla.kernel.org/show_bug.cgi?id=7499 Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'include/acpi')
-rw-r--r--include/acpi/acpixf.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/acpi/acpixf.h b/include/acpi/acpixf.h
index 3d7ab9e..9512f04 100644
--- a/include/acpi/acpixf.h
+++ b/include/acpi/acpixf.h
@@ -314,6 +314,8 @@ acpi_resource_to_address64(struct acpi_resource *resource,
*/
acpi_status acpi_get_register(u32 register_id, u32 * return_value);
+acpi_status acpi_get_register_unlocked(u32 register_id, u32 *return_value);
+
acpi_status acpi_set_register(u32 register_id, u32 value);
acpi_status