Commit eb3deba1 authored by Daniel Mack's avatar Daniel Mack Committed by Greg Kroah-Hartman

ALSA: snd-usb: add quirks for Roland UA-22

commit fcdcd1de upstream.

The device complies to the UAC1 standard but hides that fact with
proprietary descriptors. The autodetect quirk for Roland devices
catches the audio interface but misses the MIDI part, so a specific
quirk is needed.
Signed-off-by: default avatarDaniel Mack <daniel@zonque.org>
Reported-by: default avatarRafa Lafuente <rafalafuente@gmail.com>
Tested-by: default avatarRaphaël Doursenaud <raphael@doursenaud.fr>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent e62c360b
...@@ -1773,6 +1773,36 @@ YAMAHA_DEVICE(0x7010, "UB99"), ...@@ -1773,6 +1773,36 @@ YAMAHA_DEVICE(0x7010, "UB99"),
} }
} }
}, },
{
USB_DEVICE(0x0582, 0x0159),
.driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
/* .vendor_name = "Roland", */
/* .product_name = "UA-22", */
.ifnum = QUIRK_ANY_INTERFACE,
.type = QUIRK_COMPOSITE,
.data = (const struct snd_usb_audio_quirk[]) {
{
.ifnum = 0,
.type = QUIRK_AUDIO_STANDARD_INTERFACE
},
{
.ifnum = 1,
.type = QUIRK_AUDIO_STANDARD_INTERFACE
},
{
.ifnum = 2,
.type = QUIRK_MIDI_FIXED_ENDPOINT,
.data = & (const struct snd_usb_midi_endpoint_info) {
.out_cables = 0x0001,
.in_cables = 0x0001
}
},
{
.ifnum = -1
}
}
}
},
/* this catches most recent vendor-specific Roland devices */ /* this catches most recent vendor-specific Roland devices */
{ {
.match_flags = USB_DEVICE_ID_MATCH_VENDOR | .match_flags = USB_DEVICE_ID_MATCH_VENDOR |
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment