From: dgilbert@interlog.com (Douglas Gilbert)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] Atmel USB High speed device port, speed fix
Date: Sat, 14 Nov 2015 19:02:54 -0500 [thread overview]
Message-ID: <5647CBAE.4070908@interlog.com> (raw)
Following changes that appeared in lk 4.0.0, the gadget udc driver for
some ARM based Atmel SoCs (e.g. at91sam9x5 and sama5d3 families)
incorrectly deduced full-speed USB link speed even when the hardware
had negotiated a high-speed link. The fix is to make sure that the
UDPHS Interrupt Enable Register value does not mask the SPEED bit
in the Interrupt Status Register.
For a mass storage gadget this problem lead to failures when the host
had a USB 3 port with the xhci_hcd driver. If the host was a USB 2
port using the ehci_hcd driver then the mass storage gadget worked
(but probably at a lower speed than it should have).
Signed-of-by: Douglas Gilbert <dgilbert@interlog.com>
Cc: <stable@vger.kernel.org> #4.0+
-------------- next part --------------
A non-text attachment was scrubbed...
Name: atmel_udhs_int_mask.patch
Type: text/x-patch
Size: 553 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20151114/264e3f38/attachment.bin>
WARNING: multiple messages have this Message-ID (diff)
From: Douglas Gilbert <dgilbert@interlog.com>
To: linux-arm-kernel <linux-arm-kernel@lists.infradead.org>,
USB list <linux-usb@vger.kernel.org>,
Boris BREZILLON <boris.brezillon@free-electrons.com>,
"Ferre, Nicolas" <Nicolas.FERRE@atmel.com>,
Felipe Balbi <balbi@ti.com>
Cc: Alan Stern <stern@rowland.harvard.edu>, stable@vger.kernel.org
Subject: [PATCH] Atmel USB High speed device port, speed fix
Date: Sat, 14 Nov 2015 19:02:54 -0500 [thread overview]
Message-ID: <5647CBAE.4070908@interlog.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 721 bytes --]
Following changes that appeared in lk 4.0.0, the gadget udc driver for
some ARM based Atmel SoCs (e.g. at91sam9x5 and sama5d3 families)
incorrectly deduced full-speed USB link speed even when the hardware
had negotiated a high-speed link. The fix is to make sure that the
UDPHS Interrupt Enable Register value does not mask the SPEED bit
in the Interrupt Status Register.
For a mass storage gadget this problem lead to failures when the host
had a USB 3 port with the xhci_hcd driver. If the host was a USB 2
port using the ehci_hcd driver then the mass storage gadget worked
(but probably at a lower speed than it should have).
Signed-of-by: Douglas Gilbert <dgilbert@interlog.com>
Cc: <stable@vger.kernel.org> #4.0+
[-- Attachment #2: atmel_udhs_int_mask.patch --]
[-- Type: text/x-patch, Size: 553 bytes --]
diff --git a/drivers/usb/gadget/udc/atmel_usba_udc.c b/drivers/usb/gadget/udc/atmel_usba_udc.c
index f0f2b06..f92f5af 100644
--- a/drivers/usb/gadget/udc/atmel_usba_udc.c
+++ b/drivers/usb/gadget/udc/atmel_usba_udc.c
@@ -1633,7 +1633,7 @@ static irqreturn_t usba_udc_irq(int irq, void *devid)
spin_lock(&udc->lock);
int_enb = usba_int_enb_get(udc);
- status = usba_readl(udc, INT_STA) & int_enb;
+ status = usba_readl(udc, INT_STA) & (int_enb | USBA_HIGH_SPEED);
DBG(DBG_INT, "irq, status=%#08x\n", status);
if (status & USBA_DET_SUSPEND) {
next reply other threads:[~2015-11-15 0:02 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-15 0:02 Douglas Gilbert [this message]
2015-11-15 0:02 ` [PATCH] Atmel USB High speed device port, speed fix Douglas Gilbert
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=5647CBAE.4070908@interlog.com \
--to=dgilbert@interlog.com \
--cc=linux-arm-kernel@lists.infradead.org \
/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.