<?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>P-SeriesのトピックWhat is max P2020 PCI DMA window size for Linux?</title>
    <link>https://community.nxp.com/t5/P-Series/What-is-max-P2020-PCI-DMA-window-size-for-Linux/m-p/238775#M371</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have a P2020 based system with 4GB RAM.&amp;nbsp; I have been testing mSATA SSD performance which involves a x4 PCIe connection to a SATA controller.&amp;nbsp; If I run the board in 2GB RAM mode I get much better performance than in 4GB RAM mode, 381 MB/sec vs. only 219 MB/sec.&amp;nbsp; I noticed that in 4GB mode, I get some extra kernel log entries that appear to originate from the linux source file arch/powerpc/sysdev/fsl_pci.c, "Outbound window cfg leaves gaps in memory map...", "DMA window size is 0x8000000" (2GB).&amp;nbsp; I believe the mSATA performance degradation is due to the use of SWIOTLB bounce buffers for PCI DMA when in 4GB mode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The current Linux BSP for the board is only at kernel version 3.0.3.&amp;nbsp; I came across the following downstream patch for fsl_pci.c:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://linuxppc.10917.n7.nabble.com/PATCH-powerpc-fsl-pci-Allow-64-bit-PCIe-devices-to-DMA-to-any-memory-address-td20919.html"&gt;http://linuxppc.10917.n7.nabble.com/PATCH-powerpc-fsl-pci-Allow-64-bit-PCIe-devices-to-DMA-to-any-memory-address-td20919.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Adding the code from this patch to the 3.0.3 version of fsl_pci.c significantly improved the 4GB mode mSATA performance to about 370 MB/sec, so not quite as good as when in 2GB mode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would like to know if it is possible to modify the memory map somehow so I end up with a 4GB PCI DMA window size instead of only 2GB.&amp;nbsp; My assumption is that may provide 4GB mode performance as least as good as 2GB mode.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 02 Aug 2013 23:13:56 GMT</pubDate>
    <dc:creator>rkj</dc:creator>
    <dc:date>2013-08-02T23:13:56Z</dc:date>
    <item>
      <title>What is max P2020 PCI DMA window size for Linux?</title>
      <link>https://community.nxp.com/t5/P-Series/What-is-max-P2020-PCI-DMA-window-size-for-Linux/m-p/238775#M371</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have a P2020 based system with 4GB RAM.&amp;nbsp; I have been testing mSATA SSD performance which involves a x4 PCIe connection to a SATA controller.&amp;nbsp; If I run the board in 2GB RAM mode I get much better performance than in 4GB RAM mode, 381 MB/sec vs. only 219 MB/sec.&amp;nbsp; I noticed that in 4GB mode, I get some extra kernel log entries that appear to originate from the linux source file arch/powerpc/sysdev/fsl_pci.c, "Outbound window cfg leaves gaps in memory map...", "DMA window size is 0x8000000" (2GB).&amp;nbsp; I believe the mSATA performance degradation is due to the use of SWIOTLB bounce buffers for PCI DMA when in 4GB mode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The current Linux BSP for the board is only at kernel version 3.0.3.&amp;nbsp; I came across the following downstream patch for fsl_pci.c:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://linuxppc.10917.n7.nabble.com/PATCH-powerpc-fsl-pci-Allow-64-bit-PCIe-devices-to-DMA-to-any-memory-address-td20919.html"&gt;http://linuxppc.10917.n7.nabble.com/PATCH-powerpc-fsl-pci-Allow-64-bit-PCIe-devices-to-DMA-to-any-memory-address-td20919.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Adding the code from this patch to the 3.0.3 version of fsl_pci.c significantly improved the 4GB mode mSATA performance to about 370 MB/sec, so not quite as good as when in 2GB mode.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would like to know if it is possible to modify the memory map somehow so I end up with a 4GB PCI DMA window size instead of only 2GB.&amp;nbsp; My assumption is that may provide 4GB mode performance as least as good as 2GB mode.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 02 Aug 2013 23:13:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/P-Series/What-is-max-P2020-PCI-DMA-window-size-for-Linux/m-p/238775#M371</guid>
      <dc:creator>rkj</dc:creator>
      <dc:date>2013-08-02T23:13:56Z</dc:date>
    </item>
  </channel>
</rss>

