aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2013-07-29 10:26:15 -0400
committerTakashi Iwai <tiwai@suse.de>2013-07-29 10:30:21 -0400
commiteefb8be4a4fb4aa9005fc092a88d66fe7cf1adc2 (patch)
tree1dc9e43a549ac8658092d8d4492172687b9022a6 /sound/pci/hda
parent7d4f606c50ffaaa3ac60b7faf770dc6e84af3207 (diff)
ALSA: hda - Remove analog mic pin override from STAC9228 dell-bios quirk
The current fixup for dell-bios model with STAC9228 codec contains the override of pin 0x0c for analog mic. But this is actually just adding a bogus pin and confuses the parser. Better to remove it for the auto-mic switching. Meanwhile, for a possible regression, keep the old configuration as model=dell-bios-amic, so that people can test it again quickly. Tested on Dell 1420n laptop. Reported-and-tested-by: Eric Shattow <lucent@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda')
-rw-r--r--sound/pci/hda/patch_sigmatel.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index e2f83591161b..8f6c35753810 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -158,6 +158,7 @@ enum {
158 STAC_D965_VERBS, 158 STAC_D965_VERBS,
159 STAC_DELL_3ST, 159 STAC_DELL_3ST,
160 STAC_DELL_BIOS, 160 STAC_DELL_BIOS,
161 STAC_DELL_BIOS_AMIC,
161 STAC_DELL_BIOS_SPDIF, 162 STAC_DELL_BIOS_SPDIF,
162 STAC_927X_DELL_DMIC, 163 STAC_927X_DELL_DMIC,
163 STAC_927X_VOLKNOB, 164 STAC_927X_VOLKNOB,
@@ -3228,8 +3229,6 @@ static const struct hda_fixup stac927x_fixups[] = {
3228 [STAC_DELL_BIOS] = { 3229 [STAC_DELL_BIOS] = {
3229 .type = HDA_FIXUP_PINS, 3230 .type = HDA_FIXUP_PINS,
3230 .v.pins = (const struct hda_pintbl[]) { 3231 .v.pins = (const struct hda_pintbl[]) {
3231 /* configure the analog microphone on some laptops */
3232 { 0x0c, 0x90a79130 },
3233 /* correct the front output jack as a hp out */ 3232 /* correct the front output jack as a hp out */
3234 { 0x0f, 0x0227011f }, 3233 { 0x0f, 0x0227011f },
3235 /* correct the front input jack as a mic */ 3234 /* correct the front input jack as a mic */
@@ -3239,6 +3238,16 @@ static const struct hda_fixup stac927x_fixups[] = {
3239 .chained = true, 3238 .chained = true,
3240 .chain_id = STAC_927X_DELL_DMIC, 3239 .chain_id = STAC_927X_DELL_DMIC,
3241 }, 3240 },
3241 [STAC_DELL_BIOS_AMIC] = {
3242 .type = HDA_FIXUP_PINS,
3243 .v.pins = (const struct hda_pintbl[]) {
3244 /* configure the analog microphone on some laptops */
3245 { 0x0c, 0x90a79130 },
3246 {}
3247 },
3248 .chained = true,
3249 .chain_id = STAC_DELL_BIOS,
3250 },
3242 [STAC_DELL_BIOS_SPDIF] = { 3251 [STAC_DELL_BIOS_SPDIF] = {
3243 .type = HDA_FIXUP_PINS, 3252 .type = HDA_FIXUP_PINS,
3244 .v.pins = (const struct hda_pintbl[]) { 3253 .v.pins = (const struct hda_pintbl[]) {
@@ -3267,6 +3276,7 @@ static const struct hda_model_fixup stac927x_models[] = {
3267 { .id = STAC_D965_5ST_NO_FP, .name = "5stack-no-fp" }, 3276 { .id = STAC_D965_5ST_NO_FP, .name = "5stack-no-fp" },
3268 { .id = STAC_DELL_3ST, .name = "dell-3stack" }, 3277 { .id = STAC_DELL_3ST, .name = "dell-3stack" },
3269 { .id = STAC_DELL_BIOS, .name = "dell-bios" }, 3278 { .id = STAC_DELL_BIOS, .name = "dell-bios" },
3279 { .id = STAC_DELL_BIOS_AMIC, .name = "dell-bios-amic" },
3270 { .id = STAC_927X_VOLKNOB, .name = "volknob" }, 3280 { .id = STAC_927X_VOLKNOB, .name = "volknob" },
3271 {} 3281 {}
3272}; 3282};