linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] fix: add XHCI_SPURIOUS_SUCCESS to ASM1042 despite being a V0.96 controller
@ 2022-09-25 17:22 Jens Glathe
  2022-09-26  8:37 ` Greg KH
  2022-09-26 11:31 ` Mathias Nyman
  0 siblings, 2 replies; 5+ messages in thread
From: Jens Glathe @ 2022-09-25 17:22 UTC (permalink / raw)
  To: mathias.nyman; +Cc: gregkh, linux-usb, linux-kernel, Jens Glathe

only if it reports as a V0.96 XHCI controller. Appears to fix the errors
"xhci_hcd <address>; ERROR Transfer event TRB DMA ptr not part of
current TD ep_index 2 comp_code 13" that appear spuriously (or pretty
often) when using a r8152 USB3 ethernet adapter with integrated hub.

Signed-off-by: Jens Glathe <jens.glathe@oldschoolsolutions.biz>
---
 drivers/usb/host/xhci-pci.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
index dce6c0ec8d34..d1b8e7148dd1 100644
--- a/drivers/usb/host/xhci-pci.c
+++ b/drivers/usb/host/xhci-pci.c
@@ -306,8 +306,12 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
 	}
 
 	if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
-		pdev->device == PCI_DEVICE_ID_ASMEDIA_1042_XHCI)
+		pdev->device == PCI_DEVICE_ID_ASMEDIA_1042_XHCI) {
+		/* try to tame the ASMedia 1042 controller which is 0.96 */
+		if (xhci->hci_version == 0x96)
+			xhci->quirks |= XHCI_SPURIOUS_SUCCESS;
 		xhci->quirks |= XHCI_BROKEN_STREAMS;
+	}
 	if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
 		pdev->device == PCI_DEVICE_ID_ASMEDIA_1042A_XHCI) {
 		xhci->quirks |= XHCI_TRUST_TX_LENGTH;
-- 
2.25.1

---
Hi there, a "try again" with git send-email and the corrected patch. Hope this works now.

with best regards

Jens Glathe

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] fix: add XHCI_SPURIOUS_SUCCESS to ASM1042 despite being a V0.96 controller
  2022-09-25 17:22 [PATCH] fix: add XHCI_SPURIOUS_SUCCESS to ASM1042 despite being a V0.96 controller Jens Glathe
@ 2022-09-26  8:37 ` Greg KH
  2022-09-26 11:31 ` Mathias Nyman
  1 sibling, 0 replies; 5+ messages in thread
From: Greg KH @ 2022-09-26  8:37 UTC (permalink / raw)
  To: Jens Glathe; +Cc: mathias.nyman, linux-usb, linux-kernel

On Sun, Sep 25, 2022 at 07:22:37PM +0200, Jens Glathe wrote:
> only if it reports as a V0.96 XHCI controller. Appears to fix the errors
> "xhci_hcd <address>; ERROR Transfer event TRB DMA ptr not part of
> current TD ep_index 2 comp_code 13" that appear spuriously (or pretty
> often) when using a r8152 USB3 ethernet adapter with integrated hub.
> 
> Signed-off-by: Jens Glathe <jens.glathe@oldschoolsolutions.biz>
> ---
>  drivers/usb/host/xhci-pci.c | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
> index dce6c0ec8d34..d1b8e7148dd1 100644
> --- a/drivers/usb/host/xhci-pci.c
> +++ b/drivers/usb/host/xhci-pci.c
> @@ -306,8 +306,12 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>  	}
>  
>  	if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
> -		pdev->device == PCI_DEVICE_ID_ASMEDIA_1042_XHCI)
> +		pdev->device == PCI_DEVICE_ID_ASMEDIA_1042_XHCI) {
> +		/* try to tame the ASMedia 1042 controller which is 0.96 */
> +		if (xhci->hci_version == 0x96)
> +			xhci->quirks |= XHCI_SPURIOUS_SUCCESS;
>  		xhci->quirks |= XHCI_BROKEN_STREAMS;
> +	}
>  	if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
>  		pdev->device == PCI_DEVICE_ID_ASMEDIA_1042A_XHCI) {
>  		xhci->quirks |= XHCI_TRUST_TX_LENGTH;
> -- 
> 2.25.1
> 
> ---
> Hi there, a "try again" with git send-email and the corrected patch. Hope this works now.
> 
> with best regards
> 
> Jens Glathe

Hi,

This is the friendly patch-bot of Greg Kroah-Hartman.  You have sent him
a patch that has triggered this response.  He used to manually respond
to these common problems, but in order to save his sanity (he kept
writing the same thing over and over, yet to different people), I was
created.  Hopefully you will not take offence and will fix the problem
in your patch and resubmit it so that it can be accepted into the Linux
kernel tree.

You are receiving this message because of the following common error(s)
as indicated below:

- You did not write a descriptive Subject: for the patch, allowing Greg,
  and everyone else, to know what this patch is all about.  Please read
  the section entitled "The canonical patch format" in the kernel file,
  Documentation/SubmittingPatches for what a proper Subject: line should
  look like.

- This looks like a new version of a previously submitted patch, but you
  did not list below the --- line any changes from the previous version.
  Please read the section entitled "The canonical patch format" in the
  kernel file, Documentation/SubmittingPatches for what needs to be done
  here to properly describe this.

If you wish to discuss this problem further, or you have questions about
how to resolve this issue, please feel free to respond to this email and
Greg will reply once he has dug out from the pending patches received
from other developers.

thanks,

greg k-h's patch email bot

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] fix: add XHCI_SPURIOUS_SUCCESS to ASM1042 despite being a V0.96 controller
  2022-09-25 17:22 [PATCH] fix: add XHCI_SPURIOUS_SUCCESS to ASM1042 despite being a V0.96 controller Jens Glathe
  2022-09-26  8:37 ` Greg KH
@ 2022-09-26 11:31 ` Mathias Nyman
  2022-09-26 12:25   ` Re[2]: " Jens Glathe
  2022-09-26 15:18   ` Alan Stern
  1 sibling, 2 replies; 5+ messages in thread
From: Mathias Nyman @ 2022-09-26 11:31 UTC (permalink / raw)
  To: Jens Glathe, mathias.nyman; +Cc: gregkh, linux-usb, linux-kernel

Hi

Thanks for the patch, some small changes still needed:

Include subsystem in subject line, something like
usb: xhci: Add XHCI_SPURIOUS...

On 25.9.2022 20.22, Jens Glathe wrote:
> only if it reports as a V0.96 XHCI controller. Appears to fix the errors
> "xhci_hcd <address>; ERROR Transfer event TRB DMA ptr not part of
> current TD ep_index 2 comp_code 13" that appear spuriously (or pretty
> often) when using a r8152 USB3 ethernet adapter with integrated hub.
> 
> Signed-off-by: Jens Glathe <jens.glathe@oldschoolsolutions.biz>
> ---
>   drivers/usb/host/xhci-pci.c | 6 +++++-
>   1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
> index dce6c0ec8d34..d1b8e7148dd1 100644
> --- a/drivers/usb/host/xhci-pci.c
> +++ b/drivers/usb/host/xhci-pci.c
> @@ -306,8 +306,12 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>   	}
>   
>   	if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
> -		pdev->device == PCI_DEVICE_ID_ASMEDIA_1042_XHCI)
> +		pdev->device == PCI_DEVICE_ID_ASMEDIA_1042_XHCI) {
> +		/* try to tame the ASMedia 1042 controller which is 0.96 */
> +		if (xhci->hci_version == 0x96)

Do we need this 0x96 check? It's anyway set for 1.0 and newer controllers

> +			xhci->quirks |= XHCI_SPURIOUS_SUCCESS;

This reminds me that I should get rid of this quirk.

If we get a short transfers event for a TRB mid TD, then xhci hosts version 1.0 and later
should send a second event for the last TRB in the TD

so this is default behavior for modern xHCI, not a spurious event.

But your patch is anyways needed for stable kernels.

Thanks
-Mathias

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re[2]: [PATCH] fix: add XHCI_SPURIOUS_SUCCESS to ASM1042 despite being a V0.96 controller
  2022-09-26 11:31 ` Mathias Nyman
@ 2022-09-26 12:25   ` Jens Glathe
  2022-09-26 15:18   ` Alan Stern
  1 sibling, 0 replies; 5+ messages in thread
From: Jens Glathe @ 2022-09-26 12:25 UTC (permalink / raw)
  To: Mathias Nyman, mathias.nyman; +Cc: gregkh, linux-usb, linux-kernel

Hi there,

thank you for the hint, I'll amend the commit text. For practical 
purposes you won't need to check for ASM1042/0x96, however according to 
documentation it *should* be a V1.0 XHCI controller. So, the defensive 
approach would be to check for it (so its a quirk only in this case), 
the outcome without checking would be the same. I can take it out, 
adding the quirk for ASM1042 would be sufficient.

with best regards

Jens

------ Originalnachricht ------
Von "Mathias Nyman" <mathias.nyman@linux.intel.com>
An "Jens Glathe" <jens.glathe@oldschoolsolutions.biz>; 
mathias.nyman@intel.com
Cc gregkh@linuxfoundation.org; linux-usb@vger.kernel.org; 
linux-kernel@vger.kernel.org
Datum 26.09.2022 13:31:42
Betreff Re: [PATCH] fix: add XHCI_SPURIOUS_SUCCESS to ASM1042 despite 
being a V0.96 controller

>Hi
>
>Thanks for the patch, some small changes still needed:
>
>Include subsystem in subject line, something like
>usb: xhci: Add XHCI_SPURIOUS...
>
>On 25.9.2022 20.22, Jens Glathe wrote:
>>only if it reports as a V0.96 XHCI controller. Appears to fix the errors
>>"xhci_hcd <address>; ERROR Transfer event TRB DMA ptr not part of
>>current TD ep_index 2 comp_code 13" that appear spuriously (or pretty
>>often) when using a r8152 USB3 ethernet adapter with integrated hub.
>>
>>Signed-off-by: Jens Glathe <jens.glathe@oldschoolsolutions.biz>
>>---
>>   drivers/usb/host/xhci-pci.c | 6 +++++-
>>   1 file changed, 5 insertions(+), 1 deletion(-)
>>
>>diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
>>index dce6c0ec8d34..d1b8e7148dd1 100644
>>--- a/drivers/usb/host/xhci-pci.c
>>+++ b/drivers/usb/host/xhci-pci.c
>>@@ -306,8 +306,12 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
>>   	}
>>     	if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
>>-		pdev->device == PCI_DEVICE_ID_ASMEDIA_1042_XHCI)
>>+		pdev->device == PCI_DEVICE_ID_ASMEDIA_1042_XHCI) {
>>+		/* try to tame the ASMedia 1042 controller which is 0.96 */
>>+		if (xhci->hci_version == 0x96)
>
>Do we need this 0x96 check? It's anyway set for 1.0 and newer controllers
>
>>+			xhci->quirks |= XHCI_SPURIOUS_SUCCESS;
>
>This reminds me that I should get rid of this quirk.
>
>If we get a short transfers event for a TRB mid TD, then xhci hosts version 1.0 and later
>should send a second event for the last TRB in the TD
>
>so this is default behavior for modern xHCI, not a spurious event.
>
>But your patch is anyways needed for stable kernels.
>
>Thanks
>-Mathias

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] fix: add XHCI_SPURIOUS_SUCCESS to ASM1042 despite being a V0.96 controller
  2022-09-26 11:31 ` Mathias Nyman
  2022-09-26 12:25   ` Re[2]: " Jens Glathe
@ 2022-09-26 15:18   ` Alan Stern
  1 sibling, 0 replies; 5+ messages in thread
From: Alan Stern @ 2022-09-26 15:18 UTC (permalink / raw)
  To: Mathias Nyman; +Cc: Jens Glathe, mathias.nyman, gregkh, linux-usb, linux-kernel

On Mon, Sep 26, 2022 at 02:31:42PM +0300, Mathias Nyman wrote:
> Hi
> 
> Thanks for the patch, some small changes still needed:
> 
> Include subsystem in subject line, something like
> usb: xhci: Add XHCI_SPURIOUS...

And don't forget to include a revision number inside the []'s on the 
Subject line for all revised submissions.

> On 25.9.2022 20.22, Jens Glathe wrote:
> > only if it reports as a V0.96 XHCI controller. Appears to fix the errors

It would be nice if the first sentence (not to mention the later ones) 
of the patch description actually was a complete sentence.  I realize 
that lots of commits don't bother to do this, but IMNSHO they ought to.

> > "xhci_hcd <address>; ERROR Transfer event TRB DMA ptr not part of
> > current TD ep_index 2 comp_code 13" that appear spuriously (or pretty
> > often) when using a r8152 USB3 ethernet adapter with integrated hub.
> > 
> > Signed-off-by: Jens Glathe <jens.glathe@oldschoolsolutions.biz>
> > ---

Likewise, for resubmissions don't forget to include a quick description 
here (just below the "---" line) of how the resubmission differs from 
the earlier versions.

Alan Stern

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-09-26 16:30 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-25 17:22 [PATCH] fix: add XHCI_SPURIOUS_SUCCESS to ASM1042 despite being a V0.96 controller Jens Glathe
2022-09-26  8:37 ` Greg KH
2022-09-26 11:31 ` Mathias Nyman
2022-09-26 12:25   ` Re[2]: " Jens Glathe
2022-09-26 15:18   ` Alan Stern

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).