[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <1479394881-13863-1-git-send-email-rogerq@ti.com>
Date: Thu, 17 Nov 2016 17:01:18 +0200
From: Roger Quadros <rogerq@...com>
To: <balbi@...nel.org>, <mathias.nyman@...el.com>
CC: <linux-usb@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<rogerq@...com>
Subject: [PATCH 0/3] usb: xhci: Add broken port disable quirk
Hi,
Some XHCI controllers e.g. dwc3 based have a broken Port disable [1].
If the attached high-speed device is misbehaving, the USB stack typically
disables the port using the PED bit in PORTSC. For the controllers that
have broken port disable, the port fails to detect further attach/detach
events and so high-speed devices can no longer be enumerated on the
port. The workaround is to prevent port disable using PED on such
controllers.
We add a new BROKEN_PED quirk flag and 'quirk-broken-port-ped' device
property and prevent port disable using PED if we encounter the quirk flag.
[1] - AM572x Silicon Errata http://www.ti.com/lit/er/sprz429j/sprz429j.pdf
Section i896— USB xHCI Port Disable Feature Does Not Work
cheers,
-roger
Felipe Balbi (3):
usb: xhci: add quirk flag for broken PED bits
usb: host: xhci-plat: enable BROKEN_PED quirk if platform requested
usb: dwc3: host: pass quirk-broken-port-ped property for known broken
revisions
Documentation/devicetree/bindings/usb/usb-xhci.txt | 1 +
drivers/usb/dwc3/host.c | 21 ++++++++++++++++++---
drivers/usb/host/xhci-hub.c | 6 ++++++
drivers/usb/host/xhci-plat.c | 3 +++
drivers/usb/host/xhci.h | 3 +++
5 files changed, 31 insertions(+), 3 deletions(-)
--
2.7.4
Powered by blists - more mailing lists