<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Using QSPI with DMA on nRF5340DK</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/90219/using-qspi-with-dma-on-nrf5340dk</link><description>Hi there, 
 I am currently developing on the nRF5340DK and am doing some very processor-intensive work (@ 128MHz) on data read from the QSPI bus. I would like to set up non-blocking transactions between the application core and the flash chip (mx25r6435f</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 01 Aug 2022 23:29:02 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/90219/using-qspi-with-dma-on-nrf5340dk" /><item><title>RE: Using QSPI with DMA on nRF5340DK</title><link>https://devzone.nordicsemi.com/thread/379598?ContentTypeID=1</link><pubDate>Mon, 01 Aug 2022 23:29:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0827956b-e0d3-4ce4-bd23-6ad213dbbc16</guid><dc:creator>bryan_aerel</dc:creator><description>&lt;p&gt;Hi Kenneth,&lt;/p&gt;
&lt;p&gt;Thanks for the reply and extra information. I was able to get the flash driver integrated into its own synchronous thread and the setup overhead is sufficiently low while allowing my processing thread to operate while the transactions were taking place provided that my thread priorities are setup correctly.&lt;/p&gt;
&lt;p&gt;Thanks for your help!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Using QSPI with DMA on nRF5340DK</title><link>https://devzone.nordicsemi.com/thread/378050?ContentTypeID=1</link><pubDate>Thu, 21 Jul 2022 10:52:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bfed945b-02b3-4619-b6eb-33a0693857f9</guid><dc:creator>Kenneth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I would have tried excatly the same as you do. First try to place the syncrhonous api in it&amp;#39;s own thread, and see if that is sufficient, or if you need to use the nrfx drivers directly. In any case all transacation should be using DMA (we call it EasyDMA) on the lower abstractions layers for all peripherals, with interrupts only occuring when a transacation is finished. I don&amp;#39;t see any reason why you can&amp;#39;t implement either of your two suggestions.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;br /&gt;Kenneth&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>