]> git.baikalelectronics.ru Git - kernel.git/commit
ALSA: usb-audio: Check connector value on resume
authorKai-Heng Feng <kai.heng.feng@canonical.com>
Thu, 25 Mar 2021 16:59:13 +0000 (00:59 +0800)
committerTakashi Iwai <tiwai@suse.de>
Fri, 26 Mar 2021 08:10:33 +0000 (09:10 +0100)
commit02f0b2c0f96f68bcfdb2d68ca4bbbcdecee512bb
tree7bca7809ed4ff63c53706b5bc8059ba85d6bbcf4
parent996e25c7902165300503244b231cee794ba5446f
ALSA: usb-audio: Check connector value on resume

Rear Mic on Lenovo P620 cannot record after S3, despite that there's no
error and the other two functions of the USB audio, Line In and Line
Out, work just fine.

The mic starts to work again after running userspace app like "alsactl
store". Following the lead, the evidence shows that as soon as connector
status is queried, the mic can work again.

So also check connector value on resume to "wake up" the USB audio to
make it functional.

This can be device specific, however I think this generic approach may
benefit more than one device.

Now the resume callback checks connector, and a new callback,
reset_resume, to also restore switches and volumes.

Suggested-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
Link: https://lore.kernel.org/r/20210325165918.22593-2-kai.heng.feng@canonical.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/usb/mixer.c
sound/usb/mixer.h
sound/usb/mixer_quirks.c