diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2011-03-11 18:09:04 +0000 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2011-03-22 18:41:20 +0000 |
commit | fbbf592002ee46ed14d5bd88f1150c604b34e705 (patch) | |
tree | b4fe275ab768a411c2ca85fa925c40d813d5df19 /sound/soc/codecs/wm8994.c | |
parent | af9af866020ea341aca32123b3109b6a9408dd8c (diff) |
ASoC: Support download of WM8958 MBC firmware
Allow userspace to supply an update to the ROM firmware. The firmware
request is non-blocking so userspace can load the firmware at its
leisure without delaying startup, the driver will begin using the
firmware the next time MBC is started after it has been supplied.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@ti.com>
Diffstat (limited to 'sound/soc/codecs/wm8994.c')
-rw-r--r-- | sound/soc/codecs/wm8994.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sound/soc/codecs/wm8994.c b/sound/soc/codecs/wm8994.c index bdd1ac75178a..f622ff691b41 100644 --- a/sound/soc/codecs/wm8994.c +++ b/sound/soc/codecs/wm8994.c @@ -1922,6 +1922,8 @@ static int wm8994_set_bias_level(struct snd_soc_codec *codec, WM8994_VMID_BUF_ENA | WM8994_VMID_RAMP_MASK, 0); + wm8994->cur_fw = NULL; + pm_runtime_put(codec->dev); } break; @@ -3136,6 +3138,8 @@ static int wm8994_codec_remove(struct snd_soc_codec *codec) free_irq(wm8994->micdet_irq, wm8994); break; } + if (wm8994->mbc) + release_firmware(wm8994->mbc); kfree(wm8994->retune_mobile_texts); kfree(wm8994->drc_texts); kfree(wm8994); |