aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2007-04-20 10:11:43 -0400
committerJaroslav Kysela <perex@suse.cz>2007-05-11 10:56:08 -0400
commit9422db4018cbfaa1a330b018a2bf6527d282b417 (patch)
treeff46b591ccbd68cb4e8c711042c0ba3215cc2f02
parent2078f38c8008f5c54d9523ae19af32b9a0c5530e (diff)
[ALSA] hda-codec - Fix 8-channel auto-configuration
Fix the auto-configuration of 8-channel devices. The sequence numbers of usual 7.1 outputs are: 0/1/2/4 = Front/CLFE/Rear/Side Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
-rw-r--r--sound/pci/hda/hda_codec.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c
index 2fdd1652bad3..a58fdf4cbe5c 100644
--- a/sound/pci/hda/hda_codec.c
+++ b/sound/pci/hda/hda_codec.c
@@ -2242,18 +2242,13 @@ int __devinit snd_hda_parse_pin_def_config(struct hda_codec *codec,
2242 * HDA sequence is: 2242 * HDA sequence is:
2243 * 4-ch: front/surr => OK as it is 2243 * 4-ch: front/surr => OK as it is
2244 * 6-ch: front/clfe/surr 2244 * 6-ch: front/clfe/surr
2245 * 8-ch: front/clfe/side/surr 2245 * 8-ch: front/clfe/rear/side|fc
2246 */ 2246 */
2247 switch (cfg->line_outs) { 2247 switch (cfg->line_outs) {
2248 case 3: 2248 case 3:
2249 nid = cfg->line_out_pins[1];
2250 cfg->line_out_pins[1] = cfg->line_out_pins[2];
2251 cfg->line_out_pins[2] = nid;
2252 break;
2253 case 4: 2249 case 4:
2254 nid = cfg->line_out_pins[1]; 2250 nid = cfg->line_out_pins[1];
2255 cfg->line_out_pins[1] = cfg->line_out_pins[3]; 2251 cfg->line_out_pins[1] = cfg->line_out_pins[2];
2256 cfg->line_out_pins[3] = cfg->line_out_pins[2];
2257 cfg->line_out_pins[2] = nid; 2252 cfg->line_out_pins[2] = nid;
2258 break; 2253 break;
2259 } 2254 }