usb: dwc3: gadget performance insight

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

 

We’re trying to operate a USB gadget backed by the DWC3 core on an iMX8 processor, but we are seeing issues with performance.

 

As a comparison, utilizing iperf3 to benchmark, we are able to see ~230Mbit/s with an RNDIS gadget, and ~900Mbit/s with a hardware USB-to-Ethernet peripheral.

 

Looking at the output of perf, we are seeing that with all of the gadget drivers (RNDIS, UVC, ACM), there is significant time spent spinning in an IRQ context that does not occur with the hardware peripheral. This seems like it might be related to the interrupt handler as described here: https://docs.kernel.org/usb/dwc3.html.

 

  1. We have not yet acquired technical documentation regarding the DWC3 module.  Do you have a list of the DWC3 commands that have high latency (~1ms)?
  2. Do you believe that implementing a per endpoint IRQ framework will resolve the large disparity in performance?  If not, do you have any insight into what the root cause might be?

 

Thank you for your time and insight,

Jake Grossman

Attachment: smime.p7s
Description: S/MIME cryptographic signature


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux