ASoC: 88pm860x: 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> Signed-off-by: Mark Brown <broonie@linaro.org>
This commit is contained in:
parent
a39f75f790
commit
bbc0bd7fd3
@ -1327,10 +1327,6 @@ static int pm860x_probe(struct snd_soc_codec *codec)
|
|||||||
|
|
||||||
pm860x->codec = codec;
|
pm860x->codec = codec;
|
||||||
|
|
||||||
ret = snd_soc_codec_set_cache_io(codec, pm860x->regmap);
|
|
||||||
if (ret)
|
|
||||||
return ret;
|
|
||||||
|
|
||||||
for (i = 0; i < 4; i++) {
|
for (i = 0; i < 4; i++) {
|
||||||
ret = request_threaded_irq(pm860x->irq[i], NULL,
|
ret = request_threaded_irq(pm860x->irq[i], NULL,
|
||||||
pm860x_codec_handler, IRQF_ONESHOT,
|
pm860x_codec_handler, IRQF_ONESHOT,
|
||||||
@ -1362,10 +1358,18 @@ static int pm860x_remove(struct snd_soc_codec *codec)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
struct regmap *pm860x_get_regmap(struct device *dev)
|
||||||
|
{
|
||||||
|
struct pm860x_priv *pm860x = dev_get_drvdata(dev);
|
||||||
|
|
||||||
|
return pm860x->regmap;
|
||||||
|
}
|
||||||
|
|
||||||
static struct snd_soc_codec_driver soc_codec_dev_pm860x = {
|
static struct snd_soc_codec_driver soc_codec_dev_pm860x = {
|
||||||
.probe = pm860x_probe,
|
.probe = pm860x_probe,
|
||||||
.remove = pm860x_remove,
|
.remove = pm860x_remove,
|
||||||
.set_bias_level = pm860x_set_bias_level,
|
.set_bias_level = pm860x_set_bias_level,
|
||||||
|
.get_regmap = pm860x_get_regmap,
|
||||||
|
|
||||||
.controls = pm860x_snd_controls,
|
.controls = pm860x_snd_controls,
|
||||||
.num_controls = ARRAY_SIZE(pm860x_snd_controls),
|
.num_controls = ARRAY_SIZE(pm860x_snd_controls),
|
||||||
|
Loading…
Reference in New Issue
Block a user