Re: [PATCH] Add Etron XHCI quirk to avoid warning spam

From: Sarah Sharp
Date: Fri Jul 27 2012 - 02:14:30 EST


Hi Daniel,

I already have a patch in my queue for this. However, it keys off the
PCI_DEVICE_ID_ASROCK_P67 PCI device ID. Do you have another Etron
device with a different device ID that needs this quirk?

Sarah Sharp

On Fri, Jul 27, 2012 at 12:03:44PM +0800, Daniel J Blueman wrote:
> When various USB3 devices with Etron XHCI controllers, we see a bunch of
> warnings:
> xhci_hcd 0000:02:00.0: WARN Successful completion on short TX: needs
> XHCI_TRUST_TX_LENGTH quirk?
>
> Acknowledge the issue by adding the quirk.
>
> Signed-off-by: Daniel J Blueman <daniel@xxxxxxxxx>
> ---
> drivers/usb/host/xhci-pci.c | 11 +++++++----
> 1 file changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
> index 18b231b..715ad11 100644
> --- a/drivers/usb/host/xhci-pci.c
> +++ b/drivers/usb/host/xhci-pci.c
> @@ -95,10 +95,13 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
> xhci->limit_active_eps = 64;
> xhci->quirks |= XHCI_SW_BW_CHECKING;
> }
> - if (pdev->vendor == PCI_VENDOR_ID_ETRON &&
> - pdev->device == PCI_DEVICE_ID_ASROCK_P67) {
> - xhci->quirks |= XHCI_RESET_ON_RESUME;
> - xhci_dbg(xhci, "QUIRK: Resetting on resume\n");
> + if (pdev->vendor == PCI_VENDOR_ID_ETRON) {
> + xhci->quirks |= XHCI_TRUST_TX_LENGTH;
> +
> + if (pdev->device == PCI_DEVICE_ID_ASROCK_P67) {
> + xhci->quirks |= XHCI_RESET_ON_RESUME;
> + xhci_dbg(xhci, "QUIRK: Resetting on resume\n");
> + }
> }
> if (pdev->vendor == PCI_VENDOR_ID_VIA)
> xhci->quirks |= XHCI_RESET_ON_RESUME;
> --
> 1.7.9.5
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/