<?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>Working with different NOR Flash jedec-id on same dts</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/114915/working-with-different-nor-flash-jedec-id-on-same-dts</link><description>Hello, 
 I&amp;#39;m using nor flash with qspi as an external storage. 
 I&amp;#39;m facing problem where i can have different NOR Flash chips (with different jedec-id). Is there a way to make the qspi driver work without giving it specific jedec-id? 
 Thanks.</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 01 Oct 2024 12:47:48 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/114915/working-with-different-nor-flash-jedec-id-on-same-dts" /><item><title>RE: Working with different NOR Flash jedec-id on same dts</title><link>https://devzone.nordicsemi.com/thread/504528?ContentTypeID=1</link><pubDate>Tue, 01 Oct 2024 12:47:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e53be46d-8f4f-4894-8689-c2215fb2ee69</guid><dc:creator>Udi Vahaba</dc:creator><description>&lt;p&gt;&lt;span&gt;adding&amp;nbsp;&lt;/span&gt;&lt;span&gt;&lt;span dir="ltr"&gt;CONFIG_FLASH_JESD216_API=y and using the sample you provide did compiled and i was able to run it.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span dir="ltr"&gt;it printed the correct parameters of the nor flash, but, and it is very important - it worked because my dts jedec-id was correct.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span dir="ltr"&gt;means that when i will face the situation where for any reason i dont know my jedec-id and it is hard coded in the dts, i wont be able to start my program to even recognize the new jedec-id.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Working with different NOR Flash jedec-id on same dts</title><link>https://devzone.nordicsemi.com/thread/504518?ContentTypeID=1</link><pubDate>Tue, 01 Oct 2024 11:57:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d397d17c-6664-4b1b-b624-3d80d25558c8</guid><dc:creator>&amp;#216;yvind</dc:creator><description>&lt;p&gt;My apologies, as mentioned we do not have any samples of this in our SDK, so this is a little hit and miss to find the correct setting.&lt;/p&gt;
&lt;p&gt;Could you try adding&amp;nbsp;&lt;span&gt;&lt;span dir="ltr"&gt;CONFIG_FLASH_JESD216_API=y&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;From &lt;code&gt;zephyr\drivers\flash\Kconfig&lt;/code&gt; it states&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;config FLASH_JESD216_API
	bool &amp;quot;Provide API to read JESD216 flash parameters&amp;quot;
	depends on FLASH_JESD216
	help
	  This option extends the Zephyr flash API with the ability
	  to access the Serial Flash Discoverable Parameter section
	  allowing runtime determination of serial flash parameters
	  for flash drivers that expose this capability.&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;There is also a driver sample that could be helpful : &lt;a href="https://docs.nordicsemi.com/bundle/ncs-latest/page/zephyr/samples/drivers/jesd216/README.html"&gt;JESD216 sample in the Zephyr repo&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Working with different NOR Flash jedec-id on same dts</title><link>https://devzone.nordicsemi.com/thread/504485?ContentTypeID=1</link><pubDate>Tue, 01 Oct 2024 08:26:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bfc6d33d-090b-49fb-96dc-5ef99a05bfcb</guid><dc:creator>Udi Vahaba</dc:creator><description>&lt;p&gt;this config should work for qspi usage?&lt;/p&gt;
&lt;p&gt;assuming that this will fit qspi - I don&amp;#39;t get how the change in config let me control it from the code to not return an error of the wrong jedec-id. (and preferably to detect the jedec-id and use it)&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;To make it more clear - this is how i use it now:&lt;br /&gt;&lt;br /&gt;dts&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;amp;qspi {
    status = &amp;quot;okay&amp;quot;;
    pinctrl-0 = &amp;lt;&amp;amp;qspi_default&amp;gt;;
    pinctrl-1 = &amp;lt;&amp;amp;qspi_sleep&amp;gt;;
    pinctrl-names = &amp;quot;default&amp;quot;, &amp;quot;sleep&amp;quot;;
    mynorflash: mynorflash@0 {
        compatible = &amp;quot;nordic,qspi-nor&amp;quot;;
        reg = &amp;lt;0&amp;gt;;
        sck-frequency = &amp;lt;16000000&amp;gt;;
        jedec-id = [some ID];
        size = &amp;lt;33554432&amp;gt;;
        has-dpd;
        t-enter-dpd = &amp;lt;3000&amp;gt;;
        t-exit-dpd = &amp;lt;5000&amp;gt;;
        quad-enable-requirements = &amp;quot;S2B1v1&amp;quot;;
        writeoc = &amp;quot;pp4o&amp;quot;;
        readoc = &amp;quot;read4io&amp;quot;;
    };
};&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;sysbuild.conf&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;SB_CONFIG_BOOTLOADER_MCUBOOT=y
SB_CONFIG_PM_EXTERNAL_FLASH_MCUBOOT_SECONDARY=y
SB_CONFIG_SECURE_BOOT_APPCORE=y&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;when uploading the code to a board with different nor flash manufacturer, the program can&amp;#39;t start because the jedec-id is wrong (prompted with ERROR LOG).&lt;br /&gt;&lt;br /&gt;How does the config you refer me to will help to solve this problem?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Working with different NOR Flash jedec-id on same dts</title><link>https://devzone.nordicsemi.com/thread/504435?ContentTypeID=1</link><pubDate>Mon, 30 Sep 2024 20:00:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e2fa5923-0865-4648-8e1c-70aab36f0429</guid><dc:creator>&amp;#216;yvind</dc:creator><description>&lt;p&gt;Can you please test with setting CONFIG_&lt;span&gt;SPI_NOR_SFDP_RUNTIME=y in your prj.conf&lt;/span&gt;&lt;/p&gt;
&lt;div&gt;From&amp;nbsp;&lt;code&gt;zephyr\drivers\flash\Kconfig.nor&lt;/code&gt;&lt;br /&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;pre class="ui-code" data-mode="text"&gt;config SPI_NOR_SFDP_RUNTIME
    bool &amp;quot;Read flash parameters at runtime&amp;quot;
    help
        Read all flash device characteristics from the device at runtime.
        This option is the most flexible as it should provide functionality
        for all supported JESD216-compatible devices.&lt;/pre&gt;&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;This might be a solution to determine during runtime.&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Working with different NOR Flash jedec-id on same dts</title><link>https://devzone.nordicsemi.com/thread/503825?ContentTypeID=1</link><pubDate>Wed, 25 Sep 2024 17:27:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0089cd8a-230b-4ebd-968c-0437106ea68a</guid><dc:creator>Udi Vahaba</dc:creator><description>&lt;p&gt;Thanks for replying.&lt;/p&gt;
&lt;p&gt;First of all, it&amp;#39;s good to hear that it is possible. I have some specific requirements for the use of a different NOR Flash. In case I can&amp;#39;t know the jedec-id at all, up to the point where the device is already deployed, &lt;strong&gt;is there a way to determine it at runtime? Or make it accept any jedec-id?&lt;/strong&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Working with different NOR Flash jedec-id on same dts</title><link>https://devzone.nordicsemi.com/thread/503801?ContentTypeID=1</link><pubDate>Wed, 25 Sep 2024 14:28:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4e8b00bb-a288-41d7-8510-abdb18f87548</guid><dc:creator>&amp;#216;yvind</dc:creator><description>&lt;p&gt;Hello,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Sorry, DevZone has been somewhat challenging the last days and my answer was for some reason not sent.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;There should be support for it, but I have no examples at the moment. You should be able to configure this through the .dts file and then access it as normal.&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;br /&gt;Øyvind&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>