aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_realtek.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2011-10-06 02:27:19 -0400
committerTakashi Iwai <tiwai@suse.de>2011-10-06 02:30:45 -0400
commit06503670afc4372186d691ab2b9298a5e86fa29f (patch)
tree04a5bc831d06714bdac9a5c87fa9108475eab52b /sound/pci/hda/patch_realtek.c
parentf71ff0d713a85f647c16fbe44d2a12bbcc25add3 (diff)
ALSA: hda/realtek - Choose more cleverly the primary outputs
When the speaker outputs are more than the headphone outputs, it implies that the system has surround speakers while the headphones are only for monitoring the front. In such a case, it's better to put speakers as the primary outputs so that the driver can build up and keep the surround setup. Otherwise the system will pick up the headphone as primary, and offers less channels than the speakers do support. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/patch_realtek.c')
-rw-r--r--sound/pci/hda/patch_realtek.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 45108445edc5..bf53663186c9 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -3731,7 +3731,8 @@ static int alc_parse_auto_config(struct hda_codec *codec,
3731 return 0; /* can't find valid BIOS pin config */ 3731 return 0; /* can't find valid BIOS pin config */
3732 } 3732 }
3733 3733
3734 if (cfg->line_out_type == AUTO_PIN_SPEAKER_OUT && cfg->hp_outs > 0) { 3734 if (cfg->line_out_type == AUTO_PIN_SPEAKER_OUT &&
3735 cfg->line_outs <= cfg->hp_outs) {
3735 /* use HP as primary out */ 3736 /* use HP as primary out */
3736 cfg->speaker_outs = cfg->line_outs; 3737 cfg->speaker_outs = cfg->line_outs;
3737 memcpy(cfg->speaker_pins, cfg->line_out_pins, 3738 memcpy(cfg->speaker_pins, cfg->line_out_pins,