Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e45f6071 authored by Mark Brown's avatar Mark Brown
Browse files

Merge remote-tracking branches 'asoc/topic/wm8978', 'asoc/topic/wm8983',...

Merge remote-tracking branches 'asoc/topic/wm8978', 'asoc/topic/wm8983', 'asoc/topic/wm8985', 'asoc/topic/wm8988' and 'asoc/topic/wm8990' into asoc-next
Loading
Loading
Loading
Loading
+0 −10
Original line number Diff line number Diff line
@@ -991,21 +991,11 @@ static int wm8978_probe(struct snd_soc_codec *codec)
	for (i = 0; i < ARRAY_SIZE(update_reg); i++)
		snd_soc_update_bits(codec, update_reg[i], 0x100, 0x100);

	wm8978_set_bias_level(codec, SND_SOC_BIAS_STANDBY);

	return 0;
}

/* power down chip */
static int wm8978_remove(struct snd_soc_codec *codec)
{
	wm8978_set_bias_level(codec, SND_SOC_BIAS_OFF);
	return 0;
}

static struct snd_soc_codec_driver soc_codec_dev_wm8978 = {
	.probe =	wm8978_probe,
	.remove =	wm8978_remove,
	.suspend =	wm8978_suspend,
	.resume =	wm8978_resume,
	.set_bias_level = wm8978_set_bias_level,
+1 −26
Original line number Diff line number Diff line
@@ -967,29 +967,6 @@ static int wm8983_set_bias_level(struct snd_soc_codec *codec,
	return 0;
}

#ifdef CONFIG_PM
static int wm8983_suspend(struct snd_soc_codec *codec)
{
	wm8983_set_bias_level(codec, SND_SOC_BIAS_OFF);
	return 0;
}

static int wm8983_resume(struct snd_soc_codec *codec)
{
	wm8983_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
	return 0;
}
#else
#define wm8983_suspend NULL
#define wm8983_resume NULL
#endif

static int wm8983_remove(struct snd_soc_codec *codec)
{
	wm8983_set_bias_level(codec, SND_SOC_BIAS_OFF);
	return 0;
}

static int wm8983_probe(struct snd_soc_codec *codec)
{
	int ret;
@@ -1055,10 +1032,8 @@ static struct snd_soc_dai_driver wm8983_dai = {

static struct snd_soc_codec_driver soc_codec_dev_wm8983 = {
	.probe = wm8983_probe,
	.remove = wm8983_remove,
	.suspend = wm8983_suspend,
	.resume = wm8983_resume,
	.set_bias_level = wm8983_set_bias_level,
	.suspend_bias_off = true,
	.controls = wm8983_snd_controls,
	.num_controls = ARRAY_SIZE(wm8983_snd_controls),
	.dapm_widgets = wm8983_dapm_widgets,
+1 −27
Original line number Diff line number Diff line
@@ -961,29 +961,6 @@ static int wm8985_set_bias_level(struct snd_soc_codec *codec,
	return 0;
}

#ifdef CONFIG_PM
static int wm8985_suspend(struct snd_soc_codec *codec)
{
	wm8985_set_bias_level(codec, SND_SOC_BIAS_OFF);
	return 0;
}

static int wm8985_resume(struct snd_soc_codec *codec)
{
	wm8985_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
	return 0;
}
#else
#define wm8985_suspend NULL
#define wm8985_resume NULL
#endif

static int wm8985_remove(struct snd_soc_codec *codec)
{
	wm8985_set_bias_level(codec, SND_SOC_BIAS_OFF);
	return 0;
}

static int wm8985_probe(struct snd_soc_codec *codec)
{
	size_t i;
@@ -1023,7 +1000,6 @@ static int wm8985_probe(struct snd_soc_codec *codec)
	snd_soc_update_bits(codec, WM8985_BIAS_CTRL, WM8985_BIASCUT,
			    WM8985_BIASCUT);

	wm8985_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
	return 0;

err_reg_enable:
@@ -1064,10 +1040,8 @@ static struct snd_soc_dai_driver wm8985_dai = {

static struct snd_soc_codec_driver soc_codec_dev_wm8985 = {
	.probe = wm8985_probe,
	.remove = wm8985_remove,
	.suspend = wm8985_suspend,
	.resume = wm8985_resume,
	.set_bias_level = wm8985_set_bias_level,
	.suspend_bias_off = true,

	.controls = wm8985_snd_controls,
	.num_controls = ARRAY_SIZE(wm8985_snd_controls),
+1 −26
Original line number Diff line number Diff line
@@ -793,21 +793,6 @@ static struct snd_soc_dai_driver wm8988_dai = {
	.symmetric_rates = 1,
};

static int wm8988_suspend(struct snd_soc_codec *codec)
{
	struct wm8988_priv *wm8988 = snd_soc_codec_get_drvdata(codec);

	wm8988_set_bias_level(codec, SND_SOC_BIAS_OFF);
	regcache_mark_dirty(wm8988->regmap);
	return 0;
}

static int wm8988_resume(struct snd_soc_codec *codec)
{
	wm8988_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
	return 0;
}

static int wm8988_probe(struct snd_soc_codec *codec)
{
	int ret = 0;
@@ -825,23 +810,13 @@ static int wm8988_probe(struct snd_soc_codec *codec)
	snd_soc_update_bits(codec, WM8988_ROUT2V, 0x0100, 0x0100);
	snd_soc_update_bits(codec, WM8988_RINVOL, 0x0100, 0x0100);

	wm8988_set_bias_level(codec, SND_SOC_BIAS_STANDBY);

	return 0;
}

static int wm8988_remove(struct snd_soc_codec *codec)
{
	wm8988_set_bias_level(codec, SND_SOC_BIAS_OFF);
	return 0;
}

static struct snd_soc_codec_driver soc_codec_dev_wm8988 = {
	.probe =	wm8988_probe,
	.remove =	wm8988_remove,
	.suspend =	wm8988_suspend,
	.resume =	wm8988_resume,
	.set_bias_level = wm8988_set_bias_level,
	.suspend_bias_off = true,

	.controls = wm8988_snd_controls,
	.num_controls = ARRAY_SIZE(wm8988_snd_controls),
+2 −22
Original line number Diff line number Diff line
@@ -1271,18 +1271,6 @@ static struct snd_soc_dai_driver wm8990_dai = {
	.ops = &wm8990_dai_ops,
};

static int wm8990_suspend(struct snd_soc_codec *codec)
{
	wm8990_set_bias_level(codec, SND_SOC_BIAS_OFF);
	return 0;
}

static int wm8990_resume(struct snd_soc_codec *codec)
{
	wm8990_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
	return 0;
}

/*
 * initialise the WM8990 driver
 * register the mixer and dsp interfaces with the kernel
@@ -1309,19 +1297,11 @@ static int wm8990_probe(struct snd_soc_codec *codec)
	return 0;
}

/* power down chip */
static int wm8990_remove(struct snd_soc_codec *codec)
{
	wm8990_set_bias_level(codec, SND_SOC_BIAS_OFF);
	return 0;
}

static struct snd_soc_codec_driver soc_codec_dev_wm8990 = {
	.probe =	wm8990_probe,
	.remove =	wm8990_remove,
	.suspend =	wm8990_suspend,
	.resume =	wm8990_resume,
	.set_bias_level = wm8990_set_bias_level,
	.suspend_bias_off = true,

	.controls =	wm8990_snd_controls,
	.num_controls = ARRAY_SIZE(wm8990_snd_controls),
	.dapm_widgets = wm8990_dapm_widgets,