ALSA: hda - Don't re-initialize shared hp/mic pinctl
When a headphone pin is set up as a shared hp/mic pin, we rather want to keep it as a headphone primarily as default, but the driver overrides it always as a mic pin, just because the input controls are created after outputs. Add a check of pin NID and skip the re-initialization of pinctl for such a shared hp/mic pin. Reported-by: Jonathan Woithe <jwoithe@just42.net> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
d5702162f8
commit
93c9d8ae0b
1 changed files with 2 additions and 1 deletions
|
@ -2967,6 +2967,7 @@ static int create_input_ctls(struct hda_codec *codec)
|
||||||
val = PIN_IN;
|
val = PIN_IN;
|
||||||
if (cfg->inputs[i].type == AUTO_PIN_MIC)
|
if (cfg->inputs[i].type == AUTO_PIN_MIC)
|
||||||
val |= snd_hda_get_default_vref(codec, pin);
|
val |= snd_hda_get_default_vref(codec, pin);
|
||||||
|
if (pin != spec->hp_mic_pin)
|
||||||
set_pin_target(codec, pin, val, false);
|
set_pin_target(codec, pin, val, false);
|
||||||
|
|
||||||
if (mixer) {
|
if (mixer) {
|
||||||
|
|
Loading…
Add table
Reference in a new issue