From: Lars-Peter Clausen <lars@metafoo.de>
To: Mark Brown <broonie@kernel.org>, Liam Girdwood <lgirdwood@gmail.com>
Cc: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>,
patches@opensource.wolfsonmicro.com, alsa-devel@alsa-project.org,
Lars-Peter Clausen <lars@metafoo.de>
Subject: [PATCH 14/32] ASoC: wm8903: Cleanup manual bias level transitions
Date: Sun, 23 Nov 2014 13:37:30 +0100 [thread overview]
Message-ID: <1416746269-4935-14-git-send-email-lars@metafoo.de> (raw)
In-Reply-To: <1416746269-4935-1-git-send-email-lars@metafoo.de>
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.
The manual transition to SND_SOC_BIAS_STANDBY at the end of CODEC probe()
can also be removed as the core will automatically do this after the CODEC
has been probed. Also remove the unused codec field from the wm8903_priv
struct so we can remove the whole probe callback.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
sound/soc/codecs/wm8903.c | 35 ++---------------------------------
1 file changed, 2 insertions(+), 33 deletions(-)
diff --git a/sound/soc/codecs/wm8903.c b/sound/soc/codecs/wm8903.c
index ffbe6df..cc6b0ef 100644
--- a/sound/soc/codecs/wm8903.c
+++ b/sound/soc/codecs/wm8903.c
@@ -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,
--
1.8.0
next prev parent reply other threads:[~2014-11-23 12:38 UTC|newest]
Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-23 12:37 [PATCH 01/32] ASoC: wm8350: Cleanup manual bias level transitions Lars-Peter Clausen
2014-11-23 12:37 ` [PATCH 02/32] ASoC: wm8400: " Lars-Peter Clausen
2014-11-24 18:17 ` Mark Brown
2014-11-23 12:37 ` [PATCH 03/32] ASoC: wm8510: " Lars-Peter Clausen
2014-11-24 18:18 ` Mark Brown
2014-11-23 12:37 ` [PATCH 04/32] ASoC: wm8523: " Lars-Peter Clausen
2014-11-24 18:18 ` Mark Brown
2014-11-23 12:37 ` [PATCH 05/32] ASoC: wm8580: " Lars-Peter Clausen
2014-11-24 18:19 ` Mark Brown
2014-11-23 12:37 ` [PATCH 06/32] ASoC: wm8711: " Lars-Peter Clausen
2014-11-24 18:20 ` Mark Brown
2014-11-23 12:37 ` [PATCH 07/32] ASoC: wm8728: " Lars-Peter Clausen
2014-11-24 18:21 ` Mark Brown
2014-11-23 12:37 ` [PATCH 08/32] ASoC: wm8731: " Lars-Peter Clausen
2014-11-24 18:21 ` Mark Brown
2014-11-23 12:37 ` [PATCH 09/32] ASoC: wm8737: " Lars-Peter Clausen
2014-11-24 18:22 ` Mark Brown
2014-11-23 12:37 ` [PATCH 10/32] ASoC: wm8750: " Lars-Peter Clausen
2014-11-24 18:24 ` Mark Brown
2014-11-23 12:37 ` [PATCH 11/32] ASoC: wm8776: " Lars-Peter Clausen
2014-11-24 18:25 ` Mark Brown
2014-11-23 12:37 ` [PATCH 12/32] ASoC: wm8804: " Lars-Peter Clausen
2014-11-24 18:25 ` Mark Brown
2014-11-23 12:37 ` [PATCH 13/32] ASoC: wm8900: " Lars-Peter Clausen
2014-11-24 18:26 ` Mark Brown
2014-11-23 12:37 ` Lars-Peter Clausen [this message]
2014-11-24 18:27 ` [PATCH 14/32] ASoC: wm8903: " Mark Brown
2014-11-23 12:37 ` [PATCH 15/32] ASoC: wm8940: " Lars-Peter Clausen
2014-11-24 18:27 ` Mark Brown
2014-11-23 12:37 ` [PATCH 16/32] ASoC: wm8955: " Lars-Peter Clausen
2014-11-24 18:28 ` Mark Brown
2014-11-23 12:37 ` [PATCH 17/32] ASoC: wm8960: " Lars-Peter Clausen
2014-11-24 18:29 ` Mark Brown
2014-11-23 12:37 ` [PATCH 18/32] ASoC: wm8961: " Lars-Peter Clausen
2014-11-24 18:30 ` Mark Brown
2014-11-23 12:37 ` [PATCH 19/32] ASoC: wm8974: " Lars-Peter Clausen
2014-11-24 18:34 ` Mark Brown
2014-11-23 12:37 ` [PATCH 20/32] ASoC: wm8978: " Lars-Peter Clausen
2014-11-24 18:34 ` Mark Brown
2014-11-23 12:37 ` [PATCH 21/32] ASoC: wm8983: " Lars-Peter Clausen
2014-11-24 18:36 ` Mark Brown
2014-11-23 12:37 ` [PATCH 22/32] ASoC: wm8985: " Lars-Peter Clausen
2014-11-24 18:37 ` Mark Brown
2014-11-23 12:37 ` [PATCH 23/32] ASoC: wm8988: " Lars-Peter Clausen
2014-11-24 18:38 ` Mark Brown
2014-11-23 12:37 ` [PATCH 24/32] ASoC: wm8990: " Lars-Peter Clausen
2014-11-24 18:38 ` Mark Brown
2014-11-23 12:37 ` [PATCH 25/32] ASoC: wm8991: " Lars-Peter Clausen
2014-11-24 18:39 ` Mark Brown
2014-11-23 12:37 ` [PATCH 26/32] ASoC: wm8993: " Lars-Peter Clausen
2014-11-24 18:40 ` Mark Brown
2014-11-23 12:37 ` [PATCH 27/32] ASoC: wm8994: " Lars-Peter Clausen
2014-11-24 18:40 ` Mark Brown
2014-11-23 12:37 ` [PATCH 28/32] ASoC: wm8995: " Lars-Peter Clausen
2014-11-24 18:41 ` Mark Brown
2014-11-23 12:37 ` [PATCH 29/32] ASoC: wm9081: " Lars-Peter Clausen
2014-11-24 18:41 ` Mark Brown
2014-11-23 12:37 ` [PATCH 30/32] ASoC: wm9090: " Lars-Peter Clausen
2014-11-24 18:43 ` Mark Brown
2014-11-23 12:37 ` [PATCH 31/32] ASoC: wm9712: " Lars-Peter Clausen
2014-11-24 18:43 ` Mark Brown
2014-11-23 12:37 ` [PATCH 32/32] ASoC: wm9713: " Lars-Peter Clausen
2014-11-24 18:44 ` Mark Brown
2014-11-24 10:00 ` [PATCH 01/32] ASoC: wm8350: " Charles Keepax
2014-11-24 18:17 ` Mark Brown
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1416746269-4935-14-git-send-email-lars@metafoo.de \
--to=lars@metafoo.de \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@kernel.org \
--cc=ckeepax@opensource.wolfsonmicro.com \
--cc=lgirdwood@gmail.com \
--cc=patches@opensource.wolfsonmicro.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).