[ALSA] hda-codec - Fix 8-channel auto-configuration
authorTakashi Iwai <tiwai@suse.de>
Fri, 20 Apr 2007 14:11:43 +0000 (16:11 +0200)
committerJaroslav Kysela <perex@suse.cz>
Fri, 11 May 2007 14:56:08 +0000 (16:56 +0200)
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>
sound/pci/hda/hda_codec.c

index 2fdd1652bad3842daf33514963323426df67e729..a58fdf4cbe5c026d6ff0f5468f4105546b732995 100644 (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;
        }