Commit 7bff3b60 authored by Mark Brown's avatar Mark Brown

Merge remote-tracking branches 'asoc/topic/wm8776', 'asoc/topic/wm8804',...

Merge remote-tracking branches 'asoc/topic/wm8776', 'asoc/topic/wm8804', 'asoc/topic/wm8900', 'asoc/topic/wm8903' and 'asoc/topic/wm8940' into asoc-next
......@@ -408,24 +408,6 @@ static struct snd_soc_dai_driver wm8776_dai[] = {
},
};
#ifdef CONFIG_PM
static int wm8776_suspend(struct snd_soc_codec *codec)
{
wm8776_set_bias_level(codec, SND_SOC_BIAS_OFF);
return 0;
}
static int wm8776_resume(struct snd_soc_codec *codec)
{
wm8776_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
return 0;
}
#else
#define wm8776_suspend NULL
#define wm8776_resume NULL
#endif
static int wm8776_probe(struct snd_soc_codec *codec)
{
int ret = 0;
......@@ -436,8 +418,6 @@ static int wm8776_probe(struct snd_soc_codec *codec)
return ret;
}
wm8776_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
/* Latch the update bits; right channel only since we always
* update both. */
snd_soc_update_bits(codec, WM8776_HPRVOL, 0x100, 0x100);
......@@ -446,19 +426,10 @@ static int wm8776_probe(struct snd_soc_codec *codec)
return ret;
}
/* power down chip */
static int wm8776_remove(struct snd_soc_codec *codec)
{
wm8776_set_bias_level(codec, SND_SOC_BIAS_OFF);
return 0;
}
static struct snd_soc_codec_driver soc_codec_dev_wm8776 = {
.probe = wm8776_probe,
.remove = wm8776_remove,
.suspend = wm8776_suspend,
.resume = wm8776_resume,
.set_bias_level = wm8776_set_bias_level,
.suspend_bias_off = true,
.controls = wm8776_snd_controls,
.num_controls = ARRAY_SIZE(wm8776_snd_controls),
......
......@@ -524,7 +524,6 @@ static int wm8804_remove(struct snd_soc_codec *codec)
int i;
wm8804 = snd_soc_codec_get_drvdata(codec);
wm8804_set_bias_level(codec, SND_SOC_BIAS_OFF);
for (i = 0; i < ARRAY_SIZE(wm8804->supplies); ++i)
regulator_unregister_notifier(wm8804->supplies[i].consumer,
......@@ -606,8 +605,6 @@ static int wm8804_probe(struct snd_soc_codec *codec)
goto err_reg_enable;
}
wm8804_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
return 0;
err_reg_enable:
......
......@@ -1209,16 +1209,8 @@ static int wm8900_probe(struct snd_soc_codec *codec)
return 0;
}
/* power down chip */
static int wm8900_remove(struct snd_soc_codec *codec)
{
wm8900_set_bias_level(codec, SND_SOC_BIAS_OFF);
return 0;
}
static struct snd_soc_codec_driver soc_codec_dev_wm8900 = {
.probe = wm8900_probe,
.remove = wm8900_remove,
.suspend = wm8900_suspend,
.resume = wm8900_resume,
.set_bias_level = wm8900_set_bias_level,
......
......@@ -118,7 +118,6 @@ static const struct reg_default wm8903_reg_defaults[] = {
struct wm8903_priv {
struct wm8903_platform_data *pdata;
struct device *dev;
struct snd_soc_codec *codec;
struct regmap *regmap;
int sysclk;
......@@ -1759,21 +1758,12 @@ static struct snd_soc_dai_driver wm8903_dai = {
.symmetric_rates = 1,
};
static int wm8903_suspend(struct snd_soc_codec *codec)
{
wm8903_set_bias_level(codec, SND_SOC_BIAS_OFF);
return 0;
}
static int wm8903_resume(struct snd_soc_codec *codec)
{
struct wm8903_priv *wm8903 = snd_soc_codec_get_drvdata(codec);
regcache_sync(wm8903->regmap);
wm8903_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
return 0;
}
......@@ -1891,33 +1881,12 @@ static void wm8903_free_gpio(struct wm8903_priv *wm8903)
}
#endif
static int wm8903_probe(struct snd_soc_codec *codec)
{
struct wm8903_priv *wm8903 = snd_soc_codec_get_drvdata(codec);
wm8903->codec = codec;
/* power on device */
wm8903_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
return 0;
}
/* power down chip */
static int wm8903_remove(struct snd_soc_codec *codec)
{
wm8903_set_bias_level(codec, SND_SOC_BIAS_OFF);
return 0;
}
static struct snd_soc_codec_driver soc_codec_dev_wm8903 = {
.probe = wm8903_probe,
.remove = wm8903_remove,
.suspend = wm8903_suspend,
.resume = wm8903_resume,
.set_bias_level = wm8903_set_bias_level,
.seq_notifier = wm8903_seq_notifier,
.suspend_bias_off = true,
.controls = wm8903_snd_controls,
.num_controls = ARRAY_SIZE(wm8903_snd_controls),
.dapm_widgets = wm8903_dapm_widgets,
......
......@@ -695,17 +695,6 @@ static struct snd_soc_dai_driver wm8940_dai = {
.symmetric_rates = 1,
};
static int wm8940_suspend(struct snd_soc_codec *codec)
{
return wm8940_set_bias_level(codec, SND_SOC_BIAS_OFF);
}
static int wm8940_resume(struct snd_soc_codec *codec)
{
wm8940_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
return 0;
}
static int wm8940_probe(struct snd_soc_codec *codec)
{
struct wm8940_setup_data *pdata = codec->dev->platform_data;
......@@ -736,18 +725,11 @@ static int wm8940_probe(struct snd_soc_codec *codec)
return ret;
}
static int wm8940_remove(struct snd_soc_codec *codec)
{
wm8940_set_bias_level(codec, SND_SOC_BIAS_OFF);
return 0;
}
static struct snd_soc_codec_driver soc_codec_dev_wm8940 = {
.probe = wm8940_probe,
.remove = wm8940_remove,
.suspend = wm8940_suspend,
.resume = wm8940_resume,
.set_bias_level = wm8940_set_bias_level,
.suspend_bias_off = true,
.controls = wm8940_snd_controls,
.num_controls = ARRAY_SIZE(wm8940_snd_controls),
.dapm_widgets = wm8940_dapm_widgets,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment