At Fri, 09 Jan 2015 09:48:42 +0100,
Clemens Ladisch wrote:
> 
> Paul Bonser wrote:
> > On 01/08/2015 03:56 PM, Clemens Ladisch wrote:
> >> Paul Bonser wrote:
> >>> The Akai MPC Element incorrectly reports its bInterfaceClass as 255, but
> >>> otherwise implements the USB MIDI spec correctly.
> >>>
> >>> This adds a quirks-table.h entry which allows the device to be
> >>> recognized as a standard USB MIDI device.
> >>>
> >>> +++ b/sound/usb/quirks-table.h
> >>> +{
> >>> + /* Akai MPC Element */
> >>> + USB_DEVICE(0x09e8, 0x0021),
> >>> + .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
> >>> +         .ifnum = QUIRK_ANY_INTERFACE,
> >>> +         .type = QUIRK_COMPOSITE,
> >>> +         .data = & (const struct snd_usb_audio_quirk[]) {
> >>> +                 {
> >>> +                         .ifnum = 0,
> >>> +                         .type = QUIRK_IGNORE_INTERFACE
> >>> +                 },
> >>> +                 {
> >>> +                         .ifnum = 1,
> >>> +                         .type = QUIRK_MIDI_STANDARD_INTERFACE
> >>> +                 },
> >>> +                 {
> >>> +                         .ifnum = -1
> >>> +                 }
> >>> +         }
> >>> + }
> >>> +},
> >>
> >> Why a composite quirk?  Does a single quirk entry not work?
> >
> > A single quirk entry results in an error message in dmesg:
> > "snd-usb-audio: probe of 3-2:1.0 failed with error -5"
> 
> That message is normal for unhandled interfaces.

It's still not good to show a message, so using QUIRK_IGNORE_INTERFACE
is good enough as a workaround.  So I applied it as is to for-next
branch now.  Though...

> Does it actually prevent the device from working?

... it's still interesting why it needs a special handling.  If we
find out more and have a better fix, let's put on top of the current
patch.


thanks,

Takashi
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to