aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/ec.c
diff options
context:
space:
mode:
authorAlexey Starikovskiy <astarikovskiy@suse.de>2009-12-30 15:53:03 +0300
committerLen Brown <len.brown@intel.com>2010-01-15 22:52:48 -0500
commitf5347867c5aea94c625246eaff8f7820b0a4cd8a (patch)
treece722a9f7ed2a7b001c19d506d4a3969552f12b7 /drivers/acpi/ec.c
parenta62e8f1978f49e52f87a711ff6711b323d4b12ff (diff)
downloadkernel_samsung_smdk4412-f5347867c5aea94c625246eaff8f7820b0a4cd8a.zip
kernel_samsung_smdk4412-f5347867c5aea94c625246eaff8f7820b0a4cd8a.tar.gz
kernel_samsung_smdk4412-f5347867c5aea94c625246eaff8f7820b0a4cd8a.tar.bz2
ACPI: SBS: Move SBS HC callback to faster Notify queue
SBS transactions should happen in Notify work queue, to not create a dead lock with GPE execution accessing SBS devices. Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/ec.c')
-rw-r--r--drivers/acpi/ec.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c
index 9cc3885..0473309 100644
--- a/drivers/acpi/ec.c
+++ b/drivers/acpi/ec.c
@@ -535,7 +535,8 @@ static int acpi_ec_sync_query(struct acpi_ec *ec)
return -ENOMEM;
memcpy(copy, handler, sizeof(*copy));
pr_debug(PREFIX "push query execution (0x%2x) on queue\n", value);
- return acpi_os_execute(OSL_GPE_HANDLER,
+ return acpi_os_execute((copy->func) ?
+ OSL_NOTIFY_HANDLER : OSL_GPE_HANDLER,
acpi_ec_run, copy);
}
}