ASoC: pcm: Use the power efficient workqueue for delayed powerdown
authorMark Brown <broonie@linaro.org>
Thu, 18 Jul 2013 10:52:17 +0000 (11:52 +0100)
committerMark Brown <broonie@linaro.org>
Thu, 18 Jul 2013 10:58:28 +0000 (11:58 +0100)
There is no need to use a normal per-CPU workqueue for delayed power downs
as they're not timing or performance critical and waking up a core for them
would defeat some of the point.

Signed-off-by: Mark Brown <broonie@linaro.org>
Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
sound/soc/soc-pcm.c

index b6c640332a1722c95c27fa8aa99b4d8b135d456f..f4f68cb3cb009fbba7812b5450a4b5a938309aea 100644 (file)
@@ -411,8 +411,9 @@ static int soc_pcm_close(struct snd_pcm_substream *substream)
                } else {
                        /* start delayed pop wq here for playback streams */
                        rtd->pop_wait = 1;
-                       schedule_delayed_work(&rtd->delayed_work,
-                               msecs_to_jiffies(rtd->pmdown_time));
+                       queue_delayed_work(system_power_efficient_wq,
+                                          &rtd->delayed_work,
+                                          msecs_to_jiffies(rtd->pmdown_time));
                }
        } else {
                /* capture streams can be powered down now */