aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_realtek.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2010-08-13 05:56:53 -0400
committerTakashi Iwai <tiwai@suse.de>2010-08-13 05:56:53 -0400
commitf0cea79724f03ee55e7b5933b6a6f6a3fd177710 (patch)
treebc0552e35dd5248d19f8d85f2ad84783371f9e08 /sound/pci/hda/patch_realtek.c
parentbbbe33900d1f3c4402148ccb85234a741a6606a3 (diff)
ALSA: hda - Fix dynamic ADC change working again
The commit eb541337b7a43822fce7d0c9d967ee149b2d9a96 ALSA: hda - Make converter setups sticky changes the semantics of snd_hda_codec_cleanup_stream() not to clean up the stream at that moment but delay the action. This broke the codes expecting that the clean-up is done immediately, such as dynamic ADC changes in some codec drivers. This patch fixes the issue by introducing a lower helper, __snd_hda_codec_cleanup_stream(), to allow the immediate clean up. The original snd_hda_codec_cleanup_stream() is kept as is now. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/patch_realtek.c')
-rw-r--r--sound/pci/hda/patch_realtek.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 55d6e5b6bb7..2cd1ae809e4 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -1037,7 +1037,7 @@ static void alc_dual_mic_adc_auto_switch(struct hda_codec *codec)
1037 new_adc = spec->adc_nids[spec->cur_adc_idx]; 1037 new_adc = spec->adc_nids[spec->cur_adc_idx];
1038 if (spec->cur_adc && spec->cur_adc != new_adc) { 1038 if (spec->cur_adc && spec->cur_adc != new_adc) {
1039 /* stream is running, let's swap the current ADC */ 1039 /* stream is running, let's swap the current ADC */
1040 snd_hda_codec_cleanup_stream(codec, spec->cur_adc); 1040 __snd_hda_codec_cleanup_stream(codec, spec->cur_adc, 1);
1041 spec->cur_adc = new_adc; 1041 spec->cur_adc = new_adc;
1042 snd_hda_codec_setup_stream(codec, new_adc, 1042 snd_hda_codec_setup_stream(codec, new_adc,
1043 spec->cur_adc_stream_tag, 0, 1043 spec->cur_adc_stream_tag, 0,