hi all, with this change in usbquirks.h , i can use my synth roland sh-201
{ /* Roland SH-201 */ USB_DEVICE(0x0582, 0x00ad), .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { .vendor_name = "Roland", .product_name = "SH-201", .ifnum = QUIRK_ANY_INTERFACE, .type = QUIRK_COMPOSITE, .data = (const struct snd_usb_audio_quirk[]) { { .ifnum = 0, .type = QUIRK_AUDIO_FIXED_ENDPOINT, .data = & (const struct audioformat) { .format = SNDRV_PCM_FORMAT_S24_3LE, .channels = 2, .iface = 0, .altsetting = 1, .altset_idx = 1, .attributes = 0, .endpoint = 0x01, .ep_attr = 0x01, .rates = SNDRV_PCM_RATE_CONTINUOUS, .rate_min = 44100, .rate_max = 44100, } }, { .ifnum = 1, .type = QUIRK_AUDIO_FIXED_ENDPOINT, .data = & (const struct audioformat) { .format = SNDRV_PCM_FORMAT_S24_3LE, .channels = 2, .iface = 1, .altsetting = 1, .altset_idx = 1, .attributes = 0, .endpoint = 0x81, .ep_attr = 0x01, .rates = SNDRV_PCM_RATE_CONTINUOUS, .rate_min = 44100, .rate_max = 44100, } }, { .ifnum = 2, .type = QUIRK_MIDI_FIXED_ENDPOINT, .data = & (const struct snd_usb_midi_endpoint_info) { .out_cables = 0x0007, .in_cables = 0x0007 } }, { .ifnum = -1 } } } },
my kernel is 2.6.21.5-rt17, (plus preempt patch) and i use debian testing the hardware seem to be very similar to Roland SC-D70 (windows .inf file are very similar)
this is the device id Bus 001 Device 003: ID 0582:00ad Roland Corp.
in attach you can see the lsusb (verbose) output
becks@vaix:~$ amidi -l Dir Device Name IO hw:1,0,0 SH-201 MIDI 1 IO hw:1,0,1 SH-201 MIDI 2 IO hw:1,0,2 SH-201 MIDI 3
muse works fine with jack and midi output
becks@vaix:~$ aseqdump -p 20:0 Waiting for data. Press Ctrl+C to end. Source_ Event_________________ Ch _Data__ 20:0 Note on 1 52 17 20:0 Note off 1 52 55
also midi-in works
becks@vaix:~$ cat /proc/asound/cards 0 [A5451 ]: ALI5451 - ALI 5451 ALI 5451 at 0x8400, irq 9 1 [SH201 ]: USB-Audio - SH-201 Roland SH-201 at usb-0000:00:0c.0-1, full speed
when i use my synth like a sound card, it don't work, i don't know exactly why (if is a patch problem, or rate/format)
becks@vaix:~$ aplay -D hw:1,0 /usr/share/sounds/KDE_Window_UnSticky.wav Playing WAVE '/usr/share/sounds/KDE_Window_UnSticky.wav' : Signed 16 bit Little Endian, Rate 22050 Hz, Mono aplay: set_params:904: Sample format non available
let me know if you need more info thanks
-- carlo beccaria