summaryrefslogtreecommitdiff
path: root/drivers/modem
diff options
context:
space:
mode:
authorArun Murthy <arun.murthy@stericsson.com>2011-10-14 14:51:36 +0530
committerPhilippe Langlais <philippe.langlais@stericsson.com>2012-05-22 11:07:18 +0200
commitc4ba3258812ab3cf0e34d89671e4a8d9c6cf3836 (patch)
tree5e92bdc269d65723149419c1e16e6994f1ccffa3 /drivers/modem
parentb661789ed01243585915f78162fc1b7bfab990af (diff)
U8500 shrm: Create RT workqueue for shm_audio/ac_wake_req/ca_wake_req
Increase priority of workqueues to realtime in order to keep correct timing for audio messages send to modem. This patch was submitted on 2.6.35 by "cedric.izoard@stericsson.com". Now it has been ported to kernel-3.0.0 ST-Ericsson ID : ER361756 ST-Ericsson FOSS-OUT ID: Trivial Change-Id: I62e8244496cb9bc64b29b0013745d30bffb26f6b Signed-off-by: Arun Murthy <arun.murthy@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/34050 Reviewed-by: Srinidhi KASAGAR <srinidhi.kasagar@stericsson.com>
Diffstat (limited to 'drivers/modem')
-rw-r--r--drivers/modem/shrm/shrm_protocol.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/modem/shrm/shrm_protocol.c b/drivers/modem/shrm/shrm_protocol.c
index e34a88676be..78dc4be0754 100644
--- a/drivers/modem/shrm/shrm_protocol.c
+++ b/drivers/modem/shrm/shrm_protocol.c
@@ -714,20 +714,22 @@ int shrm_protocol_init(struct shrm_dev *shrm,
dev_err(shrm->dev, "failed to create work queue\n");
return -ENOMEM;
}
- shrm->shm_audio_ch_wr_wq = create_singlethread_workqueue
- ("shm_audio_channel_irq");
+ shrm->shm_audio_ch_wr_wq = alloc_workqueue("shm_audio_channel_irq",
+ WQ_UNBOUND | WQ_MEM_RECLAIM, 1);
if (!shrm->shm_audio_ch_wr_wq) {
dev_err(shrm->dev, "failed to create work queue\n");
err = -ENOMEM;
goto free_wq1;
}
- shrm->shm_ac_wake_wq = create_singlethread_workqueue("shm_ac_wake_req");
+ shrm->shm_ac_wake_wq = alloc_workqueue("shm_ac_wake_req",
+ WQ_UNBOUND | WQ_MEM_RECLAIM, 1);
if (!shrm->shm_ac_wake_wq) {
dev_err(shrm->dev, "failed to create work queue\n");
err = -ENOMEM;
goto free_wq2;
}
- shrm->shm_ca_wake_wq = create_singlethread_workqueue("shm_ca_wake_req");
+ shrm->shm_ca_wake_wq = alloc_workqueue("shm_ca_wake_req",
+ WQ_UNBOUND | WQ_MEM_RECLAIM, 1);
if (!shrm->shm_ca_wake_wq) {
dev_err(shrm->dev, "failed to create work queue\n");
err = -ENOMEM;