From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: "Lukáš Lalinský" <lukas@oxygene.sk>
Cc: linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org
Subject: Re: [PATCH] USB: Add quirk for WORLDE easykey.25 MIDI keyboard
Date: Sat, 21 Jan 2017 10:08:34 +0100 [thread overview]
Message-ID: <20170121090834.GC27048@kroah.com> (raw)
In-Reply-To: <1484937994-8076-1-git-send-email-lukas@oxygene.sk>
On Fri, Jan 20, 2017 at 07:46:34PM +0100, Lukáš Lalinský wrote:
> Add a quirk for WORLDE easykey.25 MIDI keyboard (idVendor=0218,
> idProduct=0401). The device reports that it has config string
> descriptor at index 3, but when the system selects the configuration
> and tries to get the description, it returns a -EPROTO error,
> the communication restarts and this keeps repeating over and over again.
> Not requesting the string descriptor makes the device work correctly.
Always use scripts/get_maintainer.pl to determine who to send patches
to, and what mailing list. You forgot linux-usb@vger, which I've now
added...
>
> Relevant info from Wireshark:
>
> [...]
>
> CONFIGURATION DESCRIPTOR
> bLength: 9
> bDescriptorType: 0x02 (CONFIGURATION)
> wTotalLength: 101
> bNumInterfaces: 2
> bConfigurationValue: 1
> iConfiguration: 3
> Configuration bmAttributes: 0xc0 SELF-POWERED NO REMOTE-WAKEUP
> 1... .... = Must be 1: Must be 1 for USB 1.1 and higher
> .1.. .... = Self-Powered: This device is SELF-POWERED
> ..0. .... = Remote Wakeup: This device does NOT support remote wakeup
> bMaxPower: 50 (100mA)
>
> [...]
>
> 45 0.369104 host 2.38.0 USB 64 GET DESCRIPTOR Request STRING
>
> [...]
>
> URB setup
> bmRequestType: 0x80
> 1... .... = Direction: Device-to-host
> .00. .... = Type: Standard (0x00)
> ...0 0000 = Recipient: Device (0x00)
> bRequest: GET DESCRIPTOR (6)
> Descriptor Index: 0x03
> bDescriptorType: 0x03
> Language Id: English (United States) (0x0409)
> wLength: 255
>
> 46 0.369255 2.38.0 host USB 64 GET DESCRIPTOR Response STRING[Malformed Packet]
>
> [...]
>
> Frame 46: 64 bytes on wire (512 bits), 64 bytes captured (512 bits) on interface 0
> USB URB
> [Source: 2.38.0]
> [Destination: host]
> URB id: 0xffff88021f62d480
> URB type: URB_COMPLETE ('C')
> URB transfer type: URB_CONTROL (0x02)
> Endpoint: 0x80, Direction: IN
> Device: 38
> URB bus id: 2
> Device setup request: not relevant ('-')
> Data: present (0)
> URB sec: 1484896277
> URB usec: 455031
> URB status: Protocol error (-EPROTO) (-71)
> URB length [bytes]: 0
> Data length [bytes]: 0
> [Request in: 45]
> [Time from request: 0.000151000 seconds]
> Unused Setup Header
> Interval: 0
> Start frame: 0
> Copy of Transfer Flags: 0x00000200
> Number of ISO descriptors: 0
> [Malformed Packet: USB]
> [Expert Info (Error/Malformed): Malformed Packet (Exception occurred)]
> [Malformed Packet (Exception occurred)]
> [Severity level: Error]
> [Group: Malformed]
>
> Signed-off-by: Lukáš Lalinský <lukas@oxygene.sk>
> ---
> drivers/usb/core/quirks.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
> index d2e50a2..24f9f98 100644
> --- a/drivers/usb/core/quirks.c
> +++ b/drivers/usb/core/quirks.c
> @@ -37,6 +37,10 @@ static const struct usb_device_id usb_quirk_list[] = {
> /* CBM - Flash disk */
> { USB_DEVICE(0x0204, 0x6025), .driver_info = USB_QUIRK_RESET_RESUME },
>
> + /* WORLDE easy key (easykey.25) MIDI controller */
> + { USB_DEVICE(0x0218, 0x0401), .driver_info =
> + USB_QUIRK_CONFIG_INTF_STRINGS },
That's odd, how does other operating systems handle this device?
thanks,
greg k-h
next prev parent reply other threads:[~2017-01-21 9:08 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-20 18:46 [PATCH] USB: Add quirk for WORLDE easykey.25 MIDI keyboard Lukáš Lalinský
2017-01-21 9:08 ` Greg Kroah-Hartman [this message]
2017-01-23 18:36 ` Lukáš Lalinský
2017-01-24 7:32 ` Oliver Neukum
2017-01-24 7:37 ` Lukáš Lalinský
2017-01-24 8:30 ` Oliver Neukum
2017-01-24 8:31 ` Lukáš Lalinský
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170121090834.GC27048@kroah.com \
--to=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=lukas@oxygene.sk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.