Hello!
The TerraTec MIDI HUBBLE USB device provides two MIDI IN and OUT ports,
but it seems to lack the correct interface class value (see attached
output of lsusb -v). I thought this could be fixed by adding the
following to sound/usb/usbquirks.h:
{
USB_DEVICE_VENDOR_SPEC(0x0ccd, 0x0032),
.driver_info = (unsigned long) & (const snd_usb_audio_quirk_t) {
.vendor_name = "TerraTec Producer",
.product_name = "MIDI HUBBLE",
.ifnum = 0,
.type = QUIRK_MIDI_STANDARD_INTERFACE
}
},
But the USB subsystem still doesn't know it can use the snd_usb_audio
driver for this device (e.g. shown by usbmodules), and it is not
registered as an ALSA card. Is there anything I have to do in addition
to this, or did I do something wrong? The files modules.alias and
modules.usbmap got updated correctly, but I don't know who reads them
at what time.
The strangest thing is that it worked on one day, even though I had not
done anything special yet.
I hope you can help me. Thank you very much in advance.
BTW: I thought about posting this in the linux-sound mailing list, but
it seems to be dead. Posts are almost never answered, including a post
I made about a solution to another sound problem
(http://marc.theaimsgroup.com/?l=linux-sound&m=113261865703607&w=2).
(Since then, a few people who have the same problem have contacted me;
all of them would like the fix to be integrated into the kernel.)
--
Sebastian Reichelt
Bus 002 Device 003: ID 0ccd:0032 TerraTec Electronic GmbH
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0ccd TerraTec Electronic GmbH
idProduct 0x0032
bcdDevice 1.08
iManufacturer 1 TerraTec Producer
iProduct 2 MIDI HUBBLE
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 54
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xc0
Self Powered
MaxPower 98mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 4
bInterfaceClass 0 (Defined at Interface level)
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
bRefresh 0
bSynchAddress 0
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
bRefresh 0
bSynchAddress 0
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
bRefresh 0
bSynchAddress 0
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
bRefresh 0
bSynchAddress 0
Device Status: 0x0000
(Bus Powered)
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]