Commit eefb8be4a4fb4aa9005fc092a88d66fe7cf1adc2
1 parent
7d4f606c50
Exists in
master
and in
20 other branches
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>
Showing 2 changed files with 13 additions and 2 deletions Side-by-side Diff
Documentation/sound/alsa/HD-Audio-Models.txt
... | ... | @@ -244,6 +244,7 @@ |
244 | 244 | 5stack-no-fp D965 5stack without front panel |
245 | 245 | dell-3stack Dell Dimension E520 |
246 | 246 | dell-bios Fixes with Dell BIOS setup |
247 | + dell-bios-amic Fixes with Dell BIOS setup including analog mic | |
247 | 248 | volknob Fixes with volume-knob widget 0x24 |
248 | 249 | auto BIOS setup (default) |
249 | 250 |
sound/pci/hda/patch_sigmatel.c
... | ... | @@ -158,6 +158,7 @@ |
158 | 158 | STAC_D965_VERBS, |
159 | 159 | STAC_DELL_3ST, |
160 | 160 | STAC_DELL_BIOS, |
161 | + STAC_DELL_BIOS_AMIC, | |
161 | 162 | STAC_DELL_BIOS_SPDIF, |
162 | 163 | STAC_927X_DELL_DMIC, |
163 | 164 | STAC_927X_VOLKNOB, |
... | ... | @@ -3228,8 +3229,6 @@ |
3228 | 3229 | [STAC_DELL_BIOS] = { |
3229 | 3230 | .type = HDA_FIXUP_PINS, |
3230 | 3231 | .v.pins = (const struct hda_pintbl[]) { |
3231 | - /* configure the analog microphone on some laptops */ | |
3232 | - { 0x0c, 0x90a79130 }, | |
3233 | 3232 | /* correct the front output jack as a hp out */ |
3234 | 3233 | { 0x0f, 0x0227011f }, |
3235 | 3234 | /* correct the front input jack as a mic */ |
... | ... | @@ -3239,6 +3238,16 @@ |
3239 | 3238 | .chained = true, |
3240 | 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 | 3251 | [STAC_DELL_BIOS_SPDIF] = { |
3243 | 3252 | .type = HDA_FIXUP_PINS, |
3244 | 3253 | .v.pins = (const struct hda_pintbl[]) { |
... | ... | @@ -3267,6 +3276,7 @@ |
3267 | 3276 | { .id = STAC_D965_5ST_NO_FP, .name = "5stack-no-fp" }, |
3268 | 3277 | { .id = STAC_DELL_3ST, .name = "dell-3stack" }, |
3269 | 3278 | { .id = STAC_DELL_BIOS, .name = "dell-bios" }, |
3279 | + { .id = STAC_DELL_BIOS_AMIC, .name = "dell-bios-amic" }, | |
3270 | 3280 | { .id = STAC_927X_VOLKNOB, .name = "volknob" }, |
3271 | 3281 | {} |
3272 | 3282 | }; |