• Kai-Heng Feng's avatar
    ALSA: usb-audio: Add support for Lenovo ThinkStation P620 · f8c11eb7
    Kai-Heng Feng authored
    Lenovo ThinkStation P620 is like other TRX40 boards, is equipped with
    two USB audio cards.
    
    USB device (17aa:104d) provides functionality for Internal Speaker and
    Front Headset. It's UAC v2, so it supports insertion control (jack
    detection). However, when trying to get the connector status of the
    speaker, an error occurs:
    [    5.787405] usb 3-1: cannot get connectors status: req = 0x81, wValue = 0x200, wIndex = 0x1000, type = 0
    
    Since the insertion control works perfectly for the headset, the error
    for speaker is probably casued by connecting internally. So let's relax
    the error for a bit if it's a speaker, and always reports it's connected.
    
    USB device (17aa:1046) is for rear Line-in, Line-out and Microphone.
    The insertion control works for all three jacks. However, there's an
    Function Unit that doesn't work:
    [    5.905415] usb 3-6: cannot get ctl value: req = 0x83, wValue = 0xc00, wIndex = 0x1300, type = 4
    [    5.905418] usb 3-6: 19:0: cannot get min/max values for control 12 (id 19)
    
    So turn off the FU to avoid the error.
    
    Also, add specific card name for both devices, so userspace can easily
    indentify both cards.
    Signed-off-by: default avatarKai-Heng Feng <kai.heng.feng@canonical.com>
    Link: https://lore.kernel.org/r/20200803142612.17156-1-kai.heng.feng@canonical.comSigned-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    f8c11eb7
mixer.c 96.8 KB