<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://test-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>Interrupt Missing In When QSPI Is Configured In Interrupt Mode</title><link>https://test-devzone.nordicsemi.com/f/nordic-q-a/88666/interrupt-missing-in-when-qspi-is-configured-in-interrupt-mode</link><description>Hello, 
 Aim : To write and read x bytes from the QSPI interfaced external PSRAM(APS6404L-3SQR) using the nRf52840. 
 Configuration : Following is the configuration of the QSPI 
 Protocol layer interface configuration Execute in place operation : OFF</description><dc:language>en-US</dc:language><generator>Telligent Community 13 Non-Production</generator><lastBuildDate>Tue, 14 Jun 2022 11:08:15 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://test-devzone.nordicsemi.com/f/nordic-q-a/88666/interrupt-missing-in-when-qspi-is-configured-in-interrupt-mode" /><item><title>RE: Interrupt Missing In When QSPI Is Configured In Interrupt Mode</title><link>https://test-devzone.nordicsemi.com/thread/372351?ContentTypeID=1</link><pubDate>Tue, 14 Jun 2022 11:08:15 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0d9d324b-0131-4fc0-94ff-7c683dbfd69a</guid><dc:creator>user111786</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;As previously said, length must be multiple of 4 bytes. Even though you can write more bytes (not multiple of 4), you should be aware that it is against the &lt;a href="https://infocenter.nordicsemi.com/pdf/nRF52840_PS_v1.7.pdf"&gt;product specification&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Interrupt Missing In When QSPI Is Configured In Interrupt Mode</title><link>https://test-devzone.nordicsemi.com/thread/372085?ContentTypeID=1</link><pubDate>Mon, 13 Jun 2022 10:33:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:37070644-7dc4-4660-ae96-f3245841244e</guid><dc:creator>user89683</dc:creator><description>&lt;p&gt;Hello Dejans,&lt;/p&gt;
&lt;p&gt;As mentioned in the previous answer writing non-aligned words(WRITE:CNT having non multiple of 4) are also successful.&lt;br /&gt;We are observing this issue only when the WRITE:CNT is lesser than 4&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thanks,&lt;br /&gt;Sakib&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Interrupt Missing In When QSPI Is Configured In Interrupt Mode</title><link>https://test-devzone.nordicsemi.com/thread/372046?ContentTypeID=1</link><pubDate>Mon, 13 Jun 2022 08:42:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:55dc2d57-145f-425a-8ec8-6d359683121a</guid><dc:creator>user111786</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;&lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fps_nrf52840%2Fqspi.html&amp;amp;cp=4_0_0_5_18_9_15&amp;amp;anchor=register.WRITE.CNT"&gt;WRITE.CNT&lt;/a&gt;&amp;nbsp;is transfer length in bytes. The length must be multiple of 4 bytes.&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Interrupt Missing In When QSPI Is Configured In Interrupt Mode</title><link>https://test-devzone.nordicsemi.com/thread/372013?ContentTypeID=1</link><pubDate>Mon, 13 Jun 2022 06:36:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:cacc0d0c-ad52-4cab-b98b-643c06f6419f</guid><dc:creator>user89683</dc:creator><description>&lt;p&gt;Hello Dejans,&lt;/p&gt;
&lt;p&gt;Thank you for the information, Following are our observation while debugging the issue&lt;/p&gt;
&lt;p&gt;The interrupt is never generated if the number of bytes to be written is lesser than 4 (i.e 1, 2, 3)&lt;br /&gt;i.e In the &amp;quot;p_reg-&amp;gt;WRITE.CNT = length&amp;quot; the length is lesser than 4&lt;br /&gt;&lt;br /&gt;Please note that the write is successful for all the values greater than equal to 4.&lt;br /&gt;&lt;br /&gt;Please let us know if this is the expected working of the QSPI driver?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thanks,&lt;br /&gt;Sakib&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Interrupt Missing In When QSPI Is Configured In Interrupt Mode</title><link>https://test-devzone.nordicsemi.com/thread/371491?ContentTypeID=1</link><pubDate>Wed, 08 Jun 2022 16:33:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e2946039-9e04-481a-aa06-5c59ab429a2d</guid><dc:creator>user111786</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;With regard to your question about interrupts not being generated, SoftDevice determines &lt;a href="https://infocenter.nordicsemi.com/topic/sds_s140/SDS/s1xx/processor_avail_interrupt_latency/exception_mgmt_sd.html"&gt;interrupt priority levels&lt;/a&gt; in such&amp;nbsp; way that most critical interrupts have lowest possible interrupt levels. &lt;br /&gt;In the same link you can read that it is expected for interrupts to be postponed or preemted which can lead to a longer perceived interrupt latency and execution time.&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Interrupt Missing In When QSPI Is Configured In Interrupt Mode</title><link>https://test-devzone.nordicsemi.com/thread/371221?ContentTypeID=1</link><pubDate>Tue, 07 Jun 2022 16:17:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e234a801-739d-442e-a85b-fbb9d7a1fa47</guid><dc:creator>user89683</dc:creator><description>&lt;p&gt;Hello Dejans,&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;We are using SDK V15.3.0, softdevice S140(In disabled state)&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;Following are more details on the active peripherals, their functions and priority levels while the PSRAM read/write action is performed&lt;/p&gt;
&lt;p&gt;1. General purpose timer Instance 1 running at frequency of&amp;nbsp;1Khz with priority level at 6&lt;br /&gt;2. RTC timer sampling 5 channel enabled internal SAADC&amp;nbsp;&lt;span&gt;at frequency of&amp;nbsp;&lt;/span&gt;&lt;span&gt;1Khz with both the SAADC and RTC priority levels at 6&lt;br /&gt;&lt;/span&gt;3. UART at the baud rate of 115200 with priority level at 6&lt;br /&gt;4. Application timers with priority level at 6&lt;br /&gt;5. SPI interfaced external ADC collecting sensor data using PPI 100kSamples/Sec, the SPI priority level at 2&lt;br /&gt;6. QSPI at priority level 6&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Referring to our PsramRead and PsramWrite functions, the control waits in the while loop until the interrupt indicates free state of the QSPI for a maximum of 10sec(the WatchDog triggers after 10 sec)&lt;br /&gt;We believe that the interrupts in the cortex M4 controllers may occur in a delayed form if configured at a lower priority but never be missed, please let us know if this understanding is valid for the issue that we are facing?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thanks and Regards,&lt;br /&gt;Sakib&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Interrupt Missing In When QSPI Is Configured In Interrupt Mode</title><link>https://test-devzone.nordicsemi.com/thread/371166?ContentTypeID=1</link><pubDate>Tue, 07 Jun 2022 13:13:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fdc41c3b-a65d-4602-a8af-d4b6bedb9cce</guid><dc:creator>user111786</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;Which SDK and version do you use?&lt;br /&gt;&lt;br /&gt;If you use nRF5, you can take a look at &lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fsdk_nrf5_v17.1.0%2Fhardware_driver_qspi.html"&gt;qspi&lt;/a&gt; in the documentation. You could also take a look at the sample in \examples\peripheral\qspi.&lt;br /&gt;You could try changing interrupt priority value. More information about interrupt priorities is available in this &lt;a href="https://test-devzone.nordicsemi.com/f/nordic-q-a/72837/interrupt-priorities-and-fatfs"&gt;discussion&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>