diff options
| author | Lars-Peter Clausen <lars@metafoo.de> | 2014-11-23 07:37:40 -0500 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2014-11-24 13:38:54 -0500 |
| commit | 955efc8f50eb11d1c85daca6db7943c63dc5c2e7 (patch) | |
| tree | 60e4c6416333835c36ce05f6289c280eac7594e7 | |
| parent | 5d01410fe4d92081f349b013a2e7a95429e4f2c9 (diff) | |
ASoC: wm8990: Cleanup manual bias level transitions
Set the CODEC driver's suspend_bias_off flag rather than manually going to
SND_SOC_BIAS_OFF in suspend and SND_SOC_BIAS_STANDBY in resume. This makes
the code a bit shorter and cleaner.
Since the ASoC core now takes care of setting the bias level to
SND_SOC_BIAS_OFF when removing the CODEC there is no need to do it manually
anymore either.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
| -rw-r--r-- | sound/soc/codecs/wm8990.c | 24 |
1 files changed, 2 insertions, 22 deletions
diff --git a/sound/soc/codecs/wm8990.c b/sound/soc/codecs/wm8990.c index 03e43e3f395e..8a584229310a 100644 --- a/sound/soc/codecs/wm8990.c +++ b/sound/soc/codecs/wm8990.c | |||
| @@ -1271,18 +1271,6 @@ static struct snd_soc_dai_driver wm8990_dai = { | |||
| 1271 | .ops = &wm8990_dai_ops, | 1271 | .ops = &wm8990_dai_ops, |
| 1272 | }; | 1272 | }; |
| 1273 | 1273 | ||
| 1274 | static int wm8990_suspend(struct snd_soc_codec *codec) | ||
| 1275 | { | ||
| 1276 | wm8990_set_bias_level(codec, SND_SOC_BIAS_OFF); | ||
| 1277 | return 0; | ||
| 1278 | } | ||
| 1279 | |||
| 1280 | static int wm8990_resume(struct snd_soc_codec *codec) | ||
| 1281 | { | ||
| 1282 | wm8990_set_bias_level(codec, SND_SOC_BIAS_STANDBY); | ||
| 1283 | return 0; | ||
| 1284 | } | ||
| 1285 | |||
| 1286 | /* | 1274 | /* |
| 1287 | * initialise the WM8990 driver | 1275 | * initialise the WM8990 driver |
| 1288 | * register the mixer and dsp interfaces with the kernel | 1276 | * register the mixer and dsp interfaces with the kernel |
| @@ -1309,19 +1297,11 @@ static int wm8990_probe(struct snd_soc_codec *codec) | |||
| 1309 | return 0; | 1297 | return 0; |
| 1310 | } | 1298 | } |
| 1311 | 1299 | ||
| 1312 | /* power down chip */ | ||
| 1313 | static int wm8990_remove(struct snd_soc_codec *codec) | ||
| 1314 | { | ||
| 1315 | wm8990_set_bias_level(codec, SND_SOC_BIAS_OFF); | ||
| 1316 | return 0; | ||
| 1317 | } | ||
| 1318 | |||
| 1319 | static struct snd_soc_codec_driver soc_codec_dev_wm8990 = { | 1300 | static struct snd_soc_codec_driver soc_codec_dev_wm8990 = { |
| 1320 | .probe = wm8990_probe, | 1301 | .probe = wm8990_probe, |
| 1321 | .remove = wm8990_remove, | ||
| 1322 | .suspend = wm8990_suspend, | ||
| 1323 | .resume = wm8990_resume, | ||
| 1324 | .set_bias_level = wm8990_set_bias_level, | 1302 | .set_bias_level = wm8990_set_bias_level, |
| 1303 | .suspend_bias_off = true, | ||
| 1304 | |||
| 1325 | .controls = wm8990_snd_controls, | 1305 | .controls = wm8990_snd_controls, |
| 1326 | .num_controls = ARRAY_SIZE(wm8990_snd_controls), | 1306 | .num_controls = ARRAY_SIZE(wm8990_snd_controls), |
| 1327 | .dapm_widgets = wm8990_dapm_widgets, | 1307 | .dapm_widgets = wm8990_dapm_widgets, |
