summaryrefslogtreecommitdiff
path: root/sound/pci/hda/patch_cirrus.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2012-11-08 17:12:10 +0100
committerTakashi Iwai <tiwai@suse.de>2012-11-08 17:13:59 +0100
commitee81abb623cb5e03c182d16871bb4fb34fdc9b4f (patch)
tree74499d19b6cc75343da95899e93a69ad56541323 /sound/pci/hda/patch_cirrus.c
parentf37bc7a88d374448a1f4bba9267d308606d78bf2 (diff)
downloadlinux-3.10-ee81abb623cb5e03c182d16871bb4fb34fdc9b4f.tar.gz
linux-3.10-ee81abb623cb5e03c182d16871bb4fb34fdc9b4f.tar.bz2
linux-3.10-ee81abb623cb5e03c182d16871bb4fb34fdc9b4f.zip
ALSA: hda - Apply a proper chmap for built-in 2.1 speakers
When 2.1 speakers are detected, use the corresponding channel map instead of the standard map with front+rear surrounds. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/patch_cirrus.c')
-rw-r--r--sound/pci/hda/patch_cirrus.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_cirrus.c b/sound/pci/hda/patch_cirrus.c
index 794b0da1121..f99cbf942b8 100644
--- a/sound/pci/hda/patch_cirrus.c
+++ b/sound/pci/hda/patch_cirrus.c
@@ -344,6 +344,9 @@ static int cs_build_pcms(struct hda_codec *codec)
info->stream[SNDRV_PCM_STREAM_PLAYBACK].nid = spec->dac_nid[0];
info->stream[SNDRV_PCM_STREAM_PLAYBACK].channels_max =
spec->multiout.max_channels;
+ if (spec->speaker_2_1)
+ info->stream[SNDRV_PCM_STREAM_PLAYBACK].chmap =
+ snd_pcm_2_1_chmaps;
info->stream[SNDRV_PCM_STREAM_CAPTURE] = cs_pcm_analog_capture;
info->stream[SNDRV_PCM_STREAM_CAPTURE].nid =
spec->adc_nid[spec->cur_input];