Going from Kernel 5.11.7 to 5.13.0, my USB sound dongle (idVendor=077d, idProduct=07af, bcdDevice= 0.06; Product: iMic USB audio system, Manufacturer: Griffin Technology, Inc) stopped outputting audio; the microphone input kept working.
On plugging in, the new kernel gives the following error messages:
kernel: usb 2-1: cannot get connectors status: req = 0x81, wValue = 0x900, wIndex = 0x100, type = 0
kernel: snd-usb-audio 2-1:1.0: reset_resume error -22
kernel: usb 2-1: 1:0: usb_set_interface failed (-71)
repeating the last line another five times.
The device has worked in earlier kernels for something like a decade, though a while ago the kernel started to complain that
kernel: usb 2-1: Warning! Unlikely big volume range (=656), cval->res is probably wrong.
which I kept ignoring because it didn't seem to result in operational trouble.
Going through the commits that changed the sound/usb/mixer.c file that the connectors status message comes from, I found commit 44609fc01f280d6b4067262ecbb00e3128d718ae. Undoing that commit fixes the dongle.
I admit I've not tried to identify where things actually break and how the Griffin dongle can be saved without breaking again whatever that commit fixed. If that's not obvious to people who actually understand this code, I'm happy to research further, though.jj
Could you give alsa-info.sh output? Run the script with --no-upload option and attach to Bugzilla.
Also, could you try the patch below?
Created attachment 298099 [details]
The patch works nicely for me -- thanks!
I'll still attach the alsa info in case it helps understanding why it works :-)
Created attachment 298109 [details]
alsa-info output with the iMic device plugged in
The fix has been already in the upstream. Let's close.