<?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>LPC MicrocontrollersのトピックLPC55S6x/S2x/2x DMA request source - SPI?</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC55S6x-S2x-2x-DMA-request-source-SPI/m-p/1077861#M41471</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Looking at the LPC55S6x/LPC55S2x/LPC552x User manual (Rev. 1.9 — 15 November 2019).&lt;BR /&gt;For each DMA channel, the dedicated DMA request sources are shown in Tables 408 and 409.&lt;/P&gt;&lt;P&gt;These tables are a bit confusing, for example DMA0 channel 4 shows request source&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;EM&gt;Flexcomm Interface 0 RX / I2C Slave&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;Assuming one is not using I2C, does this mean the DMA channel can be used for any flexcomm interface 0 RX function (ie SPI if flexcomm 0 is configured for SPI)?&lt;/P&gt;&lt;P&gt;Thanks!&lt;BR /&gt;Best Regards, Dave&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 08 Apr 2020 16:28:38 GMT</pubDate>
    <dc:creator>davenadler</dc:creator>
    <dc:date>2020-04-08T16:28:38Z</dc:date>
    <item>
      <title>LPC55S6x/S2x/2x DMA request source - SPI?</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC55S6x-S2x-2x-DMA-request-source-SPI/m-p/1077861#M41471</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Looking at the LPC55S6x/LPC55S2x/LPC552x User manual (Rev. 1.9 — 15 November 2019).&lt;BR /&gt;For each DMA channel, the dedicated DMA request sources are shown in Tables 408 and 409.&lt;/P&gt;&lt;P&gt;These tables are a bit confusing, for example DMA0 channel 4 shows request source&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;EM&gt;Flexcomm Interface 0 RX / I2C Slave&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;Assuming one is not using I2C, does this mean the DMA channel can be used for any flexcomm interface 0 RX function (ie SPI if flexcomm 0 is configured for SPI)?&lt;/P&gt;&lt;P&gt;Thanks!&lt;BR /&gt;Best Regards, Dave&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 08 Apr 2020 16:28:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC55S6x-S2x-2x-DMA-request-source-SPI/m-p/1077861#M41471</guid>
      <dc:creator>davenadler</dc:creator>
      <dc:date>2020-04-08T16:28:38Z</dc:date>
    </item>
    <item>
      <title>Re: LPC55S6x/S2x/2x DMA request source - SPI?</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC55S6x-S2x-2x-DMA-request-source-SPI/m-p/1077862#M41472</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/jeremyzhou"&gt;jeremyzhou&lt;/A&gt;‌ - Can you clarify? You seem to be expert on DMA on these parts?&lt;BR /&gt;Thanks!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 09 Apr 2020 18:34:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC55S6x-S2x-2x-DMA-request-source-SPI/m-p/1077862#M41472</guid>
      <dc:creator>davenadler</dc:creator>
      <dc:date>2020-04-09T18:34:40Z</dc:date>
    </item>
    <item>
      <title>Re: LPC55S6x/S2x/2x DMA request source - SPI?</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC55S6x-S2x-2x-DMA-request-source-SPI/m-p/1077863#M41473</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;Assuming one is not using I2C, does this mean the DMA channel can be used for any flexcomm interface 0 RX function (ie SPI if flexcomm 0 is configured for SPI)?&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;I'm now working through&amp;nbsp;using DMA with a UART -- the example code and driver are mindbendingly undocumented.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Based on the example&amp;nbsp;lpcxpresso55s28_usart_dma_transfer, the DMA channels are associated with all configurations of a&amp;nbsp;Flexcomm.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There are two requests for each Flexcomm: one for transmit, the other for receive. When configured to work as I2C, one of the requests is for when the Flexcomm is used as an I2C slave, and the other is used when the Flexcomm is used as an I2C master.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So for Flexcomm 0, the table lists:&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;&amp;nbsp;DMA Channel 4:&amp;nbsp;&lt;/SPAN&gt;&lt;EM style="color: #51626f; border: 0px;"&gt;Flexcomm Interface 0 RX / I2C Slave&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;&amp;nbsp;DMA Channel 5:&amp;nbsp;&lt;/SPAN&gt;&lt;EM style="color: #51626f; border: 0px;"&gt;Flexcomm Interface 0 TX / I2C&amp;nbsp;Master&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;It's the same for the other Flexcomms.&lt;/P&gt;&lt;P&gt;There are a couple of examples that use the Flexcomm as an SPI master or slave using DMA transfers.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Apr 2020 04:33:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC55S6x-S2x-2x-DMA-request-source-SPI/m-p/1077863#M41473</guid>
      <dc:creator>devel</dc:creator>
      <dc:date>2020-04-10T04:33:19Z</dc:date>
    </item>
    <item>
      <title>Re: LPC55S6x/S2x/2x DMA request source - SPI?</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC55S6x-S2x-2x-DMA-request-source-SPI/m-p/1077864#M41474</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm finding the documentation very difficult, in particular the following writing mistakes:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;The term 'trigger' is used completely ambiguously for many purposes, where it is normally meant to be an input and/or event. NXP documents use trigger sometimes as a DMA input and sometimes an output. DMA inputs that start the DMA are more usually called requests. I've never seen DMA completion events called a 'trigger' by anyone except NXP. At a minimum 'trigger' should always be disambiguated: use &lt;STRONG&gt;DMA trigger input&lt;/STRONG&gt; or &lt;STRONG&gt;DMA complete output signal.&lt;/STRONG&gt;&lt;/LI&gt;&lt;LI&gt;Similarly 'chaining' is used ambiguously. Should always be either &lt;STRONG&gt;DMA buffer chaining&lt;/STRONG&gt; or &lt;STRONG&gt;DMA channel chaining&lt;/STRONG&gt;. Reference manual usually uses 'linked transfers' for buffer chaining which is better, some of the other docs are more confusing.&lt;/LI&gt;&lt;LI&gt;The semantics of DMA completion signal are not documented anywhere I can find. Presumably it is signaled on 'transfer count counted down to 0 and last transfer finished' but I'm not sure in the context of buffer chaining (what happens during ping-pong?).&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Anybody at NXP, can you please request these document clarifications/corrections?&lt;/P&gt;&lt;P&gt;Thanks!&lt;BR /&gt;Best Regards, Dave&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Apr 2020 15:18:34 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC55S6x-S2x-2x-DMA-request-source-SPI/m-p/1077864#M41474</guid>
      <dc:creator>davenadler</dc:creator>
      <dc:date>2020-04-13T15:18:34Z</dc:date>
    </item>
    <item>
      <title>Re: LPC55S6x/S2x/2x DMA request source - SPI?</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC55S6x-S2x-2x-DMA-request-source-SPI/m-p/1077865#M41475</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;PS &lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/devel@latke.net"&gt;devel@latke.net&lt;/A&gt; - This is in reference to this question: &amp;nbsp; &lt;A href="https://community.nxp.com/message/1291511"&gt;https://community.nxp.com/message/1291511&lt;/A&gt;&amp;nbsp;&lt;BR /&gt;Any ideas? I've got a couple but not sure. NXP has been unhelpful so far unfortunately...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Apr 2020 15:24:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC55S6x-S2x-2x-DMA-request-source-SPI/m-p/1077865#M41475</guid>
      <dc:creator>davenadler</dc:creator>
      <dc:date>2020-04-13T15:24:44Z</dc:date>
    </item>
    <item>
      <title>Re: LPC55S6x/S2x/2x DMA request source - SPI?</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC55S6x-S2x-2x-DMA-request-source-SPI/m-p/1077866#M41476</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;Dave Nadler wrote:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PS &lt;A _jive_internal="true" data-containerid="-1" data-containertype="-1" data-objectid="357446" data-objecttype="3" href="https://community.nxp.com/people/devel@latke.net"&gt;Andy Peters&lt;/A&gt; - This is in reference to this question: &amp;nbsp; &lt;A _jive_internal="true" data-containerid="11497" data-containertype="14" data-objectid="528670" data-objecttype="1" href="https://community.nxp.com/thread/528670"&gt;DMA for Flexcomm SPI with 20-24-bit peripherals?&lt;/A&gt;&amp;nbsp;&lt;BR /&gt;Any ideas? I've got a couple but not sure. NXP has been unhelpful so far unfortunately...&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Honestly, I can't help with that. I haven't delved into SPI and DMA yet (but it's on my list).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I just spent a good part of my evening yesterday trying to get a simple USART interrupt to work. Turns out that the stupid library had an override for the default handler and so it ignored &lt;EM&gt;my&lt;/EM&gt; override handler. I had to comment out the override in fsl_flexcomm.c -- it's just daft and overcomplicated. I don't even know why it was using fsl_flexcomm.c.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Apr 2020 20:35:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC55S6x-S2x-2x-DMA-request-source-SPI/m-p/1077866#M41476</guid>
      <dc:creator>devel</dc:creator>
      <dc:date>2020-04-13T20:35:38Z</dc:date>
    </item>
    <item>
      <title>Re: LPC55S6x/S2x/2x DMA request source - SPI?</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC55S6x-S2x-2x-DMA-request-source-SPI/m-p/1077867#M41477</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello &lt;SPAN class=""&gt;&lt;A _jive_internal="true" class="" data-content-finding="Community" data-userid="288164" data-username="davenadler" href="https://community.nxp.com/people/davenadler"&gt;Dave Nadler&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="text-align: justify;"&gt;Regarding the documentation, thank you for letting me know, I will inform your comments to the corresponding team.&lt;/P&gt;&lt;P style="text-align: justify;"&gt;I apologize for the inconvenience this is causing you, please let me help you clarifying these points to you:&lt;/P&gt;&lt;P style="text-align: justify;"&gt;&amp;nbsp;&lt;/P&gt;&lt;UL&gt;&lt;LI style="text-align: justify;"&gt;The "trigger output" is a signal of the channel that can be used as input trigger for another DMA channel. The DMA requests are connected to a peripheral, these requests go through a multiplexer where they are associated with a trigger. This image may help to understand this:&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_14.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/108012iD15CC1ED57421E44/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_14.png" alt="pastedImage_14.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;UL&gt;&lt;LI style="text-align: justify;"&gt;The main difference of the channel chaining and linked transfer are the descriptors. A linked transfer can use any number of descriptors to define a complicated transfer, on the other hand, the channel chaining allows us to start the transfer of a channel when another channel just completed its operations without CPU intervention.&lt;/LI&gt;&lt;/UL&gt;&lt;P style="text-align: justify;"&gt;&amp;nbsp;&lt;/P&gt;&lt;UL style="text-align: justify;"&gt;&lt;LI&gt;&amp;nbsp;Under Table 435 we have the Channel control and status register, the TRIG&amp;nbsp; bit can be used to indicate the transfer status. This bit is cleared at the end of an entire transfer or upon reloading when CLRTRIG = 1.&lt;/LI&gt;&lt;/UL&gt;&lt;P style="text-align: justify;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="text-align: justify;"&gt;Please let me know if this is helpful, if you have more questions do not hesitate to ask me.&lt;/P&gt;&lt;P style="text-align: justify;"&gt;Best regards,&lt;/P&gt;&lt;P style="text-align: justify;"&gt;Omar&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Apr 2020 21:16:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC55S6x-S2x-2x-DMA-request-source-SPI/m-p/1077867#M41477</guid>
      <dc:creator>Omar_Anguiano</dc:creator>
      <dc:date>2020-04-15T21:16:22Z</dc:date>
    </item>
  </channel>
</rss>

