Message ID | 1309517034-26110-1-git-send-email-nicolas.ferre@atmel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 01/07/11 11:43, Nicolas Ferre wrote: > Resuming from a suspend/resume cycle, the ACTIVE bit was not set even if a > stream had actually been processing. > Setting this bit at entering SND_SOC_BIAS_ON level will ensure this. > > Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> > --- > Supersed the wrong patch: > "[PATCH 1/5] ASoC: wm8731: rework power management" > > now based on broonie/sound-2.6 git tree branch: for-3.1. > > sound/soc/codecs/wm8731.c | 1 + > 1 files changed, 1 insertions(+), 0 deletions(-) > > diff --git a/sound/soc/codecs/wm8731.c b/sound/soc/codecs/wm8731.c > index 2dc964b..ee4ec31 100644 > --- a/sound/soc/codecs/wm8731.c > +++ b/sound/soc/codecs/wm8731.c > @@ -453,6 +453,7 @@ static int wm8731_set_bias_level(struct snd_soc_codec *codec, > > switch (level) { > case SND_SOC_BIAS_ON: > + snd_soc_write(codec, WM8731_ACTIVE, 0x0001); > break; > case SND_SOC_BIAS_PREPARE: > break; Acked-by: Liam Girdwood <lrg@ti.com>
On Fri, Jul 01, 2011 at 12:43:54PM +0200, Nicolas Ferre wrote: > Resuming from a suspend/resume cycle, the ACTIVE bit was not set even if a > stream had actually been processing. > Setting this bit at entering SND_SOC_BIAS_ON level will ensure this. This will set the bit even for analogue bypass paths which don't need it. I'd suggest making the active bit a supply widget supplying the DAC and ADC rather than something open coded, that should do the right thing I think.
Le 01/07/2011 18:15, Mark Brown : > On Fri, Jul 01, 2011 at 12:43:54PM +0200, Nicolas Ferre wrote: >> Resuming from a suspend/resume cycle, the ACTIVE bit was not set even if a >> stream had actually been processing. >> Setting this bit at entering SND_SOC_BIAS_ON level will ensure this. > > This will set the bit even for analogue bypass paths which don't need > it. I'd suggest making the active bit a supply widget supplying the DAC > and ADC rather than something open coded, that should do the right thing > I think. Ah, ok... but I fear that I do not know the whole system enough for this addition ;-( Do you think you can code this modification, I will be happy to test it, if you want... Best regards,
diff --git a/sound/soc/codecs/wm8731.c b/sound/soc/codecs/wm8731.c index 2dc964b..ee4ec31 100644 --- a/sound/soc/codecs/wm8731.c +++ b/sound/soc/codecs/wm8731.c @@ -453,6 +453,7 @@ static int wm8731_set_bias_level(struct snd_soc_codec *codec, switch (level) { case SND_SOC_BIAS_ON: + snd_soc_write(codec, WM8731_ACTIVE, 0x0001); break; case SND_SOC_BIAS_PREPARE: break;
Resuming from a suspend/resume cycle, the ACTIVE bit was not set even if a stream had actually been processing. Setting this bit at entering SND_SOC_BIAS_ON level will ensure this. Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> --- Supersed the wrong patch: "[PATCH 1/5] ASoC: wm8731: rework power management" now based on broonie/sound-2.6 git tree branch: for-3.1. sound/soc/codecs/wm8731.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)