<?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: i.MX6 SDMA</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272695#M29696</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ge Lei and Dan Vona,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for the patch and test code.&amp;nbsp; I have updated the BSP 3.10.9 SDMA driver and have a working memory to memory SDMA test.&amp;nbsp; This seems like a very standard use of the SDMA and should be maintained in the iMX BSP code base.&amp;nbsp; Are there any plans to add this back into the main code base?&amp;nbsp; Is there a reason this is not being maintained in the main BSP code base?&amp;nbsp; We are working with the BSP beta release and plan to move to the release when available.&amp;nbsp; If this is not added to the main BSP code base, we will have to maintain this as the iMX BSP moves toward a release.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Ken Maier&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 17 Feb 2014 15:23:23 GMT</pubDate>
    <dc:creator>kenmaier</dc:creator>
    <dc:date>2014-02-17T15:23:23Z</dc:date>
    <item>
      <title>i.MX6 SDMA</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272693#M29694</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Arial','sans-serif'; font-size: 10pt;"&gt;Greetings,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'Arial','sans-serif'; font-size: 10pt;"&gt;I have a few questions for the Linux BSP developers.&amp;nbsp; My customer has a working implementation of the IMX6 SDMA unit doing a memory to memory transfer on the 3.0.35 Linux BSP.&amp;nbsp; This implementation is based on the Linux dmaengine interface.&amp;nbsp; It is utilizing two scatter gather lists as described in the ims-sdma.c source (see comment).&amp;nbsp; Moving forward to the 3.10.9 and 3.10.17-r0 that support has changed and appears to have been removed.&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Times New Roman','serif'; font-size: 12pt;"&gt; &lt;BR /&gt;&lt;SPAN style="font-family: 'Arial','sans-serif'; font-size: 10pt;"&gt;Here is a comment from the imx-sdma.c BSP 3.0.35 source.&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Times New Roman','serif'; font-size: 12pt;"&gt; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * For SDMA M2M use, we need 2 scatterlists, the src addresses are &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * stored in the first sg, and the dst addresses are stored in the &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * second sg. In the former code, when the first sg entered 'sdma_ &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * prep_slave_sg', 'sdmac-&amp;gt;status' would be set to 'DMA_IN_PROGRESS', &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * and the second sg would return 'NULL' when entered 'sdma_prep_slave &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * _sg'. To avoid this error, in the code, we check if for M2M use, &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * the second sg will not return 'NULL' when enters 'sdma_prep_slave &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * _sg'. &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */ &lt;BR /&gt;&lt;SPAN style="font-family: 'Arial','sans-serif'; font-size: 10pt;"&gt;Can you answer the following questions or put me in touch with a BSP developer who can?&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Times New Roman','serif'; font-size: 12pt;"&gt; &lt;BR /&gt;&lt;SPAN style="font-family: 'Arial','sans-serif'; font-size: 10pt;"&gt;Does the Linux BSP 3.10.17-r0 support IMX6 SDMA memory to memory transfers through the Linux dmaengine interface?&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Times New Roman','serif'; font-size: 12pt;"&gt; &lt;SPAN style="font-family: 'Arial','sans-serif'; font-size: 10pt;"&gt;If so, can I get details on how to use the dmaengine interface for memory to memory transfers as this seems to have changed from 3.0.35?&lt;/SPAN&gt;&lt;SPAN style="font-family: 'Times New Roman','serif'; font-size: 12pt;"&gt; &lt;SPAN style="font-family: 'Arial','sans-serif'; font-size: 10pt;"&gt;If not, is there a reason it was removed or a plan to fix?&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 03 Feb 2014 16:05:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272693#M29694</guid>
      <dc:creator>dvona</dc:creator>
      <dc:date>2014-02-03T16:05:16Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX6 SDMA</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272694#M29695</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, this patch is pushed by me when i was still in linux BSP team, now i am in AE team. I have a pach for 3.5.7 'use the dmaengine interface for memory to memory transfers' using device_prep_dma_sg (it works, but not pushed, so as to 3.10.17), the patch is attached to this message, you can use it as a refer(.patch file is the kernel patch for imx-sdma.c, .c file is the test code). The speed of M2M transfer is about 50M/s&lt;/P&gt;&lt;P&gt;&amp;nbsp; 4 Subject: [PATCH 3/3] ENGR : Add sdma memory to memory copy function for&lt;/P&gt;&lt;P&gt;&amp;nbsp; 5&amp;nbsp; kerenl 3.5.7&lt;/P&gt;&lt;P&gt;&amp;nbsp; 6&lt;/P&gt;&lt;P&gt;&amp;nbsp; 7 In this patch, we use a new API from dmaengine: device_prep_dma_sg, which&lt;/P&gt;&lt;P&gt;&amp;nbsp; 8 is designed for memory to memory copy. The use is the same to&lt;/P&gt;&lt;P&gt;&amp;nbsp; 9 'device_prep_slave_sg', except that we use:&lt;/P&gt;&lt;P&gt;10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i = 0, sg = src_sg, sg2 = dst_sg; i &amp;lt; src_nents;&lt;/P&gt;&lt;P&gt;11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i++, sg = sg_next(sg), sg2 = sg_next(sg2))&lt;/P&gt;&lt;P&gt;12 instead of using:&lt;/P&gt;&lt;P&gt;13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for_each_sg(sgl, src_sg, sg_len, i).&lt;/P&gt;&lt;P&gt;14&lt;/P&gt;&lt;P&gt;15 Signed-off-by: Ge Lei &amp;lt;&lt;A href="mailto:b42127@freescale.com"&gt;b42127@freescale.com&lt;/A&gt;&amp;gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Feb 2014 02:48:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272694#M29695</guid>
      <dc:creator>leige-b42127</dc:creator>
      <dc:date>2014-02-12T02:48:17Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX6 SDMA</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272695#M29696</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ge Lei and Dan Vona,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for the patch and test code.&amp;nbsp; I have updated the BSP 3.10.9 SDMA driver and have a working memory to memory SDMA test.&amp;nbsp; This seems like a very standard use of the SDMA and should be maintained in the iMX BSP code base.&amp;nbsp; Are there any plans to add this back into the main code base?&amp;nbsp; Is there a reason this is not being maintained in the main BSP code base?&amp;nbsp; We are working with the BSP beta release and plan to move to the release when available.&amp;nbsp; If this is not added to the main BSP code base, we will have to maintain this as the iMX BSP moves toward a release.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Ken Maier&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 17 Feb 2014 15:23:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272695#M29696</guid>
      <dc:creator>kenmaier</dc:creator>
      <dc:date>2014-02-17T15:23:23Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX6 SDMA</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272696#M29697</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Maybe the BSP team forgot to add this patch, i am trying to inform the SDMA owner in BSP team.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Feb 2014 10:03:57 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272696#M29697</guid>
      <dc:creator>leige-b42127</dc:creator>
      <dc:date>2014-02-19T10:03:57Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX6 SDMA</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272697#M29698</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Lei Ge!!&amp;nbsp; Have you heard anything back from the BSP team?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could someone from the BSP team respond to this thread,&amp;nbsp; Is this patch going to be applied to the main code base?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Ken Maier&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 03 Mar 2014 13:57:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272697#M29698</guid>
      <dc:creator>kenmaier</dc:creator>
      <dc:date>2014-03-03T13:57:19Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX6 SDMA</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272698#M29699</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;huang shijie b32955, and gong yibing b38343 are the owner of SDMA now. you can check with them, i just checked with them, they are now busy with other issues now,&amp;nbsp; maybe don't have enough time to do this.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Mar 2014 02:52:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272698#M29699</guid>
      <dc:creator>leige-b42127</dc:creator>
      <dc:date>2014-03-05T02:52:18Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX6 SDMA</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272699#M29700</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Lei Ge,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am working with the SDMA on the iMX6 to do M2M copies. I am wondering where the 50M/s rate come from? Is this a hardware limitation? I am getting similar transfer rate on my application.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It is not common for a DMA engine to take too long in a transfer, the same transfer on the iMX6 (which is taking around 30ms) usually takes 2ms in other hardware.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there a way to improve the DMA transfer performance?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Marco&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Nov 2014 01:45:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272699#M29700</guid>
      <dc:creator>marcomadrigal</dc:creator>
      <dc:date>2014-11-06T01:45:07Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX6 SDMA</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272700#M29701</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am not sure. I am confused too. I tested the 50M rate by transfering some data and measuring the time(data/time). In fact, we have no really M2M copy use of SDMA in our solution(just a test code).&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 11 Nov 2014 08:37:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272700#M29701</guid>
      <dc:creator>leige-b42127</dc:creator>
      <dc:date>2014-11-11T08:37:54Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX6 SDMA</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272701#M29702</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Marco&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;50-60MB/s is typical sdma performance measured on other processors too,&lt;/P&gt;&lt;P&gt;for m2m copy example one can also look at mxc_sdma_memcopy_test.c&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://repository.timesys.com/buildsources/i/imx-test/imx-test-3.10.17-1.0.0/imx-test-3.10.17-1.0.0.tar.gz" title="http://repository.timesys.com/buildsources/i/imx-test/imx-test-3.10.17-1.0.0/imx-test-3.10.17-1.0.0.tar.gz"&gt;http://repository.timesys.com/buildsources/i/imx-test/imx-test-3.10.17-1.0.0/imx-test-3.10.17-1.0.0.tar.gz&lt;/A&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;igor&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 14 Jul 2015 03:56:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272701#M29702</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2015-07-14T03:56:15Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX6 SDMA</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272702#M29703</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks everyone.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hello igor,&lt;/P&gt;&lt;P&gt;1. I have downloaded the linux-imx6-boundary-imx_4.1.15_1.0.0_ga and imx-test-3.10.17-1.0.0.tar.gz.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Able to built the Linux kernel by following below commands.&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;export ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LOADADDR=10008000&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;make nitrogen6x_defconfig&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;make zImage modules dtbs&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3. Trying to build the example provided in the imx-test-3.10.17-1.0.0.tar.gz throws lot of errors and warnings.&lt;/P&gt;&lt;P&gt;Below is the steps followed,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;a. Make the kbuild directory under the linux directory(mkdir kbuild/mxc27530evb)&lt;/P&gt;&lt;P&gt;b. Build the example with required variables.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;make PLATFORM=MXC27530EVB LINUXPATH=/home/raja/work/av/linux-imx6-boundary-imx_4.1.15_1.0.0_ga KBUILD_OUTPUT=/home/raja/work/av/linux-imx6-boundary-imx_4.1.15_1.0.0_ga/kbuild/mxc27530evb CROSS_COMPILE=/usr/bin/arm-linux-gnueabihf-&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PS: Please find the attached error log for your review and have used Linaro toolchain. I have followed above steps with Linux version&lt;EM&gt;&lt;STRONG&gt; linux-imx6-boundary-imx_3.0.35_4.1.0&lt;/STRONG&gt;&lt;/EM&gt; however the result is same.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please point me out my fault or missed procedure to build and run the examples. Thank you very much in advance.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Raja&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Aug 2016 13:11:37 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272702#M29703</guid>
      <dc:creator>rajasekarank</dc:creator>
      <dc:date>2016-08-01T13:11:37Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX6 SDMA</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272703#M29704</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Igor,&lt;/P&gt;&lt;P&gt;Any comments or help...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 08 Aug 2016 09:26:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX6-SDMA/m-p/272703#M29704</guid>
      <dc:creator>rajasekarank</dc:creator>
      <dc:date>2016-08-08T09:26:16Z</dc:date>
    </item>
  </channel>
</rss>

