linux/sound/pci/hda
Dylan Reid b4a91cf05c ALSA: hda - Handle open while transitioning to D3.
This addresses an issue encountered when a pcm is opened while
transitioning to low power state (codec->power_on == 1 &&
codec->power_transition == -1).  Add snd_pcm_power_up_d3wait to
hda_codec.  This function is used to power up from azx_open as opposed
to snd_hda_power_up used from codec_exec_verb. When powering up from
azx_open, wait for pending power downs to complete, avoiding the power
up continuing in parallel with the power down on the work queue.

The specific issue seen was with the CS4210 codec, it powers off the ADC
and DAC nid in its suspend handler.  If it is re-opened before the
~100ms power down process completes, the ADC and DAC nid are initialized
while powered down and audio is lost until another suspend/resume cycle.

Signed-off-by: Dylan Reid <dgreid@chromium.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2012-06-18 09:35:21 +02:00
..
Kconfig ALSA: Introduce common helper functions for jack-detection control 2011-11-16 11:14:03 +01:00
Makefile ALSA: hda - Move up the fixup helper functions to the library module 2012-05-08 18:01:33 +02:00
hda_auto_parser.c ALSA: hda - Move BIOS pin-parser code to hda_auto_parser.c 2012-05-08 18:01:33 +02:00
hda_auto_parser.h ALSA: hda - Move BIOS pin-parser code to hda_auto_parser.c 2012-05-08 18:01:33 +02:00
hda_beep.c sound: Add export.h for THIS_MODULE/EXPORT_SYMBOL where needed 2011-10-31 19:31:22 -04:00
hda_beep.h ALSA: hda - Fix missing static inline to beep dummy function 2011-06-14 08:14:32 +02:00
hda_codec.c ALSA: hda - Handle open while transitioning to D3. 2012-06-18 09:35:21 +02:00
hda_codec.h ALSA: hda - Handle open while transitioning to D3. 2012-06-18 09:35:21 +02:00
hda_eld.c ALSA: hda - hide HDMI/ELD printks unless snd.debug=2 2012-04-10 14:53:55 +02:00
hda_generic.c sound: Add export.h for THIS_MODULE/EXPORT_SYMBOL where needed 2011-10-31 19:31:22 -04:00
hda_hwdep.c Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux 2011-11-06 19:44:47 -08:00
hda_intel.c ALSA: hda - Handle open while transitioning to D3. 2012-06-18 09:35:21 +02:00
hda_jack.c ALSA: hda - Move BIOS pin-parser code to hda_auto_parser.c 2012-05-08 18:01:33 +02:00
hda_jack.h ALSA: hda - Move BIOS pin-parser code to hda_auto_parser.c 2012-05-08 18:01:33 +02:00
hda_local.h ALSA: hda - Move BIOS pin-parser code to hda_auto_parser.c 2012-05-08 18:01:33 +02:00
hda_proc.c ALSA: hda - Fix proc output for ADC amp values of CX20549 2012-04-07 12:25:02 +02:00
hda_trace.h ALSA: hda - Add tracepoint for unsolicited events 2011-08-09 14:24:17 +02:00
patch_analog.c ALSA: hda - Move BIOS pin-parser code to hda_auto_parser.c 2012-05-08 18:01:33 +02:00
patch_ca0110.c ALSA: hda - Move BIOS pin-parser code to hda_auto_parser.c 2012-05-08 18:01:33 +02:00
patch_ca0132.c ALSA: hda - Move BIOS pin-parser code to hda_auto_parser.c 2012-05-08 18:01:33 +02:00
patch_cirrus.c ALSA: hda - Move BIOS pin-parser code to hda_auto_parser.c 2012-05-08 18:01:33 +02:00
patch_cmedia.c ALSA: hda - Move BIOS pin-parser code to hda_auto_parser.c 2012-05-08 18:01:33 +02:00
patch_conexant.c ALSA: hda - Don't forget to call init verbs added by fixup list 2012-06-13 16:47:32 +02:00
patch_hdmi.c ALSA: hda - Protect SPDIF-related stuff via spdif_mutex 2012-05-10 14:56:15 +02:00
patch_realtek.c ALSA: hda - Don't forget to call init verbs added by fixup list 2012-06-13 16:47:32 +02:00
patch_si3054.c sound: Add module.h to the previously silent sound users 2011-10-31 19:31:21 -04:00
patch_sigmatel.c ALSA: hda/idt - Cache the power-map bits 2012-05-15 09:12:12 +02:00
patch_via.c ALSA: hda - Fix possible races of accesses to connection list array 2012-05-19 17:25:23 +02:00