aboutsummaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorHsin-Yu Chao <hychao@chromium.org>2014-02-19 14:30:35 +0800
committerTakashi Iwai <tiwai@suse.de>2014-02-19 07:50:34 +0100
commit13c12dbe3a2ce17227f7ddef652b6a53c78fa51f (patch)
treef4688e90a2faeb169410d24094340d946c7623d7 /sound
parentALSA: hda/ca0132 - setup/cleanup streams (diff)
downloadlinux-dev-13c12dbe3a2ce17227f7ddef652b6a53c78fa51f.tar.xz
linux-dev-13c12dbe3a2ce17227f7ddef652b6a53c78fa51f.zip
ALSA: hda/ca0132 - Fix recording from mode id 0x8
Incorrect ADC is picked in ca0132_capture_pcm_prepare(), where it assumes multiple streams while there is one stream per ADC. Note that ca0132_capture_pcm_cleanup() already does the right thing. The Chromebook Pixel has a microphone under the keyboard that is attached to node id 0x8. Before this fix, recording would always go to the main internal mic (node id 0x7). Signed-off-by: Hsin-Yu Chao <hychao@chromium.org> Reviewed-by: Dylan Reid <dgreid@chromium.org> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r--sound/pci/hda/patch_ca0132.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/sound/pci/hda/patch_ca0132.c b/sound/pci/hda/patch_ca0132.c
index 0aa72ee38d03..46ecdbb9053f 100644
--- a/sound/pci/hda/patch_ca0132.c
+++ b/sound/pci/hda/patch_ca0132.c
@@ -2768,9 +2768,7 @@ static int ca0132_capture_pcm_prepare(struct hda_pcm_stream *hinfo,
unsigned int format,
struct snd_pcm_substream *substream)
{
- struct ca0132_spec *spec = codec->spec;
-
- snd_hda_codec_setup_stream(codec, spec->adcs[substream->number],
+ snd_hda_codec_setup_stream(codec, hinfo->nid,
stream_tag, 0, format);
return 0;