<?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 PCIe does not work in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/PCIe-does-not-work/m-p/311581#M40741</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;We currently try to setup a PCIe communication between an Artix7 and the i.mx6q&lt;/P&gt;&lt;P&gt;The CPU is placed on a Q7 module from MSC that is connected to an eval board with a PCIe 1.0 switch. The FPGA is placed on the PCIe slot of the eval board.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Linux kernel is 3.0.35.Q7_IMX6-13.12.01.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Due to the BAR length limitation of the i.MX6 we decided to add the LogiCore AXI CDMA to the FPGA and let it write to a preallocated memory space within the i.MX6 DDR.&lt;/P&gt;&lt;P&gt;We tested the communication and software with an x86 system (Ubuntu 12.04 with kernel 3.2.0-60) first and then tried to port it 1:1 to the i.MX6 system.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But it seems the communication does not work the same way. Writing to the FPGA configuration registers mapped through BAR0 is working. But if we wanted to write using the CDMA to the DDR of the i.MX6 the data seems to be lost somewhere.&lt;/P&gt;&lt;P&gt;The FPGA initiates the transfer as we can see in chip scope, but the buffer on i.MX6 side is unchanged. Additionally the MSI capability seems to be interpreted differently on the i.MX6 and we need to use them in our final setup.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PC Log of lspci hex dump and config dump&lt;/P&gt;&lt;BLOCKQUOTE&gt;
&lt;P&gt;02:00.0 Memory controller: Xilinx Corporation Device 7042&lt;/P&gt;
&lt;P&gt;00: ee 10 42 70 07 04 10 00 00 00 80 05 10 00 00 00&lt;/P&gt;
&lt;P&gt;10: 00 00 cf df 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;20: 00 00 00 00 00 00 00 00 00 00 00 00 ee 10 07 00&lt;/P&gt;
&lt;P&gt;30: 00 00 00 00 40 00 00 00 00 00 00 00 ff 00 00 00&lt;/P&gt;
&lt;P&gt;40: 01 48 23 00 08 00 00 00 05 60 85 00 0c 30 e0 fe&lt;/P&gt;
&lt;P&gt;50: 00 00 00 00 b9 41 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;60: 10 00 02 00 29 80 28 00 16 29 00 00 12 f4 03 00&lt;/P&gt;
&lt;P&gt;70: 40 00 11 10 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;90: 02 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;02:00.0 Memory controller: Xilinx Corporation Device 7042&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Subsystem: Xilinx Corporation Device 0007&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast &amp;gt;TAbort- &amp;lt;TAbort- &amp;lt;MAbort- &amp;gt;SERR- &amp;lt;PERR- INTx-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Latency: 0, Cache Line Size: 64 bytes&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Interrupt: pin ? routed to IRQ 47&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Region 0: Memory at dfcf0000 (32-bit, non-prefetchable) [size=64K]&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Capabilities: [40] Power Management version 3&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Capabilities: [48] MSI: Enable+ Count=1/4 Maskable- 64bit+&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Address: 00000000fee0300c&amp;nbsp; Data: 41b9&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Capabilities: [60] Express (v2) Endpoint, MSI 00&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevCap: MaxPayload 256 bytes, PhantFunc 1, Latency L0s &amp;lt;64ns, L1 &amp;lt;1us&lt;/P&gt;
&lt;P&gt;&amp;nbsp; ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevCtl: Report errors: Correctable- Non-Fatal+ Fatal+ Unsupported-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+&lt;/P&gt;
&lt;P&gt;&amp;nbsp; MaxPayload 128 bytes, MaxReadReq 512 bytes&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkCap: Port #0, Speed 5GT/s, Width x1, ASPM L0s, Latency L0 unlimited, L1 unlimited&lt;/P&gt;
&lt;P&gt;&amp;nbsp; ClockPM- Surprise- LLActRep- BwNot-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+&lt;/P&gt;
&lt;P&gt;&amp;nbsp; ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevCap2: Completion Timeout: Not Supported, TimeoutDis-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-, Selectable De-emphasis: -6dB&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Compliance De-emphasis: -6dB&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkSta2: Current De-emphasis Level: -3.5dB&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Capabilities: [100 v1] Device Serial Number 00-00-00-00-00-00-00-00&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Kernel driver in use: pciDriver&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;


&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i.MX6 dump:&lt;/P&gt;&lt;BLOCKQUOTE&gt;
&lt;P&gt;03:00.0 Memory controller: Xilinx Corporation Device 7042&lt;/P&gt;
&lt;P&gt;00: ee 10 42 70 46 05 10 00 00 00 80 05 08 00 00 00&lt;/P&gt;
&lt;P&gt;10: 00 00 10 01 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;20: 00 00 00 00 00 00 00 00 00 00 00 00 ee 10 07 00&lt;/P&gt;
&lt;P&gt;30: 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;40: 01 48 23 00 08 00 00 00 05 60 85 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;60: 10 00 02 00 29 80 64 00 10 28 00 00 12 f4 03 00&lt;/P&gt;
&lt;P&gt;70: 00 00 11 10 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;90: 02 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;03:00.0 Memory controller: Xilinx Corporation Device 7042&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Subsystem: Xilinx Corporation Device 0007&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- SERR+ FastB2B- DisINTx+&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast &amp;gt;TAbort- &amp;lt;TAbort- &amp;lt;MAbort- &amp;gt;SERR- &amp;lt;PERR- INTx-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Latency: 0, Cache Line Size: 32 bytes&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Interrupt: pin ? routed to IRQ 502&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Region 0: Memory at 01100000 (32-bit, non-prefetchable) [size=64K]&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Capabilities: [40] Power Management version 3&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Capabilities: [48] MSI: Enable+ Count=1/4 Maskable- 64bit+&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Address: 0000000000000000&amp;nbsp; Data: 0000&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Capabilities: [60] Express (v2) Endpoint, MSI 00&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevCap: MaxPayload 256 bytes, PhantFunc 1, Latency L0s &amp;lt;64ns, L1 &amp;lt;1us&lt;/P&gt;
&lt;P&gt;&amp;nbsp; ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+&lt;/P&gt;
&lt;P&gt;&amp;nbsp; MaxPayload 128 bytes, MaxReadReq 512 bytes&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkCap: Port #0, Speed 5GT/s, Width x1, ASPM L0s, Latency L0 unlimited, L1 unlimited&lt;/P&gt;
&lt;P&gt;&amp;nbsp; ClockPM- Surprise- LLActRep- BwNot-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevCap2: Completion Timeout: Not Supported, TimeoutDis-, LTR-, OBFF Not Supported&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Compliance De-emphasis: -6dB&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete-, EqualizationPhase1-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Capabilities: [100 v1] Device Serial Number 00-00-00-00-00-00-00-00&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Kernel driver in use: pciDriver&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Kernel modules: pciDriver&lt;/P&gt;


&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there anything obvious we have to care about to get PCIe busmaster communication running?&lt;/P&gt;&lt;P&gt;Maybe something we have to check regarding the iATU settings because of the PCIe switch on our evaluation board?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 07 Apr 2014 08:35:40 GMT</pubDate>
    <dc:creator>volki</dc:creator>
    <dc:date>2014-04-07T08:35:40Z</dc:date>
    <item>
      <title>PCIe does not work</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/PCIe-does-not-work/m-p/311581#M40741</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;We currently try to setup a PCIe communication between an Artix7 and the i.mx6q&lt;/P&gt;&lt;P&gt;The CPU is placed on a Q7 module from MSC that is connected to an eval board with a PCIe 1.0 switch. The FPGA is placed on the PCIe slot of the eval board.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Linux kernel is 3.0.35.Q7_IMX6-13.12.01.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Due to the BAR length limitation of the i.MX6 we decided to add the LogiCore AXI CDMA to the FPGA and let it write to a preallocated memory space within the i.MX6 DDR.&lt;/P&gt;&lt;P&gt;We tested the communication and software with an x86 system (Ubuntu 12.04 with kernel 3.2.0-60) first and then tried to port it 1:1 to the i.MX6 system.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But it seems the communication does not work the same way. Writing to the FPGA configuration registers mapped through BAR0 is working. But if we wanted to write using the CDMA to the DDR of the i.MX6 the data seems to be lost somewhere.&lt;/P&gt;&lt;P&gt;The FPGA initiates the transfer as we can see in chip scope, but the buffer on i.MX6 side is unchanged. Additionally the MSI capability seems to be interpreted differently on the i.MX6 and we need to use them in our final setup.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PC Log of lspci hex dump and config dump&lt;/P&gt;&lt;BLOCKQUOTE&gt;
&lt;P&gt;02:00.0 Memory controller: Xilinx Corporation Device 7042&lt;/P&gt;
&lt;P&gt;00: ee 10 42 70 07 04 10 00 00 00 80 05 10 00 00 00&lt;/P&gt;
&lt;P&gt;10: 00 00 cf df 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;20: 00 00 00 00 00 00 00 00 00 00 00 00 ee 10 07 00&lt;/P&gt;
&lt;P&gt;30: 00 00 00 00 40 00 00 00 00 00 00 00 ff 00 00 00&lt;/P&gt;
&lt;P&gt;40: 01 48 23 00 08 00 00 00 05 60 85 00 0c 30 e0 fe&lt;/P&gt;
&lt;P&gt;50: 00 00 00 00 b9 41 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;60: 10 00 02 00 29 80 28 00 16 29 00 00 12 f4 03 00&lt;/P&gt;
&lt;P&gt;70: 40 00 11 10 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;90: 02 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;02:00.0 Memory controller: Xilinx Corporation Device 7042&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Subsystem: Xilinx Corporation Device 0007&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast &amp;gt;TAbort- &amp;lt;TAbort- &amp;lt;MAbort- &amp;gt;SERR- &amp;lt;PERR- INTx-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Latency: 0, Cache Line Size: 64 bytes&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Interrupt: pin ? routed to IRQ 47&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Region 0: Memory at dfcf0000 (32-bit, non-prefetchable) [size=64K]&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Capabilities: [40] Power Management version 3&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Capabilities: [48] MSI: Enable+ Count=1/4 Maskable- 64bit+&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Address: 00000000fee0300c&amp;nbsp; Data: 41b9&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Capabilities: [60] Express (v2) Endpoint, MSI 00&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevCap: MaxPayload 256 bytes, PhantFunc 1, Latency L0s &amp;lt;64ns, L1 &amp;lt;1us&lt;/P&gt;
&lt;P&gt;&amp;nbsp; ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevCtl: Report errors: Correctable- Non-Fatal+ Fatal+ Unsupported-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+&lt;/P&gt;
&lt;P&gt;&amp;nbsp; MaxPayload 128 bytes, MaxReadReq 512 bytes&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkCap: Port #0, Speed 5GT/s, Width x1, ASPM L0s, Latency L0 unlimited, L1 unlimited&lt;/P&gt;
&lt;P&gt;&amp;nbsp; ClockPM- Surprise- LLActRep- BwNot-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+&lt;/P&gt;
&lt;P&gt;&amp;nbsp; ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevCap2: Completion Timeout: Not Supported, TimeoutDis-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-, Selectable De-emphasis: -6dB&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Compliance De-emphasis: -6dB&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkSta2: Current De-emphasis Level: -3.5dB&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Capabilities: [100 v1] Device Serial Number 00-00-00-00-00-00-00-00&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Kernel driver in use: pciDriver&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;


&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i.MX6 dump:&lt;/P&gt;&lt;BLOCKQUOTE&gt;
&lt;P&gt;03:00.0 Memory controller: Xilinx Corporation Device 7042&lt;/P&gt;
&lt;P&gt;00: ee 10 42 70 46 05 10 00 00 00 80 05 08 00 00 00&lt;/P&gt;
&lt;P&gt;10: 00 00 10 01 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;20: 00 00 00 00 00 00 00 00 00 00 00 00 ee 10 07 00&lt;/P&gt;
&lt;P&gt;30: 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;40: 01 48 23 00 08 00 00 00 05 60 85 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;60: 10 00 02 00 29 80 64 00 10 28 00 00 12 f4 03 00&lt;/P&gt;
&lt;P&gt;70: 00 00 11 10 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;90: 02 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;03:00.0 Memory controller: Xilinx Corporation Device 7042&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Subsystem: Xilinx Corporation Device 0007&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- SERR+ FastB2B- DisINTx+&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast &amp;gt;TAbort- &amp;lt;TAbort- &amp;lt;MAbort- &amp;gt;SERR- &amp;lt;PERR- INTx-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Latency: 0, Cache Line Size: 32 bytes&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Interrupt: pin ? routed to IRQ 502&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Region 0: Memory at 01100000 (32-bit, non-prefetchable) [size=64K]&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Capabilities: [40] Power Management version 3&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Capabilities: [48] MSI: Enable+ Count=1/4 Maskable- 64bit+&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Address: 0000000000000000&amp;nbsp; Data: 0000&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Capabilities: [60] Express (v2) Endpoint, MSI 00&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevCap: MaxPayload 256 bytes, PhantFunc 1, Latency L0s &amp;lt;64ns, L1 &amp;lt;1us&lt;/P&gt;
&lt;P&gt;&amp;nbsp; ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+&lt;/P&gt;
&lt;P&gt;&amp;nbsp; MaxPayload 128 bytes, MaxReadReq 512 bytes&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkCap: Port #0, Speed 5GT/s, Width x1, ASPM L0s, Latency L0 unlimited, L1 unlimited&lt;/P&gt;
&lt;P&gt;&amp;nbsp; ClockPM- Surprise- LLActRep- BwNot-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevCap2: Completion Timeout: Not Supported, TimeoutDis-, LTR-, OBFF Not Supported&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Compliance De-emphasis: -6dB&lt;/P&gt;
&lt;P&gt;&amp;nbsp; LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete-, EqualizationPhase1-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest-&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Capabilities: [100 v1] Device Serial Number 00-00-00-00-00-00-00-00&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Kernel driver in use: pciDriver&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Kernel modules: pciDriver&lt;/P&gt;


&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there anything obvious we have to care about to get PCIe busmaster communication running?&lt;/P&gt;&lt;P&gt;Maybe something we have to check regarding the iATU settings because of the PCIe switch on our evaluation board?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 07 Apr 2014 08:35:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/PCIe-does-not-work/m-p/311581#M40741</guid>
      <dc:creator>volki</dc:creator>
      <dc:date>2014-04-07T08:35:40Z</dc:date>
    </item>
    <item>
      <title>Re: PCIe does not work</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/PCIe-does-not-work/m-p/311582#M40742</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;We should better avoid the dma address remapped by ATU. Do you have the TLP snapshot of pcie protocol analysis to help address the issue?&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 May 2014 06:05:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/PCIe-does-not-work/m-p/311582#M40742</guid>
      <dc:creator>b47504</dc:creator>
      <dc:date>2014-05-09T06:05:29Z</dc:date>
    </item>
    <item>
      <title>Re: PCIe does not work</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/PCIe-does-not-work/m-p/311583#M40743</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Volker&lt;/P&gt;&lt;P&gt;Had your issue got resolved? If yes, we are going to close the discussion in 3 days. If you still need help, please feel free to reply with an update to this discussion.&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Yixing&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 May 2014 06:48:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/PCIe-does-not-work/m-p/311583#M40743</guid>
      <dc:creator>YixingKong</dc:creator>
      <dc:date>2014-05-13T06:48:21Z</dc:date>
    </item>
    <item>
      <title>Re: PCIe does not work</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/PCIe-does-not-work/m-p/311584#M40744</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Volker&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We have not got your response yet and will close the discussion in 3 days. If you still need help, please feel free to reply with an update to this discussion.&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Yixing&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 19 May 2014 05:41:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/PCIe-does-not-work/m-p/311584#M40744</guid>
      <dc:creator>YixingKong</dc:creator>
      <dc:date>2014-05-19T05:41:56Z</dc:date>
    </item>
    <item>
      <title>Re: PCIe does not work</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/PCIe-does-not-work/m-p/311585#M40745</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Sorry for the late reply, I wasn't notified about responses to my post.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We finally got the test running. It turned out to be a problem when mapping between kernel space and user space (ARM seems to be a bit different here than x86: dma_mmap_coherent vs remap_pfn_range). &lt;/P&gt;&lt;P&gt;Unfortunately the data transfer bandwidth was not as good as we would have expected on the i.MX6. We generated a data stream within the FPGA using a clock counter. By subtracting the last transferred data word from the first we calculated the data transfer speed, so calculation should not depend on any CPU latencies. On the i.MX6 we got 270MB/s while we got ~400MB/s on an x86 system with one PCIe 2.0 lane.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there any obvious reason (apart from the maximum payload size of 128byte on the i.MX6) that the transfer rate is only that low? As the maximum payload size on the FPGA is currently limited to 256 bytes anyway it shouldn't have a very big effect in comparison to the x86 system.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 Aug 2014 08:41:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/PCIe-does-not-work/m-p/311585#M40745</guid>
      <dc:creator>volki</dc:creator>
      <dc:date>2014-08-14T08:41:27Z</dc:date>
    </item>
    <item>
      <title>Re: PCIe does not work</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/PCIe-does-not-work/m-p/311586#M40746</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;We are also looking to connect the i.MX6 to an Artix7 through PCIe. In the posts above it looks like you got this to work with ASPM disabled:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+"&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;It this the case? Have you been able to get PCIe working between the iMX6 and Artix7 with ASPM enabled? We would like to use the power management modes of ASPM but I have not seen (conclusively) that PCIe ASPM works reliably on the iMX6 working as a RC.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;Thanks,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;Tom&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Aug 2014 17:17:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/PCIe-does-not-work/m-p/311586#M40746</guid>
      <dc:creator>snowman</dc:creator>
      <dc:date>2014-08-27T17:17:19Z</dc:date>
    </item>
    <item>
      <title>Re: PCIe does not work</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/PCIe-does-not-work/m-p/311587#M40747</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;As we currently don't care about power consumption, we haven't looked at this yet. Our biggest concern is data transfer bandwidth.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 28 Aug 2014 12:10:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/PCIe-does-not-work/m-p/311587#M40747</guid>
      <dc:creator>volki</dc:creator>
      <dc:date>2014-08-28T12:10:00Z</dc:date>
    </item>
  </channel>
</rss>

