ASoC: wm8994: Remove the set_cache_io() entirely from ASoC probe.
As we can set the CODEC I/O while snd_soc_register_codec(), so the calling of set_cache_io() from CODEC ASoC probe could be removed entirely. And then we can set the CODEC I/O in the device probe instead of CODEC ASoC probe as earily as possible. Signed-off-by: Xiubo Li <Li.Xiubo@freescale.com> Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Signed-off-by: Mark Brown <broonie@linaro.org>
This commit is contained in:
Родитель
4504badea3
Коммит
c0b6f59b70
|
@ -3999,8 +3999,6 @@ static int wm8994_codec_probe(struct snd_soc_codec *codec)
|
|||
|
||||
wm8994->hubs.codec = codec;
|
||||
|
||||
snd_soc_codec_set_cache_io(codec, control->regmap);
|
||||
|
||||
mutex_init(&wm8994->accdet_lock);
|
||||
INIT_DELAYED_WORK(&wm8994->jackdet_bootstrap,
|
||||
wm1811_jackdet_bootstrap);
|
||||
|
@ -4434,11 +4432,19 @@ static int wm8994_codec_remove(struct snd_soc_codec *codec)
|
|||
return 0;
|
||||
}
|
||||
|
||||
struct regmap *wm8994_get_regmap(struct device *dev)
|
||||
{
|
||||
struct wm8994 *control = dev_get_drvdata(dev->parent);
|
||||
|
||||
return control->regmap;
|
||||
}
|
||||
|
||||
static struct snd_soc_codec_driver soc_codec_dev_wm8994 = {
|
||||
.probe = wm8994_codec_probe,
|
||||
.remove = wm8994_codec_remove,
|
||||
.suspend = wm8994_codec_suspend,
|
||||
.resume = wm8994_codec_resume,
|
||||
.get_regmap = wm8994_get_regmap,
|
||||
.set_bias_level = wm8994_set_bias_level,
|
||||
};
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче