Disable streams on via XHCI (rhbz 1132666)

This commit is contained in:
Josh Boyer 2014-08-27 08:15:27 -04:00
parent e63d5588cb
commit c4bac1da92
2 changed files with 49 additions and 0 deletions

View File

@ -759,6 +759,9 @@ Patch25131: 0001-uas-Limit-qdepth-to-32-when-connected-over-usb-2.patch
#rhbz 1131551
Patch25132: nfs3_list_one_acl-check-get_acl-result-with-IS_ERR_O.patch
#rhbz 1132666
Patch26016: xhci-Disable-streams-on-Via-XHCI-with-device-id-0x34.patch
# END OF PATCH DEFINITIONS
%endif
@ -1476,6 +1479,9 @@ ApplyPatch 0001-uas-Limit-qdepth-to-32-when-connected-over-usb-2.patch
#rhbz 1131551
ApplyPatch nfs3_list_one_acl-check-get_acl-result-with-IS_ERR_O.patch
#rhbz 1132666
ApplyPatch xhci-Disable-streams-on-Via-XHCI-with-device-id-0x34.patch
# END OF PATCH APPLICATIONS
%endif
@ -2287,6 +2293,9 @@ fi
# ||----w |
# || ||
%changelog
* Wed Aug 27 2014 Josh Boyer <jwboyer@fedoraproject.org>
- Disable streams on via XHCI (rhbz 1132666)
* Fri Aug 22 2014 Josh Boyer <jwboyer@fedoraproject.org>
- Drop userns revert patch (rhbz 917708)

View File

@ -0,0 +1,40 @@
From 9010432d0e8e9bc93d28990d07790cc400f3879f Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede@redhat.com>
Date: Mon, 25 Aug 2014 12:21:56 +0200
Subject: [PATCH] xhci: Disable streams on Via XHCI with device-id 0x3432
This is a bit bigger hammer then I would like to use for this, but for now
it will have to make do. I'm working on getting my hands on one of these so
that I can try to get streams to work (with a quirk flag if necessary) and
then we can re-enable them.
For now this at least makes uas capable disk enclosures work again by forcing
fallback to the usb-storage driver.
https://bugzilla.kernel.org/show_bug.cgi?id=79511
Cc: stable@vger.kernel.org # 3.15
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
drivers/usb/host/xhci-pci.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
index 35d447780707..130345d401ac 100644
--- a/drivers/usb/host/xhci-pci.c
+++ b/drivers/usb/host/xhci-pci.c
@@ -149,6 +149,11 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
xhci->quirks |= XHCI_RESET_ON_RESUME;
if (pdev->vendor == PCI_VENDOR_ID_VIA)
xhci->quirks |= XHCI_RESET_ON_RESUME;
+
+ /* See https://bugzilla.kernel.org/show_bug.cgi?id=79511 */
+ if (pdev->vendor == PCI_VENDOR_ID_VIA &&
+ pdev->device == 0x3432)
+ xhci->quirks |= XHCI_BROKEN_STREAMS;
}
/* called during probe() after chip reset completes */
--
1.9.3