• Hui Wang's avatar
    ALSA: hda/realtek: fix a determine_headset_type issue for a Dell AIO · febf2256
    Hui Wang authored
    We found a recording issue on a Dell AIO, users plug a headset-mic and
    select headset-mic from UI, but can't record any sound from
    headset-mic. The root cause is the determine_headset_type() returns a
    wrong type, e.g. users plug a ctia type headset, but that function
    returns omtp type.
    
    On this machine, the internal mic is not connected to the codec, the
    "Input Source" is headset mic by default. And when users plug a
    headset, the determine_headset_type() will be called immediately, the
    codec on this AIO is alc274, the delay time for this codec in the
    determine_headset_type() is only 80ms, the delay is too short to
    correctly determine the headset type, the fail rate is nearly 99% when
    users plug the headset with the normal speed.
    
    Other codecs set several hundred ms delay time, so here I change the
    delay time to 850ms for alc2x4 series, after this change, the fail
    rate is zero unless users plug the headset slowly on purpose.
    
    Cc: <stable@vger.kernel.org>
    Signed-off-by: default avatarHui Wang <hui.wang@canonical.com>
    Link: https://lore.kernel.org/r/20210320091542.6748-1-hui.wang@canonical.comSigned-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    febf2256
patch_realtek.c 321 KB