<?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>MCUXpresso SDKのトピックProblem in eDMA driver in RT117x chips</title>
    <link>https://community.nxp.com/t5/MCUXpresso-SDK/Problem-in-eDMA-driver-in-RT117x-chips/m-p/2011748#M5014</link>
    <description>&lt;P&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;I am not sure if this is the right place, but there is a problem I face in the SDK and fixed, and I thought I should mention it here.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am programming on NXP i.MX RT1170 and was trying to use the eDMA to transfer some video lines, but it failed miserably! it never complete the whole lines, when I was trying to do 288 line it moved only around 40 lines (I am trying to move 288 lines by doing 288 scatter gather operations).&lt;BR /&gt;&lt;BR /&gt;The hardware doesn't seem to have such restrictions, and the TCD blocks are stored in external memory anyway!&lt;BR /&gt;&lt;BR /&gt;I dug into the driver and found out that the function which set the size of TCD block has the following form:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="cpp"&gt;void EDMA_InstallTCDMemory(edma_handle_t *handle, edma_tcd_t *tcdPool, uint32_t tcdSize)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;BR /&gt;But in the body of the function I found the following:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;void EDMA_InstallTCDMemory(edma_handle_t *handle, edma_tcd_t *tcdPool, uint32_t tcdSize)
{
    assert(handle != NULL);
    assert(((uint32_t)tcdPool &amp;amp; 0x1FU) == 0U);

    handle-&amp;gt;header  = 1;
    handle-&amp;gt;tcdUsed = 0;
    handle-&amp;gt;tcdSize = (int8_t)tcdSize; // !!!!!!!!!
    handle-&amp;gt;flags   = 0;
    handle-&amp;gt;tcdPool = tcdPool;
}&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It converts the uint32_t integer into int8 integer !&lt;/P&gt;&lt;P&gt;That means the maximum size I can transfer is only 128! (which is the case)&lt;BR /&gt;&lt;BR /&gt;And by digging more into the driver I found that the handle data and other functions uses int8_t type for no obvious reason.&lt;BR /&gt;&lt;BR /&gt;After modifying it all into uint16_t it worked seamlessly for me.&lt;BR /&gt;&lt;BR /&gt;I hope this can be modified in future version of the drivers.&lt;BR /&gt;&lt;BR /&gt;Regards&lt;/P&gt;</description>
    <pubDate>Wed, 11 Dec 2024 07:55:57 GMT</pubDate>
    <dc:creator>abady1000</dc:creator>
    <dc:date>2024-12-11T07:55:57Z</dc:date>
    <item>
      <title>Problem in eDMA driver in RT117x chips</title>
      <link>https://community.nxp.com/t5/MCUXpresso-SDK/Problem-in-eDMA-driver-in-RT117x-chips/m-p/2011748#M5014</link>
      <description>&lt;P&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;I am not sure if this is the right place, but there is a problem I face in the SDK and fixed, and I thought I should mention it here.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am programming on NXP i.MX RT1170 and was trying to use the eDMA to transfer some video lines, but it failed miserably! it never complete the whole lines, when I was trying to do 288 line it moved only around 40 lines (I am trying to move 288 lines by doing 288 scatter gather operations).&lt;BR /&gt;&lt;BR /&gt;The hardware doesn't seem to have such restrictions, and the TCD blocks are stored in external memory anyway!&lt;BR /&gt;&lt;BR /&gt;I dug into the driver and found out that the function which set the size of TCD block has the following form:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="cpp"&gt;void EDMA_InstallTCDMemory(edma_handle_t *handle, edma_tcd_t *tcdPool, uint32_t tcdSize)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;BR /&gt;But in the body of the function I found the following:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;void EDMA_InstallTCDMemory(edma_handle_t *handle, edma_tcd_t *tcdPool, uint32_t tcdSize)
{
    assert(handle != NULL);
    assert(((uint32_t)tcdPool &amp;amp; 0x1FU) == 0U);

    handle-&amp;gt;header  = 1;
    handle-&amp;gt;tcdUsed = 0;
    handle-&amp;gt;tcdSize = (int8_t)tcdSize; // !!!!!!!!!
    handle-&amp;gt;flags   = 0;
    handle-&amp;gt;tcdPool = tcdPool;
}&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It converts the uint32_t integer into int8 integer !&lt;/P&gt;&lt;P&gt;That means the maximum size I can transfer is only 128! (which is the case)&lt;BR /&gt;&lt;BR /&gt;And by digging more into the driver I found that the handle data and other functions uses int8_t type for no obvious reason.&lt;BR /&gt;&lt;BR /&gt;After modifying it all into uint16_t it worked seamlessly for me.&lt;BR /&gt;&lt;BR /&gt;I hope this can be modified in future version of the drivers.&lt;BR /&gt;&lt;BR /&gt;Regards&lt;/P&gt;</description>
      <pubDate>Wed, 11 Dec 2024 07:55:57 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-SDK/Problem-in-eDMA-driver-in-RT117x-chips/m-p/2011748#M5014</guid>
      <dc:creator>abady1000</dc:creator>
      <dc:date>2024-12-11T07:55:57Z</dc:date>
    </item>
    <item>
      <title>回复： Problem in eDMA driver in RT117x chips</title>
      <link>https://community.nxp.com/t5/MCUXpresso-SDK/Problem-in-eDMA-driver-in-RT117x-chips/m-p/2014193#M5018</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/236627"&gt;@abady1000&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;Thanks for your effects!&lt;/P&gt;
&lt;P&gt;This does seem a bit strange, I will submit this to the relevant internal team for review and I will be very much in sync with you once I have come to a conclusion.&lt;/P&gt;
&lt;P&gt;Best regards,&lt;BR /&gt;Gavin&lt;/P&gt;</description>
      <pubDate>Mon, 16 Dec 2024 07:05:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-SDK/Problem-in-eDMA-driver-in-RT117x-chips/m-p/2014193#M5018</guid>
      <dc:creator>Gavin_Jia</dc:creator>
      <dc:date>2024-12-16T07:05:39Z</dc:date>
    </item>
    <item>
      <title>回复： Problem in eDMA driver in RT117x chips</title>
      <link>https://community.nxp.com/t5/MCUXpresso-SDK/Problem-in-eDMA-driver-in-RT117x-chips/m-p/2016840#M5029</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/236627"&gt;@abady1000&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;It has been confirmed by me and the internal team that this is indeed a software bug. It has been submitted internally and will be fixed later. Thank you very much for your efforts and contributions!&lt;/P&gt;
&lt;P&gt;Best regards,&lt;BR /&gt;Gavin&lt;/P&gt;</description>
      <pubDate>Thu, 19 Dec 2024 04:41:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-SDK/Problem-in-eDMA-driver-in-RT117x-chips/m-p/2016840#M5029</guid>
      <dc:creator>Gavin_Jia</dc:creator>
      <dc:date>2024-12-19T04:41:02Z</dc:date>
    </item>
    <item>
      <title>回复： Problem in eDMA driver in RT117x chips</title>
      <link>https://community.nxp.com/t5/MCUXpresso-SDK/Problem-in-eDMA-driver-in-RT117x-chips/m-p/2016902#M5030</link>
      <description>&lt;P&gt;Hi Gavin,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;That is amazing, thank you&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Abdullah Alamoodi&lt;/P&gt;</description>
      <pubDate>Thu, 19 Dec 2024 06:26:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-SDK/Problem-in-eDMA-driver-in-RT117x-chips/m-p/2016902#M5030</guid>
      <dc:creator>abady1000</dc:creator>
      <dc:date>2024-12-19T06:26:39Z</dc:date>
    </item>
  </channel>
</rss>

