• Takashi Iwai's avatar
    ALSA: hda - Fix inconsistent pin states after resume · 31614bb8
    Takashi Iwai authored
    The commit [26a6cb6c: ALSA: hda - Implement a poll loop for jacks as a
    module parameter] introduced the polling jack detection code, but it
    also moved the call of snd_hda_jack_set_dirty_all() in the resume path
    after resume/init ops call.  This caused a regression when the jack
    state has been changed during power-down (e.g. in the power save
    mode).  Since the driver doesn't probe the new jack state but keeps
    using the cached value due to no dirty flag, the pin state remains
    also as if the jack is still plugged.
    
    The fix is simply moving snd_hda_jack_set_dirty_all() to the original
    position.
    Reported-by: default avatarManolo Díaz <diaz.manolo@gmail.com>
    Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    31614bb8
hda_codec.c 141 KB