WSL2-Linux-Kernel/sound/pci
Takashi Iwai a52ff34e5e ALSA: hda - Manage power well properly for resume
For SKL and later Intel chips, we control the power well per codec
basis via link_power callback since the commit [03b135cebc47: ALSA:
hda - remove dependency on i915 power well for SKL].
However, there are a few exceptional cases where the gfx registers are
accessed from the audio driver: namely the wakeup override bit
toggling at (both system and runtime) resume.  This seems causing a
kernel warning when accessed during the power well down (and likely
resulting in the bogus register accesses).

This patch puts the proper power up / down sequence around the resume
code so that the wakeup bit is fiddled properly while the power is
up.  (The other callback, sync_audio_rate, is used only in the PCM
callback, so it's guaranteed in the power-on.)

Also, by this proper power up/down, the instantaneous flip of wakeup
bit in the resume callback that was introduced by the commit
[033ea349a7cd: ALSA: hda - Fix Skylake codec timeout] becomes
superfluous, as snd_hdac_display_power() already does it.  So we can
clean it up together.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96214
Fixes: 03b135cebc ('ALSA: hda - remove dependency on i915 power well for SKL')
Cc: <stable@vger.kernel.org> # v4.2+
Tested-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2016-08-10 15:05:17 +02:00
..
ac97
ali5451
asihpi
au88x0 ALSA: au88x0: Fix calculation in vortex_wtdma_bufshift() 2016-06-29 15:26:12 +02:00
aw2
ca0106
cs46xx
cs5535audio
ctxfi ALSA: ctxfi: Change structure initialisation to C99 style 2016-06-17 16:58:45 +02:00
echoaudio Merge branch 'for-next' into for-linus 2016-07-25 17:01:14 +02:00
emu10k1
hda ALSA: hda - Manage power well properly for resume 2016-08-10 15:05:17 +02:00
ice1712
korg1212
lola
lx6464es ALSA: lx646es: Fix possible uninitialized variable reference 2016-04-15 15:28:52 +02:00
mixart ALSA: mixart: don't print an unintialized variable on error 2016-07-13 12:22:42 +02:00
nm256
oxygen
pcxhr ALSA: pcxhr: Fix missing mutex unlock 2016-04-21 17:37:54 +02:00
riptide ALSA: riptide: Use DIV_ROUND_UP 2016-06-30 08:34:35 +02:00
rme9652
trident
vx222
ymfpci
Kconfig
Makefile
ad1889.c
ad1889.h
ak4531_codec.c
als300.c
als4000.c
atiixp.c
atiixp_modem.c
azt3328.c
azt3328.h
bt87x.c
cmipci.c
cs4281.c
cs5530.c
ens1370.c ALSA: ens1371: Fix "Line In->Rear Out Switch" control 2016-04-19 15:28:39 +02:00
ens1371.c
es1938.c
es1968.c
fm801.c
intel8x0.c ALSA: intel8x0: Drop superfluous VM checks 2016-04-06 07:46:28 +02:00
intel8x0m.c
maestro3.c
rme32.c
rme96.c
sis7019.c
sis7019.h
sonicvibes.c
via82xx.c
via82xx_modem.c