ALSA: hda - Don't reset HP pinctl in patch_sigmatel.c
Resetting HP pinctl at the unplugged state may cause a sort of regression on some devices because of their wrong pin configuration. A simple workaround is to disable the pin reset. This is ugly and may be not good from the power-saving POV (if any), but damn simple. Signed-off-by: Takashi Iwai <tiwai@suse.de> Cc: stable@kernel.org
This commit is contained in:
parent
c15c5060fc
commit
8317e0b0c2
@ -4225,8 +4225,19 @@ static void stac92xx_hp_detect(struct hda_codec *codec)
|
||||
continue;
|
||||
if (presence)
|
||||
stac92xx_set_pinctl(codec, cfg->hp_pins[i], val);
|
||||
#if 0 /* FIXME */
|
||||
/* Resetting the pinctl like below may lead to (a sort of) regressions
|
||||
* on some devices since they use the HP pin actually for line/speaker
|
||||
* outs although the default pin config shows a different pin (that is
|
||||
* wrong and useless).
|
||||
*
|
||||
* So, it's basically a problem of default pin configs, likely a BIOS issue.
|
||||
* But, disabling the code below just works around it, and I'm too tired of
|
||||
* bug reports with such devices...
|
||||
*/
|
||||
else
|
||||
stac92xx_reset_pinctl(codec, cfg->hp_pins[i], val);
|
||||
#endif /* FIXME */
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user