summaryrefslogtreecommitdiff
path: root/sound/pci/hda/patch_sigmatel.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-23 08:37:23 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-23 08:37:23 -0700
commit101e4d91f5e8c78d64970c03323d942d6706320f (patch)
treece0e6a0a172ee9fbe638a60c124512bac8373dbc /sound/pci/hda/patch_sigmatel.c
parent2f2c2679893c963bd90c5e1c0669b97fd87d1c4a (diff)
parent9efbf95f6204da0112371f41e63c7330f94e1042 (diff)
Merge branch 'linus' of master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa
* 'linus' of master.kernel.org:/pub/scm/linux/kernel/git/perex/alsa: [ALSA] version 1.0.15 [ALSA] hda-codec - Fix possible array overflow [ALSA] sound/core/control.c: hard-irq-safe -> hard-irq-unsafe lock warning [ALSA] usb-audio: Another USB mic quirk for Logitech Communicator webcam [ALSA] hda-codec - Fix build without CONFIG_SND_HDA_GENERIC [ALSA] hda-codec - Fix Conexant 5045 volumes [ALSA] hda-codec - Fix conflict of Master volume in STAC92xx codec [ALSA] snd-bt87x: Make the load_all option work correctly [ALSA] protect Dreamcast PCM driver (AICA) from G2 bus effects [ALSA] bt87x - Fix section mismatch [ALSA] hda-codec - Fix AD1986A Lenovo auto-mute [ALSA] This simplifies and fixes waiting loops of the mce_down()
Diffstat (limited to 'sound/pci/hda/patch_sigmatel.c')
-rw-r--r--sound/pci/hda/patch_sigmatel.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index bf950195107..f9b2c435a13 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -111,6 +111,7 @@ struct sigmatel_spec {
unsigned int alt_switch: 1;
unsigned int hp_detect: 1;
unsigned int gpio_mute: 1;
+ unsigned int no_vol_knob :1;
unsigned int gpio_mask, gpio_data;
@@ -1930,7 +1931,8 @@ static int stac92xx_auto_create_hp_ctls(struct hda_codec *codec,
}
if (spec->multiout.hp_nid) {
const char *pfx;
- if (old_num_dacs == spec->multiout.num_dacs)
+ if (old_num_dacs == spec->multiout.num_dacs &&
+ spec->no_vol_knob)
pfx = "Master";
else
pfx = "Headphone";
@@ -2487,6 +2489,7 @@ static int patch_stac9200(struct hda_codec *codec)
codec->spec = spec;
spec->num_pins = ARRAY_SIZE(stac9200_pin_nids);
spec->pin_nids = stac9200_pin_nids;
+ spec->no_vol_knob = 1;
spec->board_config = snd_hda_check_board_config(codec, STAC_9200_MODELS,
stac9200_models,
stac9200_cfg_tbl);
@@ -2541,6 +2544,7 @@ static int patch_stac925x(struct hda_codec *codec)
codec->spec = spec;
spec->num_pins = ARRAY_SIZE(stac925x_pin_nids);
spec->pin_nids = stac925x_pin_nids;
+ spec->no_vol_knob = 1;
spec->board_config = snd_hda_check_board_config(codec, STAC_925x_MODELS,
stac925x_models,
stac925x_cfg_tbl);