Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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>
Acked-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Hans de Goede and committed by
Greg Kroah-Hartman
e21eba05 5654699f

+5
+5
drivers/usb/host/xhci-pci.c
··· 155 155 if (pdev->vendor == PCI_VENDOR_ID_VIA) 156 156 xhci->quirks |= XHCI_RESET_ON_RESUME; 157 157 158 + /* See https://bugzilla.kernel.org/show_bug.cgi?id=79511 */ 159 + if (pdev->vendor == PCI_VENDOR_ID_VIA && 160 + pdev->device == 0x3432) 161 + xhci->quirks |= XHCI_BROKEN_STREAMS; 162 + 158 163 if (xhci->quirks & XHCI_RESET_ON_RESUME) 159 164 xhci_dbg_trace(xhci, trace_xhci_dbg_quirks, 160 165 "QUIRK: Resetting on resume");