<?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: LPSPI EDMA driver is broken for multiple slaves in SDK 2.16.100 - 25.1 2.00 for IMXRT1171 in i.MX RT Crossover MCUs</title>
    <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/LPSPI-EDMA-driver-is-broken-for-multiple-slaves-in-SDK-2-16-100/m-p/2333862#M36370</link>
    <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/70127"&gt;@nxp16&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;Thank you for your interest in NXP Semiconductor products and for the opportunity to serve you.&lt;/P&gt;
&lt;DIV&gt;
&lt;P&gt;Thanks for your question.&lt;/P&gt;
&lt;DIV&gt;
&lt;DIV&gt;
&lt;P&gt;For applications that use one LPSPI master with more than one SPI slave, this can be handled at the application level.&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;The LPSPI EDMA handle itself does not store any slave‑specific information.&amp;nbsp; &amp;nbsp;Each time a transfer is started, the handle is updated with the configuration of the current transfer. Therefore, each transaction is independent.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;You can &lt;/SPAN&gt;record which slave (PCS) you want to &lt;SPAN&gt;communicate &lt;/SPAN&gt;with before start a transfer,&amp;nbsp; Then, in the common callback, use this record to know which slave’s transfer has finished.&lt;/P&gt;
&lt;P&gt;With this method, you can support multiple slaves without changing the driver.&lt;/P&gt;
&lt;P&gt;Wish it helps you&lt;/P&gt;
&lt;P&gt;Best Regards&lt;/P&gt;
&lt;P&gt;MayLiu&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;</description>
    <pubDate>Tue, 17 Mar 2026 07:08:19 GMT</pubDate>
    <dc:creator>mayliu1</dc:creator>
    <dc:date>2026-03-17T07:08:19Z</dc:date>
    <item>
      <title>LPSPI EDMA driver is broken for multiple slaves in SDK 2.16.100 - 25.1 2.00 for IMXRT1171</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/LPSPI-EDMA-driver-is-broken-for-multiple-slaves-in-SDK-2-16-100/m-p/2332702#M36362</link>
      <description>&lt;P&gt;On the IMXRT1171, when trying to use multiple slaves with LPSPI EDMA, the SDK doesn't work correctly.&amp;nbsp; The wrong callback is called and the wrong user data is passed.&lt;/P&gt;&lt;P&gt;This is due to a bug in LPSPI_MasterTransferCreateHandleEDMA, where it uses internal static state (s_lpspiMasterEdmaPrivateHandle[]) to keep track of the lpspi_master_edma_handle but only includes one per SPI bus instance.&amp;nbsp; If you have multiple slaves with separate lpspi_master_edma_handles, callbacks, and PCSes on the same SPI bus, that state will end up being overwritten with the last one you configure, causing all receive/send completions to call the incorrect callback.&lt;/P&gt;</description>
      <pubDate>Fri, 13 Mar 2026 14:17:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/LPSPI-EDMA-driver-is-broken-for-multiple-slaves-in-SDK-2-16-100/m-p/2332702#M36362</guid>
      <dc:creator>nxp16</dc:creator>
      <dc:date>2026-03-13T14:17:54Z</dc:date>
    </item>
    <item>
      <title>Re: LPSPI EDMA driver is broken for multiple slaves in SDK 2.16.100 - 25.1 2.00 for IMXRT1171</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/LPSPI-EDMA-driver-is-broken-for-multiple-slaves-in-SDK-2-16-100/m-p/2333862#M36370</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/70127"&gt;@nxp16&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;Thank you for your interest in NXP Semiconductor products and for the opportunity to serve you.&lt;/P&gt;
&lt;DIV&gt;
&lt;P&gt;Thanks for your question.&lt;/P&gt;
&lt;DIV&gt;
&lt;DIV&gt;
&lt;P&gt;For applications that use one LPSPI master with more than one SPI slave, this can be handled at the application level.&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;The LPSPI EDMA handle itself does not store any slave‑specific information.&amp;nbsp; &amp;nbsp;Each time a transfer is started, the handle is updated with the configuration of the current transfer. Therefore, each transaction is independent.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;You can &lt;/SPAN&gt;record which slave (PCS) you want to &lt;SPAN&gt;communicate &lt;/SPAN&gt;with before start a transfer,&amp;nbsp; Then, in the common callback, use this record to know which slave’s transfer has finished.&lt;/P&gt;
&lt;P&gt;With this method, you can support multiple slaves without changing the driver.&lt;/P&gt;
&lt;P&gt;Wish it helps you&lt;/P&gt;
&lt;P&gt;Best Regards&lt;/P&gt;
&lt;P&gt;MayLiu&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;</description>
      <pubDate>Tue, 17 Mar 2026 07:08:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/LPSPI-EDMA-driver-is-broken-for-multiple-slaves-in-SDK-2-16-100/m-p/2333862#M36370</guid>
      <dc:creator>mayliu1</dc:creator>
      <dc:date>2026-03-17T07:08:19Z</dc:date>
    </item>
  </channel>
</rss>

