[PATCH] ALSA: usb-audio: ignore broken processing/extension unit

Alex Volkov alex at bootes.sytes.net
Wed Oct 7 15:35:42 CEST 2020


This patch breaks the creation of the "Clock rate Selector" mixer unit in E-MU 
Tracker Pre USB audio interface. If the 'snd-usb-audio' module still has not 
been loaded when the device gets switched on, the module autoloads and 
everything works:

$ cat /proc/asound/USB/usbmixer 
USB Mixer: usb_id=0x041e3f0a, ctrlif=0, ctlerr=0
Card: E-MU Systems, Inc. E-MU Tracker Pre | USB at usb-0000:00:14.0-13, high 
speed
  Unit: 4
    Control: name="PCM Playback Volume", index=0
    Info: id=4, control=2, cmask=0x3, channels=2, type="S16"
    Volume: min=-25600, max=0, dBmin=-10000, dBmax=0
  Unit: 4
    Control: name="PCM Playback Switch", index=0
    Info: id=4, control=1, cmask=0x0, channels=1, type="INV_BOOLEAN"
    Volume: min=0, max=1, dBmin=0, dBmax=0
  Unit: 12
    Control: name="Clock rate Selector", index=0
    Info: id=12, control=3, cmask=0x0, channels=1, type="U8"
    Volume: min=0, max=5, dBmin=0, dBmax=0

BUT! If the device gets switched off and back on when the module is still 
loaded, the control never gets created:

(after I power cycled the device)

$ cat /proc/asound/USB/usbmixer 
USB Mixer: usb_id=0x041e3f0a, ctrlif=0, ctlerr=0
Card: E-MU Systems, Inc. E-MU Tracker Pre | USB at usb-0000:00:14.0-13, high 
speed
  Unit: 4
    Control: name="PCM Playback Volume", index=0
    Info: id=4, control=2, cmask=0x3, channels=2, type="S16"
    Volume: min=-25600, max=0, dBmin=-10000, dBmax=0
  Unit: 4
    Control: name="PCM Playback Switch", index=0
    Info: id=4, control=1, cmask=0x0, channels=1, type="INV_BOOLEAN"
    Volume: min=0, max=1, dBmin=0, dBmax=0

Accordingly, the device stays at the default Clock rate with no way to change 
it. Probably, there's some timing issue in the initialization of the device / 
the loading of the module, but I honestly couldn't care less as long as this 
patch breaks my setup.





More information about the Alsa-devel mailing list