<?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>quad-enable-requirements = &amp;quot;NONE&amp;quot; does not compile for NRF QSPI driver</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/124971/quad-enable-requirements-none-does-not-compile-for-nrf-qspi-driver</link><description>Hi, 
 I&amp;#39;m trying to enable support for MT25QL01GBBB memory on nrF5340DK. Existing flash has been soldered-off, the one from Micron has been soldered-in with two pull-up resistors for P.0.15 and P0.16 lines (QSPI2 and QSPI3). 
 I can acces memory via SPI</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 28 Oct 2025 11:19:26 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/124971/quad-enable-requirements-none-does-not-compile-for-nrf-qspi-driver" /><item><title>RE: quad-enable-requirements = "NONE" does not compile for NRF QSPI driver</title><link>https://devzone.nordicsemi.com/thread/552624?ContentTypeID=1</link><pubDate>Tue, 28 Oct 2025 11:19:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3feb6a33-e357-4ee8-93f5-7acbaca32caf</guid><dc:creator>Kazi Afroza Sultana</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;This problem is fixed here&amp;nbsp;&lt;a href="https://github.com/zephyrproject-rtos/zephyr/pull/98387"&gt;drivers: flash: nrf_qspi_nor: Fix compilation with QER set to NONE by anangl · Pull Request #98387 · zephyrproject-rtos/zephyr · GitHub&lt;/a&gt;&amp;nbsp;you can look at.&lt;/p&gt;
&lt;p&gt;Thanks.&lt;/p&gt;
&lt;p&gt;BR&lt;/p&gt;
&lt;p&gt;Kazi&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: quad-enable-requirements = "NONE" does not compile for NRF QSPI driver</title><link>https://devzone.nordicsemi.com/thread/551868?ContentTypeID=1</link><pubDate>Sat, 18 Oct 2025 22:05:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:551735c0-a37a-45d2-8bb4-1dbf2ce25a64</guid><dc:creator>reavertm</dc:creator><description>&lt;p&gt;&amp;gt;&amp;nbsp;&lt;span&gt;No, it doesn&amp;#39;t. If you have&amp;nbsp;CONFIG_SPI_NOR_SFDP_DEVICETREE set in config,&amp;nbsp;sfdp-bpf and other sfdp-* properties will not be ignored.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;You sound quite confident about it but I think you are mistaken.&lt;/p&gt;
&lt;p&gt;CONFIG_SPI_NOR_.. is for &lt;strong&gt;jedec,spi-nor&lt;/strong&gt; driver, not for &lt;strong&gt;nordic,qspi-nor&lt;/strong&gt; driver.&lt;/p&gt;
&lt;p&gt;And &lt;strong&gt;compatible = &amp;quot;jedec,spi-nor&amp;quot;&lt;/strong&gt; cannot be used under qspi devicetree node. Logical, as spi-nor is different driver.&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I can see callback setting only:&lt;/span&gt;&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;#if defined(CONFIG_FLASH_JESD216_API)
.sfdp_read = qspi_sfdp_read,
.read_jedec_id = qspi_read_jedec_id,
#endif /* CONFIG_FLASH_JESD216_API */
&lt;/pre&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;Other drivers do call&amp;nbsp;jesd216_bfp_read_support() to parse command opcodes, &lt;strong&gt;nordic,qspi-nor&lt;/strong&gt; does not.&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;Logic analyzer also doesn&amp;#39;t show any &amp;quot;enable 32bit addrs&amp;quot;&amp;nbsp;commands being sent, as would have been retrieved from sfdp-bpf property.&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;In fact, this is another &amp;quot;problem&amp;quot; - &amp;quot;enter 32bit addressing&amp;quot; command is only sent when&amp;nbsp;enter-4byte-addr devicetree property is defined. I think it should have been sent when &amp;quot;&lt;/span&gt;address-size-32&amp;quot; property is set (either from hardcoded default value, devicetree property or SFDPD). But that one can be configured at least.&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;I think the &lt;strong&gt;nordic,qspi-nor&lt;/strong&gt; would benefit from being able to define command opcodes for &amp;quot;enabling quad operations&amp;quot;. Not all flash modules do that via status register - in ex memory in question&amp;nbsp;MT25QL01GBBB doesn&amp;#39;t - we switched to&amp;nbsp;W25Q01JV because of this.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: quad-enable-requirements = "NONE" does not compile for NRF QSPI driver</title><link>https://devzone.nordicsemi.com/thread/551799?ContentTypeID=1</link><pubDate>Fri, 17 Oct 2025 10:35:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:cdf77a0d-6dce-4892-a372-13dd52ba5c8b</guid><dc:creator>Kazi Afroza Sultana</dc:creator><description>&lt;p&gt;&lt;span&gt;&amp;#39;&amp;#39;If I&amp;#39;m reading code for driver well,&amp;nbsp;&lt;/span&gt;&lt;strong&gt;nordic,qspi-nor&lt;/strong&gt;&lt;span&gt;&amp;nbsp;ignores sfdp-bpf and other sfdp-* properties, right?&amp;#39;&amp;#39;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;No, it doesn&amp;#39;t. If you have&amp;nbsp;CONFIG_SPI_NOR_SFDP_DEVICETREE set in config,&amp;nbsp;sfdp-bpf and other sfdp-* properties will not be ignored.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;#39;&amp;#39;They are for&amp;nbsp;&lt;strong&gt;jedec,jesd216&lt;/strong&gt;&amp;nbsp;driver?&amp;#39;&amp;#39;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/122642/mcu-boot-with-sysbuild-with-spi-external-flash"&gt;MCU Boot with sysbuild with SPI external flash&lt;/a&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Yes.&amp;nbsp;&lt;code dir="ltr"&gt;nordic,qspi-nor&amp;nbsp;&lt;/code&gt;can also utilize these properties when configured to do so.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;#39;&amp;#39;That driver&amp;nbsp;&lt;strong&gt;jedec,jesd216&lt;/strong&gt;&amp;nbsp;can be used as fully functional QSPI driver?&lt;br /&gt;Or it;s merely a driver trait-of sort that can use to mark in devicetree that given module supports SFDPD (in ex at runtime) for&amp;nbsp;&lt;strong&gt;jedec,spi-nor&lt;/strong&gt;&amp;nbsp;driver?&lt;br /&gt;Finally, can&amp;nbsp;&lt;strong&gt;jedec,spi-nor&lt;/strong&gt;&amp;nbsp;be used as full-fledged QSPI driver?&amp;#39;&amp;#39;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;There is much specific information about this.The standard practice is to use&amp;nbsp;&lt;code dir="ltr"&gt;nordic,qspi-nor&lt;/code&gt;&amp;nbsp;for QSPI peripherals on Nordic SoCs.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I will discuss internally and will get back to you when there is an update.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: quad-enable-requirements = "NONE" does not compile for NRF QSPI driver</title><link>https://devzone.nordicsemi.com/thread/551791?ContentTypeID=1</link><pubDate>Fri, 17 Oct 2025 09:06:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0007c687-69e0-429d-b724-8dc8df076b85</guid><dc:creator>Kazi Afroza Sultana</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;&lt;span&gt;There is no official list of known good QSPI flash memories that could be used with nrf5340.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;The nordic QSPI NOR driver in Zephyr expects a &amp;#39;&amp;#39;quad-enable-requirements&amp;#39;&amp;#39; property in the device tree. When it is set to &amp;#39;&amp;#39;NONE&amp;#39;&amp;#39; ( like in your devicetree), it leads to linker error.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You may try to use a supported value like &amp;#39;&amp;#39;S2B1v1&amp;#39;&amp;#39; in the device tree&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;amp;qspi {
    flash_disk: mt25ql01gb@0 {
        compatible = &amp;quot;nordic,qspi-nor&amp;quot;;
        reg = &amp;lt;0&amp;gt;;
        writeoc = &amp;quot;pp4io&amp;quot;;
        readoc = &amp;quot;read4io&amp;quot;;
        sck-frequency = &amp;lt;8000000&amp;gt;;
        jedec-id = [20 ba 21];
        address-size-32;
        quad-enable-requirements = &amp;quot;S2B1v1&amp;quot;; // Try this as a workaround
        size = &amp;lt;0x8000000&amp;gt;;
        has-dpd;
        t-enter-dpd = &amp;lt;10000&amp;gt;;
        t-exit-dpd = &amp;lt;30000&amp;gt;;
    };
};&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: quad-enable-requirements = "NONE" does not compile for NRF QSPI driver</title><link>https://devzone.nordicsemi.com/thread/551540?ContentTypeID=1</link><pubDate>Wed, 15 Oct 2025 08:37:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:48af7e2e-3420-436b-996b-3f45ad289d5d</guid><dc:creator>reavertm</dc:creator><description>&lt;p&gt;Well, it doesn&amp;#39;t say anything about supported flash modules. It can send custom instructions, which I guess means it&amp;#39;s all up to QSPI driver, rather than the chip, to support external peripheral over QSPI.&lt;/p&gt;
&lt;p&gt;I have some other, more general questions as well, in context of latest released at the time of writing nRF Connect SDK 3.1.1.&lt;/p&gt;
&lt;p&gt;If I&amp;#39;m reading code for driver well, &lt;strong&gt;nordic,qspi-nor&lt;/strong&gt; ignores sfdp-bpf and other sfdp-* properties, right?&lt;br /&gt;They are for &lt;strong&gt;jedec,jesd216&lt;/strong&gt; driver?&lt;br /&gt;That driver &lt;strong&gt;jedec,jesd216&lt;/strong&gt; can be used as fully functional QSPI driver?&lt;br /&gt;Or it;s merely a driver trait-of sort that can use to mark in devicetree that given module supports SFDPD (in ex at runtime) for &lt;strong&gt;jedec,spi-nor&lt;/strong&gt; driver?&lt;br /&gt;Finally, can &lt;strong&gt;jedec,spi-nor&lt;/strong&gt; be used as full-fledged QSPI driver?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: quad-enable-requirements = "NONE" does not compile for NRF QSPI driver</title><link>https://devzone.nordicsemi.com/thread/551522?ContentTypeID=1</link><pubDate>Wed, 15 Oct 2025 06:28:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:62376a81-9a3e-42ea-b017-5d1ffc6a4c3b</guid><dc:creator>Turbo J</dc:creator><description>&lt;p&gt;The the technical manual for the CPU is called &amp;quot;Product Specification&amp;quot; or short PS.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: quad-enable-requirements = "NONE" does not compile for NRF QSPI driver</title><link>https://devzone.nordicsemi.com/thread/551486?ContentTypeID=1</link><pubDate>Tue, 14 Oct 2025 17:15:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c3019667-d3c9-4cc4-a456-cd4823f41317</guid><dc:creator>reavertm</dc:creator><description>&lt;p&gt;Thanks for reply. What is PS? Product Support? You mean I should ask Nordic or there is a link I can check? If so, can you paste it?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: quad-enable-requirements = "NONE" does not compile for NRF QSPI driver</title><link>https://devzone.nordicsemi.com/thread/551480?ContentTypeID=1</link><pubDate>Tue, 14 Oct 2025 15:48:32 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:85494953-0580-4d94-b8f9-946da1da04f9</guid><dc:creator>Turbo J</dc:creator><description>&lt;p&gt;The QSPI peripherial is VERY picky about its hardware support, that error might be &lt;em&gt;intentional&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Check the PS - your chip may not be accessible for this hardware.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>