ALSA: usb-audio: Add boot quirk for MOTU M Series
Add delay to make sure that audio urbs are not sent too early. Otherwise the device hangs. Windows driver makes ~2s delay, so use about the same time delay value. snd_usb_apply_boot_quirk() is called 3 times for my MOTU M4, which is an overkill. Thus a quirk that is called only once is implemented. Also send two vendor-specific control messages before and after the delay. This behaviour is blindly copied from the Windows driver. Signed-off-by: Alexander Tsoy <alexander@tsoy.me> Link: https://lore.kernel.org/r/20200112102358.18085-1-alexander@tsoy.me Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:

committed by
Takashi Iwai

parent
791a485f2d
commit
73ac9f5e5b
@@ -600,6 +600,10 @@ static int usb_audio_probe(struct usb_interface *intf,
|
||||
}
|
||||
}
|
||||
if (! chip) {
|
||||
err = snd_usb_apply_boot_quirk_once(dev, intf, quirk, id);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
/* it's a fresh one.
|
||||
* now look for an empty slot and create a new card instance
|
||||
*/
|
||||
|
Reference in New Issue
Block a user