Re: [ALSA hda 3.4-rc] suspend2ram regression in snd_hda_intel
From: Takashi Iwai
Date: Sun May 06 2012 - 06:37:56 EST
At Sun, 06 May 2012 12:32:14 +0400,
Konstantin Khlebnikov wrote:
>
> Konstantin Khlebnikov wrote:
> > Mainline commit 785f857d1cb0856b612b46a0545b74aa2596e44a
> > ("ALSA: hda - Set codec to D3 forcibly even if not used")
> > breaks sound for my notebook (thinkpad x220),
> > looks like codec cannot wake from power-save state after resume.
> > After reverting looks like all works fine.
> >
> > how to reproduce:
> > * unplug the power cord (to enable hda power safe mode)
> > * play something and stop
> > * wait until the background noise disappears (codec went into power-save mode)
> > * suspend
> > * resume
> > * play something again and hear the silence
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to majordomo@xxxxxxxxxxxxxxx
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at http://www.tux.org/lkml/
>
> Bump
It's a weekend, so don't expect quick responces from any normal person
:)
Which 3.4-rc did you try? There was a known problem with this codec
regarding the power-up sequence, but this should have been fixed in
the very recent version.
If the latest Linus tree still shows the problem, try sound git tree
master or for-next branch.
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git
Then attach alsa-info.sh output (run with --no-upload option) before
and after S3 (i.e. working and non-working states).
> BTW, I don't see any locks around hda power-save code, for example hda_power_work() reads
> codec->power_on and codec->power_count without any locks. This seems racy.
Yeah, we may add an extra spinlock. But it's not too critical for the
whole operation, so I didn't care much so far. At most, you'll miss one
power-save cycle. Maybe a good time to fix it now for 3.5.
thanks,
Takashi
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/