aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_conexant.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2008-03-18 04:57:50 -0400
committerTakashi Iwai <tiwai@suse.de>2008-04-24 06:00:26 -0400
commit888afa15418f001896bc11f498f9348e029611bd (patch)
tree7e0bb8f9c6d8d5d86b4cbd1fa473712f8b2f7c39 /sound/pci/hda/patch_conexant.c
parent117f257d7a9599ff9cb5ab7a6a10201c6294b5f1 (diff)
[ALSA] hda-codec - keep the format verb at closing PCM streams
Keep the format verb at closing PCM streams. Introduced snd_hda_codec_cleanup_stream() for the parcicular purpose. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/patch_conexant.c')
-rw-r--r--sound/pci/hda/patch_conexant.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/sound/pci/hda/patch_conexant.c b/sound/pci/hda/patch_conexant.c
index c67613ff842d..36fd85260035 100644
--- a/sound/pci/hda/patch_conexant.c
+++ b/sound/pci/hda/patch_conexant.c
@@ -174,8 +174,7 @@ static int conexant_capture_pcm_cleanup(struct hda_pcm_stream *hinfo,
174 struct snd_pcm_substream *substream) 174 struct snd_pcm_substream *substream)
175{ 175{
176 struct conexant_spec *spec = codec->spec; 176 struct conexant_spec *spec = codec->spec;
177 snd_hda_codec_setup_stream(codec, spec->adc_nids[substream->number], 177 snd_hda_codec_cleanup_stream(codec, spec->adc_nids[substream->number]);
178 0, 0, 0);
179 return 0; 178 return 0;
180} 179}
181 180
@@ -243,7 +242,7 @@ static int cx5051_capture_pcm_cleanup(struct hda_pcm_stream *hinfo,
243 struct snd_pcm_substream *substream) 242 struct snd_pcm_substream *substream)
244{ 243{
245 struct conexant_spec *spec = codec->spec; 244 struct conexant_spec *spec = codec->spec;
246 snd_hda_codec_setup_stream(codec, spec->cur_adc, 0, 0, 0); 245 snd_hda_codec_cleanup_stream(codec, spec->cur_adc);
247 spec->cur_adc = 0; 246 spec->cur_adc = 0;
248 return 0; 247 return 0;
249} 248}
@@ -1594,7 +1593,7 @@ static void cxt5051_portc_automic(struct hda_codec *codec)
1594 new_adc = spec->adc_nids[spec->cur_adc_idx]; 1593 new_adc = spec->adc_nids[spec->cur_adc_idx];
1595 if (spec->cur_adc && spec->cur_adc != new_adc) { 1594 if (spec->cur_adc && spec->cur_adc != new_adc) {
1596 /* stream is running, let's swap the current ADC */ 1595 /* stream is running, let's swap the current ADC */
1597 snd_hda_codec_setup_stream(codec, spec->cur_adc, 0, 0, 0); 1596 snd_hda_codec_cleanup_stream(codec, spec->cur_adc);
1598 spec->cur_adc = new_adc; 1597 spec->cur_adc = new_adc;
1599 snd_hda_codec_setup_stream(codec, new_adc, 1598 snd_hda_codec_setup_stream(codec, new_adc,
1600 spec->cur_adc_stream_tag, 0, 1599 spec->cur_adc_stream_tag, 0,