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>
Tue, 17 Dec 2013 21:32:05 +0000 (21:32 +0000)
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>
(cherry picked from commit d4e1a73acd4e894f8332f2093bceaef585cfab67)

sound/soc/soc-pcm.c

index ccb6be4d658d27e3dd56528e02fdf5a59eecb999..6d9bed4fe7d20876e9d6a2c5a15c0087af82588a 100644 (file)
@@ -408,8 +408,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 */