
On Thu, 27 Feb 2025 00:15:01 +0100, Lena wrote:
Thanks for the reply!
So, if i understand correctly, instead of going through sound/usb/mixer_quirks.c, i need to create a standalone USBHID driver that exposes the ALSA kcontrols and then the ALSA userspace understands that it's the same interface and 'links' the UAC/isochronous audio part and the standalone ALSA mixer kcontrol part that has the volume knobs, mute, output select and input impedance/phantom power/headphone gain switches such that an userspace application (like alsamixer) treats it all as a single thing.
Well, how to manage HID device is other question. Usually a HID device provides the controls via input device API. It's not prohibited to use a sound API (in this case you'd need to create your own sound card object), though.
Does this driver then belong in sound/usb/ (given it imports the API in <sound/control.h>) or somewhere else (e.g. drivers/hid/usbhid/, drivers/usb/)?
Not likely. It'll be a pure HID driver.
HTH,
Takashi