<?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>topic Re: PCIe xHCI support with IMX6 in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/PCIe-xHCI-support-with-IMX6/m-p/758752#M117966</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Jérôme&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;pcie performance figures and dma usage can be found on link&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/docs/DOC-95014"&gt;i.MX6Q PCIe EP/RC Validation System&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 24 Apr 2018 01:43:07 GMT</pubDate>
    <dc:creator>igorpadykov</dc:creator>
    <dc:date>2018-04-24T01:43:07Z</dc:date>
    <item>
      <title>PCIe xHCI support with IMX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/PCIe-xHCI-support-with-IMX6/m-p/758751#M117965</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 am using a Variscite module with the iMX6 Solo (VAR-SOM-SOLO) using their latest Yocto release.&lt;/P&gt;&lt;P&gt;&amp;gt;&amp;gt; Linux var-som-mx6 4.9.11-02300-ga1ac172-dirty #46 SMP PREEMPT Mon Apr 23 16:25:08 EDT 2018 armv7l armv7l armv7l GNU/Linux&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We want to capture from USB 3.0 cameras using gstreamer. I enabled xHCI module in kernel and I am able to see our USB 3.0 camera. We are also using a Renesas UPD720202 chipset as a PCIe-2-USB3.0 bridge. The device is well detected on our system and enumerates as a&amp;nbsp;gen2 device. Dump for PCIE:&lt;/P&gt;&lt;P&gt;[ 0.472685] OF: PCI: host bridge /soc/pcie@0x01000000 ranges:&lt;BR /&gt;[ 0.472699] OF: PCI: No bus range found for /soc/pcie@0x01000000, using [bus 00-ff]&lt;BR /&gt;[ 0.689975] imx6q-pcie 1ffc000.pcie: link up&lt;BR /&gt;[ 0.689988] imx6q-pcie 1ffc000.pcie: link up&lt;BR /&gt;[ 0.690000] imx6q-pcie 1ffc000.pcie: Link up, Gen2&lt;BR /&gt;[ 0.690203] imx6q-pcie 1ffc000.pcie: PCI host bridge to bus 0000:00&lt;BR /&gt;[ 0.720570] pcieport 0000:00:00.0: Signaling PME through PCIe PME interrupt&lt;BR /&gt;[ 0.720591] pcie_pme 0000:00:00.0:pcie001: service driver pcie_pme loaded&lt;BR /&gt;[ 0.720730] aer 0000:00:00.0:pcie002: service driver aer loaded&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When using the following pipeline rendering video into fakesink:&lt;/P&gt;&lt;P&gt;&amp;gt;&amp;gt; gst-launch-1.0 v4l2src ! video/x-raw,width=1920,height=1080,framerate=60/1 ! fpsdisplaysink video-sink=fakesink text-overlay=false -v&lt;/P&gt;&lt;P&gt;The result is that I can only get frames from the USB 3.0 camera at about 37 fps. This represents a bandwidth of about 150 MB/s. This result is far lower than PCIe gen2 speed at 5GB/s = 625 MB/s. When removing 20% efficiency for overhead, we should get about 500 MB/s theoretically. I am a bit concerned if I am really working on a gen2 link.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am wondering what is the actual PCIe bandwidth limit for the iMX6? I have seen all the stuff about putting an external clock if we want to use a gen2 link, but this only stands for PCIe compliance and we should be able to get PCIe gen2 working without this clock generator, right?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regarding memory bandwidth, I am using the /unit_tests/MMDC/mmdc2 and I am able to get memory utilization. Using the gstreamer pipeline, here is what I get:&amp;nbsp;&lt;/P&gt;&lt;P&gt;i.MX6DL detected.&lt;BR /&gt;MMDC SUM&lt;/P&gt;&lt;P&gt;MMDC new Profiling results:&lt;BR /&gt;***********************&lt;BR /&gt;Measure time: 548ms &lt;BR /&gt;Total cycles count: 217041312&lt;BR /&gt;Busy cycles count: 171558534&lt;BR /&gt;Read accesses count: 6400933&lt;BR /&gt;Write accesses count: 3639669&lt;BR /&gt;Read bytes count: 351126122&lt;BR /&gt;Write bytes count: 200725584&lt;BR /&gt;Avg. Read burst size: 54&lt;BR /&gt;Avg. Write burst size: 55&lt;BR /&gt;Read: 611.06 MB/s / Write: 349.32 MB/s Total: 960.38 MB/s &lt;BR /&gt;Utilization: 40%&lt;BR /&gt;Overall Bus Load: 79%&lt;BR /&gt;Bytes Access: 54&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It seems quite high. If I only monitor the ARM:&lt;/P&gt;&lt;P&gt;MMDC new Profiling results:&lt;BR /&gt;***********************&lt;BR /&gt;Measure time: 555ms &lt;BR /&gt;Total cycles count: 219713502&lt;BR /&gt;Busy cycles count: 172663185&lt;BR /&gt;Read accesses count: 4262270&lt;BR /&gt;Write accesses count: 2752165&lt;BR /&gt;Read bytes count: 213796440&lt;BR /&gt;Write bytes count: 87786328&lt;BR /&gt;Avg. Read burst size: 50&lt;BR /&gt;Avg. Write burst size: 31&lt;BR /&gt;Read: 367.37 MB/s / Write: 150.85 MB/s Total: 518.22 MB/s &lt;BR /&gt;Utilization: 21%&lt;BR /&gt;Overall Bus Load: 78%&lt;BR /&gt;Bytes Access: 42&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It seems like the CPU is handling the packets on&amp;nbsp;PCIe itself. Is there a way to use some kind of DMA access?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Tell me what you think about it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Jérôme&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 23 Apr 2018 21:34:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/PCIe-xHCI-support-with-IMX6/m-p/758751#M117965</guid>
      <dc:creator>jeromebolduc</dc:creator>
      <dc:date>2018-04-23T21:34:16Z</dc:date>
    </item>
    <item>
      <title>Re: PCIe xHCI support with IMX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/PCIe-xHCI-support-with-IMX6/m-p/758752#M117966</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Jérôme&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;pcie performance figures and dma usage can be found on link&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/docs/DOC-95014"&gt;i.MX6Q PCIe EP/RC Validation System&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 24 Apr 2018 01:43:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/PCIe-xHCI-support-with-IMX6/m-p/758752#M117966</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2018-04-24T01:43:07Z</dc:date>
    </item>
    <item>
      <title>Re: PCIe xHCI support with IMX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/PCIe-xHCI-support-with-IMX6/m-p/758753#M117967</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Igor,&lt;/P&gt;&lt;P&gt;Thanks for your response.&lt;/P&gt;&lt;P&gt;However, we do not want to use the EP/RC architecture since we are using a PCIe to xHCI bridge, i.e. xhdci_hcd driver. We want to read from USB cameras raw 1080p60 YUV422 data from them and input it to gstreamer on the same board.&lt;/P&gt;&lt;P&gt;We know the Renesas UPD720202 chipset is able to do it since we tried in on another hardware and we were able to stream 1080p60 without problems.&lt;/P&gt;&lt;P&gt;Do you think we might have a bandwidth limitation at the xHCI level?&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Jérôme&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 24 Apr 2018 13:13:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/PCIe-xHCI-support-with-IMX6/m-p/758753#M117967</guid>
      <dc:creator>jeromebolduc</dc:creator>
      <dc:date>2018-04-24T13:13:53Z</dc:date>
    </item>
    <item>
      <title>Re: PCIe xHCI support with IMX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/PCIe-xHCI-support-with-IMX6/m-p/758754#M117968</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I also tried to enable Freescale iMX6 PCIe host controller setting and set the :&lt;/P&gt;&lt;P&gt;- PCI Express EP mode in the IMX6 RC/EP interconnection system and the kernel won't boot.&lt;/P&gt;&lt;P&gt;I also tired to enable&amp;nbsp;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;Freescale iMX6 PCIe host controller setting and set the :&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;- PCI Express RC mode in the IMX6 RC/EP interconnection system and the kernel is loading. Using lspci -vv:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt; I see our Renesas chipset but I do not see our USB camera. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;dmesg | grep xhci&lt;BR /&gt;[ 2.428881] xhci_hcd 0000:01:00.0: xHCI Host Controller&lt;BR /&gt;[ 2.432918] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 1&lt;BR /&gt;[ 2.481920] xhci_hcd 0000:01:00.0: Host not halted after 16000 microseconds.&lt;BR /&gt;[ 2.487673] xhci_hcd 0000:01:00.0: can't setup: -110&lt;BR /&gt;[ 2.491388] xhci_hcd 0000:01:00.0: USB bus 1 deregistered&lt;BR /&gt;[ 2.495527] xhci_hcd 0000:01:00.0: init 0000:01:00.0 fail, -110&lt;BR /&gt;[ 2.500202] xhci_hcd: probe of 0000:01:00.0 failed with error -110&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;When I get lsusb dump, I do not see any USB 3.0 root hub devices. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;dmesg | grep usb &lt;BR /&gt;[ 0.349089] usbcore: registered new interface driver usbfs&lt;BR /&gt;[ 0.349148] usbcore: registered new interface driver hub&lt;BR /&gt;[ 0.349258] usbcore: registered new device driver usb&lt;BR /&gt;[ 0.349442] 2000000.aips-bus:usbphy_nop1 supply vcc not found, using dummy regulator&lt;BR /&gt;[ 0.349570] 2000000.aips-bus:usbphy_nop2 supply vcc not found, using dummy regulator&lt;BR /&gt;[ 2.505201] usbcore: registered new interface driver usb-storage&lt;BR /&gt;[ 2.510011] usbcore: registered new interface driver usb_ehset_test&lt;BR /&gt;[ 2.516237] 2184800.usbmisc supply vbus-wakeup not found, using dummy regulator&lt;BR /&gt;[ 2.949923] usb 1-1: new high-speed USB device number 2 using ci_hdrc&lt;BR /&gt;[ 3.699586] usbcore: registered new interface driver usbhid&lt;BR /&gt;[ 3.704171] usbhid: USB HID core driver&lt;BR /&gt;[ 3.909148] usb_otg_vbus: disabling&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;The only way to see our camera, we need to disable these settings in menuconfig.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Any ideas?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Regards,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Jérôme&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 24 Apr 2018 15:13:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/PCIe-xHCI-support-with-IMX6/m-p/758754#M117968</guid>
      <dc:creator>jeromebolduc</dc:creator>
      <dc:date>2018-04-24T15:13:59Z</dc:date>
    </item>
    <item>
      <title>Re: PCIe xHCI support with IMX6</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/PCIe-xHCI-support-with-IMX6/m-p/758755#M117969</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Jérôme&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;one can try dma usage from above link, as it shows x2 improvement.&lt;/P&gt;&lt;P&gt;May be useful memory profile tool&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/thread/443828"&gt;About MMDC Profiling Tool for i.MX6&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 25 Apr 2018 00:00:14 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/PCIe-xHCI-support-with-IMX6/m-p/758755#M117969</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2018-04-25T00:00:14Z</dc:date>
    </item>
  </channel>
</rss>

