<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>i.MX ProcessorsのトピックRe: USB Host Performance on i.MX6</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263506#M26955</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Is there any update on this issue ? Is there any project where the speed has been increased?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 26 Oct 2015 16:12:29 GMT</pubDate>
    <dc:creator>dabrain</dc:creator>
    <dc:date>2015-10-26T16:12:29Z</dc:date>
    <item>
      <title>USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263492#M26941</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello community,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;During the evaluation of the i.MX6 Quad for a product, we ran into USB performance problems.&lt;/P&gt;&lt;P&gt;We are using Freescale's kernel from BSP version 4.0.0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We have connected a USB thumb drive to the OTG port and tested read and write speeds.&lt;/P&gt;&lt;P&gt;The device is USB 2.0 High-Speed compliant, so the port is operating at 480Mbps max.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The real bandwidth we measured was:&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;writing of 30MB file takes 10sec&amp;nbsp; -&amp;gt; 3MB/s&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;reading of 30MB file takes 2.5sec -&amp;gt; 12MB/s&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;Important for our project is the reading speed. The test was a simply large-file copy.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;Why is the performance so bad? Do you know of any optimizations than can be applied to the Linux driver?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;We have conducted the tests on our custom i.MX6Q design as well as on the SabreSDP with i.MX6Q on it. The performance was identical.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;What do you suggest?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;Thanks!&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;Harald&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 03 Oct 2013 18:37:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263492#M26941</guid>
      <dc:creator>harald_krapfenb</dc:creator>
      <dc:date>2013-10-03T18:37:32Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263493#M26942</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Harald,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'd suggest to check first&amp;nbsp; if the thumb drive or the destination drive is not limiting the throughput, .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I use the dd command for these tests and use the null device as destination to eliminate any delays on the destination side.&lt;/P&gt;&lt;P&gt;Here's what I ran on the Vybrid board that I have on my desk:.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;# time dd if=/mnt/p1/Vybrid_Dual_Core_Operation of=/dev/null bs=512&lt;/P&gt;&lt;P&gt;97857+1 records in&lt;/P&gt;&lt;P&gt;97857+1 records out&lt;/P&gt;&lt;P&gt;real&amp;nbsp;&amp;nbsp;&amp;nbsp; 0m 2.37s&lt;/P&gt;&lt;P&gt;user&amp;nbsp;&amp;nbsp;&amp;nbsp; 0m 0.00s&lt;/P&gt;&lt;P&gt;sys&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0m 0.00s&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Vybrd is less performant&amp;nbsp; than i.MX6 and still I get a better read performance (21 MB/s)&lt;/P&gt;&lt;P&gt;50102818 bytes/ 2.37 sec = 21140429 bytes/sc (21 MB/sec).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So, I think you first&amp;nbsp; need to run some tests to find out where the bottleneck is.&lt;/P&gt;&lt;P&gt;Make sure you unmount / mount the device before each test, otherwise the read will be from the disk cache instead of the actual device.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Richard&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 03 Oct 2013 22:21:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263493#M26942</guid>
      <dc:creator>richard_stulens</dc:creator>
      <dc:date>2013-10-03T22:21:45Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263494#M26943</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Richard,&lt;/P&gt;&lt;P&gt;thanks for your answer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The USB thumb drive was not the bottleneck, on a PC we can read with 25MB/s from it.&lt;/P&gt;&lt;P&gt;However, we are using now a SATA docking station, which achieves 60MB/s reading performance on a PC.&lt;/P&gt;&lt;P&gt;We changed the test to using 'dd', and reading to /dev/null.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The i.MX6 only achieves 18MB/s reading performance with the same docking station.&lt;/P&gt;&lt;P&gt;How can this be increased? Or is this the maximum throughput the i.MX6 is able to handle due to its internal bus structure and the like?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Harald&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 04 Oct 2013 11:37:13 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263494#M26943</guid>
      <dc:creator>harald_krapfenb</dc:creator>
      <dc:date>2013-10-04T11:37:13Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263495#M26944</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm a bit confused now about the configuration that you use to test.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In your original setup yo had a USB thumb drive connected to the OTG port and copied a file from the USB thumb drive.&lt;/P&gt;&lt;P&gt;Now you mention a SATA docking station. Is that docking station connected to the SATA interface of the i.MX6?&lt;/P&gt;&lt;P&gt;If so, where is the USB driver that reads from the Thumb drive?&lt;/P&gt;&lt;P&gt;I'm assuming that the SATA dock has a USN controller and driver software built-in and that it encapsulates the SCSI commands on the SATA to USB MSC encapsulates commands.&lt;/P&gt;&lt;P&gt;In that case the i.MX6 USB driver is not involved.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Anyway, it is probably best to capture a USB protocol log so we can see what happens on the USB bus, That may tell us more about where to look, but if the SATA docks works the way I assume, than the issue is not in the USB driver.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Richard&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 09 Oct 2013 08:18:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263495#M26944</guid>
      <dc:creator>richard_stulens</dc:creator>
      <dc:date>2013-10-09T08:18:56Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263496#M26945</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Richard,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The SATA docking station is for the i.MX6 like a thumb drive, and it's connected to USB OTG of i.MX6.&lt;/P&gt;&lt;P&gt;By "USB driver" I meant the USB low-level driver for the USB Hardware Controller of the i.MX6. You can't tell me that it's not involved ;-)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do you know how I can capture such a USB protocol log?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Harald&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 09 Oct 2013 13:15:06 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263496#M26945</guid>
      <dc:creator>harald_krapfenb</dc:creator>
      <dc:date>2013-10-09T13:15:06Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263497#M26946</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok, now I understand. It is not the same thumb drive that you are working with, but a SATA HDD drive with USB to SATA converter.&lt;/P&gt;&lt;P&gt;18 MB/s is indeed very slow. I did performace tests on i.MX31 several years ago and achieved 30 - 35 MB/s. and i.MX31 is much slower than i.MX6.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I guess there must be some issue in the Linux driver that limits the performance. I'm niot a Linux engineer though, so i'll have to look for someone from our Linux support&amp;nbsp; to pick up this thread.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For the USB protocol og, you need a USB protocol analyzer. It sits between the host and the device and captures everything that happens on the USB bus.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Richard&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 09 Oct 2013 14:01:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263497#M26946</guid>
      <dc:creator>richard_stulens</dc:creator>
      <dc:date>2013-10-09T14:01:39Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263498#M26947</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;That sounds good with respect to fixability...&lt;/P&gt;&lt;P&gt;I'm not sure if we have a USB protocol analyzer here, but you should be able to gather these numbers by yourself, using the SabreSDP reference board.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Awaiting your Linux expert :-)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-Harald&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 09 Oct 2013 15:14:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263498#M26947</guid>
      <dc:creator>harald_krapfenb</dc:creator>
      <dc:date>2013-10-09T15:14:08Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263499#M26948</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Harald,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is a note on what transfer rate to expect on High-speed USB .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The 60 MB transfer rate mentioned earlier must have been over a SATA connection to the PC because it is impossible to have a transfer rate of 60 MB over HS USB, The absolute (mathematical) maximum for bulk of HS USB is 53 MB/s and that is when packets are sent back-to-back.&lt;/P&gt;&lt;P&gt;With Mass Storage Class overhead (sending commands, receiving status, driver decision time etc.) the maximum will be closer to ~40 MB/s average.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Richard&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Oct 2013 09:12:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263499#M26948</guid>
      <dc:creator>richard_stulens</dc:creator>
      <dc:date>2013-10-10T09:12:08Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263500#M26949</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Actually it was the same SATA docking station connected via _USB_ to a Linux PC.&lt;/P&gt;&lt;P&gt;I suspect that our calculation of the transfer rate contains some mistake, but the relative difference between the i.MX6 and the PC should be correct, since it was the same test conducted.&lt;/P&gt;&lt;P&gt;I will check that with my colleague, but please stick to that issue.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Harald&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Oct 2013 09:51:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263500#M26949</guid>
      <dc:creator>harald_krapfenb</dc:creator>
      <dc:date>2013-10-10T09:51:19Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263501#M26950</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Harald,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The file may have been in the disk cache on the Linux PC from a previous read.  You will get much better results when you read the file a second time.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When measuring, please unmount the drive (or disconnect) to flush the disk cache. Then measure the first read of the file.&lt;/P&gt;&lt;P&gt;Also, make sure you are not using USB3.0 on the PC as that will obviously be much faster.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Richard&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Oct 2013 11:07:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263501#M26950</guid>
      <dc:creator>richard_stulens</dc:creator>
      <dc:date>2013-10-10T11:07:56Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263502#M26951</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;Hi Richard,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;I have measured reading bandwidth with the SabreSD i.MX6Q board. The test was now as you suggested.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;Bandwidth for reading: 25MiB.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;I have measured both 4.0.0 and 4.1.0 BSP releases, the latter is marginally faster.&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;Since the calculated bandwidth required for our application is 18 MiB, that should be sufficient - BUT:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;Our device is a camera, which uses Bulk transfers, and the application uses libusb to get USB data.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;Maybe that introduces some overhead.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;If we approach 13MiB/s transfer rate from the camera, we are stuck - it won't go any higher.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;I don't know where this limit comes from, but naively, I would think that USB on the i.MX6Q is simply too slow.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;Compared to a Linux PC, we don't see this issue. However, we can simulate it there, by adding a proper delay into the loop.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;What can you do? How can you help us?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;Thank you!&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Arial','sans-serif'; color: #1f497d;"&gt;Harald&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 15 Oct 2013 12:45:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263502#M26951</guid>
      <dc:creator>harald_krapfenb</dc:creator>
      <dc:date>2013-10-15T12:45:05Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263503#M26952</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Seems that there is not much that can be done about this restriction.&lt;/P&gt;&lt;P&gt;I had the chance to test an early 3.10 kernel on SabreSD, and it was not faster either.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-Harald&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 22 Oct 2013 05:36:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263503#M26952</guid>
      <dc:creator>harald_krapfenb</dc:creator>
      <dc:date>2013-10-22T05:36:16Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263504#M26953</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would be interested for any update on this subject. Today i'm using yocto dora's branch on imx6. My kernel is a 3.0.35 and&amp;nbsp; with hdparms -t .dev/sdb with a USB 2.0 dongle, the trasnfer rate is limited to 20MB/s. On a PC it is more like 25MB/s.&lt;/P&gt;&lt;P&gt;Is there anyway to improve this performance ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 14 Nov 2014 13:26:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263504#M26953</guid>
      <dc:creator>dabrain</dc:creator>
      <dc:date>2014-11-14T13:26:58Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263505#M26954</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;P&gt;Hi &lt;SPAN class="SpellE"&gt;Harald&lt;/SPAN&gt;,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Somehow I did not notice this message when you sent it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now, there is not really anything I can do to help improve it other than sharing with you that the hardware should be capable of running at almost theoretical maximum.&lt;/P&gt;&lt;P&gt;The controller uses linked lists of transfer descriptors stored in memory to execute transfers. I've done a hardware-only test, long time ago on i.MX35, with a very small stand-alone program that simply kept feeding the USB controller. I could transfer over 40 MB/sec. There is no reason to assume that i.MX6Q cannot do the same.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There is of course overhead from protocols, like handshakes in BULK transport, class protocol overhead like commands and status transfer interleaving the data transfer, and then there is the OS overhead, which can be significant in OS's that have to operate on all kinds of different hardware.&lt;/P&gt;&lt;P&gt;One thing that can improve performance without much optimizing work is to increase the transfer size of the commands. For example, requesting 1000 sectors form a HDD in 1 command is much more efficient than 10 requests of 100 blocks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Then there is also the competition for resources like memory access bus bandwidth etc. To achieve high USB bandwidth, USB needs to get a little over 60 MB memory &amp;amp; bus bandwidth on average. Peripherals like LCD or hardware accelerators take bus bandwidth away from USB. The USB controller must also get access to the memory before &lt;SPAN class="GramE"&gt;it's&lt;/SPAN&gt; FIFO runs empty as a FIFO underrun will result in an aborted transfer which must be repeated. The USB controller can be tuned to load more data in the FIFO before starting the transmission, reducing the risk for underrun.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've definitely seen better performance than 25 MB/sec, but that was not with Linux.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Richard&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 14 Nov 2014 14:48:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263505#M26954</guid>
      <dc:creator>richard_stulens</dc:creator>
      <dc:date>2014-11-14T14:48:42Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263506#M26955</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Is there any update on this issue ? Is there any project where the speed has been increased?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 26 Oct 2015 16:12:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263506#M26955</guid>
      <dc:creator>dabrain</dc:creator>
      <dc:date>2015-10-26T16:12:29Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263507#M26956</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm also interested in news about improved USB performance in Linux.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I need as good performance as possible using usbnet. I'm currently testing in Linux 4.1.28, and CPU load is too high.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 30 Jul 2016 08:30:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263507#M26956</guid>
      <dc:creator>xabiermarquiegu</dc:creator>
      <dc:date>2016-07-30T08:30:16Z</dc:date>
    </item>
    <item>
      <title>Re: USB Host Performance on i.MX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263508#M26957</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'am using 3.10.53 android kernel, using otg for data transfer, currently the data transfer speed is about 12M bytes / s.&lt;/P&gt;&lt;P&gt;but we need more faster speed, any suggestions?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 20 May 2018 10:07:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/USB-Host-Performance-on-i-MX6/m-p/263508#M26957</guid>
      <dc:creator>baodongchen</dc:creator>
      <dc:date>2018-05-20T10:07:18Z</dc:date>
    </item>
  </channel>
</rss>

