ASoC: wm_adsp: Ensure DSP boot work complete before preloader_put return
authorStuart Henderson <stuarth@opensource.cirrus.com>
Thu, 19 Jul 2018 10:50:37 +0000 (11:50 +0100)
committerMark Brown <broonie@kernel.org>
Thu, 19 Jul 2018 14:09:41 +0000 (15:09 +0100)
All controls derived from the loaded firmware should be created prior
to returning from the preloader's put function, such that they are
immediately available to user-space.

Signed-off-by: Stuart Henderson <stuarth@opensource.cirrus.com>
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/wm_adsp.c

index b7b914963c62a1bffe685baef97530f928e4addd..4e7f8525449ee831823cedfdcaa47053978c6a2f 100644 (file)
@@ -2672,6 +2672,8 @@ int wm_adsp2_preloader_put(struct snd_kcontrol *kcontrol,
 
        snd_soc_dapm_sync(dapm);
 
+       flush_work(&dsp->boot_work);
+
        return 0;
 }
 EXPORT_SYMBOL_GPL(wm_adsp2_preloader_put);