[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>
This commit is contained in:
Takashi Iwai 2007-04-20 16:11:43 +02:00 committed by Jaroslav Kysela
parent 2078f38c80
commit 9422db4018

View File

@ -2242,18 +2242,13 @@ int __devinit snd_hda_parse_pin_def_config(struct hda_codec *codec,
* HDA sequence is:
* 4-ch: front/surr => OK as it is
* 6-ch: front/clfe/surr
* 8-ch: front/clfe/side/surr
* 8-ch: front/clfe/rear/side|fc
*/
switch (cfg->line_outs) {
case 3:
nid = cfg->line_out_pins[1];
cfg->line_out_pins[1] = cfg->line_out_pins[2];
cfg->line_out_pins[2] = nid;
break;
case 4:
nid = cfg->line_out_pins[1];
cfg->line_out_pins[1] = cfg->line_out_pins[3];
cfg->line_out_pins[3] = cfg->line_out_pins[2];
cfg->line_out_pins[1] = cfg->line_out_pins[2];
cfg->line_out_pins[2] = nid;
break;
}