Hi alsa-devel,
Having a few problems with the Xone32c though not sure if this is an ALSA issue or general USB stack problem.
It's a USB soundcard that is supposed to have 4 inputs and 4 outputs. It seems to have 2 USB configurations (bNumConfigurations : 0x2). When plugged in, bConfigurationValue is 0x1 and only 2 inputs and 2 outputs show up. Change this value to 0x2 and it shows up (as it should) as 4 inputs and 4 outputs. Here's the full USB description:
I can change the bConfigurationValue with this udev rule, or with a `echo 2
/sys/bus/usb/devices/1-1.4/bConfigurationValue`:
https://gist.github.com/timnugent/ed65a79b2bd6c63788bfada3624756a4
This has all been working OK on Ubuntu 20.04 running kernel 5.4.0-33-generic. However, I just updated to 5.4.0-37-generic and now there is only a single USB configuration (bNumConfigurations : 0x1) and bConfigurationValue can't be changed to 0x2:
echo 2 > /sys/bus/usb/devices/1-1.4/bConfigurationValue bash: echo: write error: Invalid argument
So this could be a regression in snd_usb_audio, or maybe usbhid - which `lsudb -t` says are the drivers. This behaviour (only 1 configuration) also happens on a Raspberry Pi (Raspbian 4.19.66-v7+) - I haven't been able to get it to work at all.
Thanks Tim