From: Marek Vasut <marex@denx.de>
To: Janne Grunau <j@jannau.net>, u-boot@lists.denx.de
Cc: Thomas Glanzmann <thomas@glanzmann.de>
Subject: Re: [PATCH 1/1] usb: request only 8 bytes for USB_SPEED_FULL bMaxPacketSize0 discovery
Date: Mon, 26 Sep 2022 01:52:37 +0200 [thread overview]
Message-ID: <81755570-4f88-c3f0-c00b-076ce00d4615@denx.de> (raw)
In-Reply-To: <20220829063127.30353-1-j@jannau.net>
On 8/29/22 08:31, Janne Grunau wrote:
> Fixes probing of various keyboards with DWC3 as integrated into Apple
> silicon SoCs. The problem appears to be requesting more data than the
> devices's bMaxPacketSize0 of 8. Older Logitech unifying receivers
> (bcdDevice 12.03 or 12.10) are for eaxample affected.
>
> Signed-off-by: Janne Grunau <j@jannau.net>
> Tested-by: Thomas Glanzmann <thomas@glanzmann.de>
> ---
> common/usb.c | 8 +++++---
> 1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/common/usb.c b/common/usb.c
> index 6fcf1e8428e9..48a310e8599d 100644
> --- a/common/usb.c
> +++ b/common/usb.c
> @@ -993,10 +993,12 @@ static int usb_setup_descriptor(struct usb_device *dev, bool do_read)
> *
> * At least the DWC2 controller needs to be programmed with
> * the number of packets in addition to the number of bytes.
> - * A request for 64 bytes of data with the maxpacket guessed
> - * as 64 (above) yields a request for 1 packet.
> + * Requesting more than 8 bytes causes probing errors on the
> + * DWC3 controller integrated into Apple silicon SoCs with
> + * devices with bMaxPacketSize0 of 8. So limit the read request
> + * to the used size of 8 bytes.
> */
> - err = get_descriptor_len(dev, 64, 8);
> + err = get_descriptor_len(dev, 8, 8);
> if (err)
> return err;
> }
Sorry for the delay.
Can you be more specific about those logitech receivers ? I might have
one of those devices, and I have DWC3 in i.MX8MP and i.MX8MQ, as well as
ZynqMP, so I should be able to try and trigger the problem. Can you
share the reproducer test case for this problem ?
If the problem is specific to the Apple instance of the controller,
maybe we need some sort of quirk instead ?
Thanks
next prev parent reply other threads:[~2022-09-25 23:52 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-08-29 6:31 [PATCH 1/1] usb: request only 8 bytes for USB_SPEED_FULL bMaxPacketSize0 discovery Janne Grunau
2022-08-29 7:07 ` Mark Kettenis
2022-09-25 23:52 ` Marek Vasut [this message]
2022-09-26 5:42 ` Janne Grunau
2022-09-26 7:34 ` Thomas Glanzmann
2022-09-30 2:54 ` Marek Vasut
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=81755570-4f88-c3f0-c00b-076ce00d4615@denx.de \
--to=marex@denx.de \
--cc=j@jannau.net \
--cc=thomas@glanzmann.de \
--cc=u-boot@lists.denx.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).