<?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>QSPI and w25q64fv flash</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/35196/qspi-and-w25q64fv-flash</link><description>Hi all. I try to configure QSPI example to work with w25q64fv flash. I connected all pins from flash to same pins on nRF as on PCA10056 DK board. After all i have &amp;quot;Data inconsistent&amp;quot; message. I looked in to data array from flash and in it every element</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 17 Jul 2018 19:05:05 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/35196/qspi-and-w25q64fv-flash" /><item><title>RE: QSPI and w25q64fv flash</title><link>https://devzone.nordicsemi.com/thread/140458?ContentTypeID=1</link><pubDate>Tue, 17 Jul 2018 19:05:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4cf7389f-5401-494d-8736-865135da2684</guid><dc:creator>Anantha Keshava</dc:creator><description>&lt;p&gt;Thanks a lot &lt;a href="https://devzone.nordicsemi.com/members/kklobe"&gt;kirkus&lt;/a&gt;, I was able to make it work with WRITEOC=2 as well. This is good for my evaluation and hardware tick-off.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: QSPI and w25q64fv flash</title><link>https://devzone.nordicsemi.com/thread/140456?ContentTypeID=1</link><pubDate>Tue, 17 Jul 2018 18:11:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b023d843-3bbc-4b01-9aab-aa4a6da0577c</guid><dc:creator>kirkus</dc:creator><description>&lt;p&gt;I started with the qspi example code.&lt;/p&gt;
&lt;p&gt;Here is the config (we are using a custom board):&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;  nrfx_qspi_config_t config = {                                                                       
    .xip_offset  = NRFX_QSPI_CONFIG_XIP_OFFSET,                         
    .pins = {                                                           
      .sck_pin     = NRF_GPIO_PIN_MAP(0,22),                                
      .csn_pin     = NRF_GPIO_PIN_MAP(0,26),                                
      .io0_pin     = NRF_GPIO_PIN_MAP(0,20),                                
      .io1_pin     = NRF_GPIO_PIN_MAP(0,24),                                
      .io2_pin     = NRF_GPIO_PIN_MAP(1,00),                                
      .io3_pin     = NRF_GPIO_PIN_MAP(0,15),                                
    },                                                                  
    .irq_priority   = 7,           
    .prot_if = {                                                        
        .readoc     = NRF_QSPI_READOC_READ4IO,       
        .writeoc    = NRF_QSPI_WRITEOC_PP4O,     
        .addrmode   = NRF_QSPI_ADDRMODE_24BIT,   
        .dpmconfig  = false,                                            
    },                                                                  
    .phy_if = {                                                         
        .sck_freq   = NRF_QSPI_FREQ_32MDIV2, 
        .sck_delay  = 1,              
        .spi_mode   = NRF_QSPI_MODE_0,       
        .dpmen      = false                                             
    },                                                                  
  };
&lt;/pre&gt;&lt;br /&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;And I just skipped the configure_memory function, since the power-on defaults for our part (W25Q128JV) seem to work just fine.&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;From a quick look at&amp;nbsp;nrf_qspi.h, the problem with WRITEOC=3 seems to be that the opcode is 0x38, which on winbond is &amp;quot;Enter QPI mode&amp;quot;, but for the Macronix part on the DK, it&amp;#39;s &amp;quot;4PP&amp;quot; (quad page program).&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: QSPI and w25q64fv flash</title><link>https://devzone.nordicsemi.com/thread/140446?ContentTypeID=1</link><pubDate>Tue, 17 Jul 2018 16:53:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e3465156-219b-4be4-9d58-19a60082d649</guid><dc:creator>Anantha Keshava</dc:creator><description>&lt;p&gt;Thanks &lt;a href="https://devzone.nordicsemi.com/members/kklobe"&gt;kirkus&lt;/a&gt;,&lt;/p&gt;
&lt;p&gt;Would it be possible to share the QSPI configuration for PIN and IO config 1 and 2 for your working setup?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: QSPI and w25q64fv flash</title><link>https://devzone.nordicsemi.com/thread/140444?ContentTypeID=1</link><pubDate>Tue, 17 Jul 2018 16:48:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e14ee062-db14-46c6-b6a6-ace4b621b2bb</guid><dc:creator>kirkus</dc:creator><description>&lt;p&gt;I played around a bit too and was able to get it work with&amp;nbsp;&lt;span&gt;NRF_&lt;/span&gt;&lt;span&gt;QSPI_CONFIG_READOC&amp;nbsp;= 4 and&amp;nbsp;NRF_QSPI_CONFIG_WRITEOC&amp;nbsp;= 2&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: QSPI and w25q64fv flash</title><link>https://devzone.nordicsemi.com/thread/140294?ContentTypeID=1</link><pubDate>Mon, 16 Jul 2018 21:31:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3457c6f1-1ab8-4590-a4e0-f6bc159defd9</guid><dc:creator>Anantha Keshava</dc:creator><description>&lt;p&gt;I played some more and found that the read/write is consistent if I use fast read / write (NRF_QSPI_CONFIG_READOC = 0 and NRF_QSPI_CONFIG_WRITEOC = 0)&lt;/p&gt;
&lt;p&gt;However, I get inconsistent data if I use Read4IO or PP4IO (&lt;span&gt;NRF_&lt;/span&gt;&lt;span&gt;QSPI_CONFIG_READOC&amp;nbsp;= 4 and&amp;nbsp;NRF_QSPI_CONFIG_WRITEOC&amp;nbsp;= 3)&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: QSPI and w25q64fv flash</title><link>https://devzone.nordicsemi.com/thread/140282?ContentTypeID=1</link><pubDate>Mon, 16 Jul 2018 18:10:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:78b07ced-a3f4-4170-87e2-5d84fbe22d0e</guid><dc:creator>Anantha Keshava</dc:creator><description>&lt;p&gt;Hi &lt;a href="https://devzone.nordicsemi.com/members/stian"&gt;Stian Røed Hafskjold&lt;/a&gt;, &lt;a href="https://devzone.nordicsemi.com/members/stifler86"&gt;Stas&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Could you please provide the PIN configuration used? I&amp;#39;m trying to the use the same family Flash for my evaluation and will appreciate the help.&lt;/p&gt;
&lt;p&gt;I used:&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;// &amp;lt;s&amp;gt; NRFX_QSPI_PIN_SCK - SCK pin value.
#ifndef NRFX_QSPI_PIN_SCK
#define NRFX_QSPI_PIN_SCK BSP_QSPI_SCK_PIN
#endif

// &amp;lt;s&amp;gt; NRFX_QSPI_PIN_CSN - CSN pin value.
#ifndef NRFX_QSPI_PIN_CSN
#define NRFX_QSPI_PIN_CSN BSP_QSPI_CSN_PIN
#endif

// &amp;lt;s&amp;gt; NRFX_QSPI_PIN_IO0 - IO0 pin value.
#ifndef NRFX_QSPI_PIN_IO0
#define NRFX_QSPI_PIN_IO0 BSP_QSPI_IO0_PIN
#endif

// &amp;lt;s&amp;gt; NRFX_QSPI_PIN_IO1 - IO1 pin value.
#ifndef NRFX_QSPI_PIN_IO1
#define NRFX_QSPI_PIN_IO1 BSP_QSPI_IO1_PIN
#endif

// &amp;lt;s&amp;gt; NRFX_QSPI_PIN_IO2 - IO2 pin value.
#ifndef NRFX_QSPI_PIN_IO2
#define NRFX_QSPI_PIN_IO2 BSP_QSPI_IO2_PIN
#endif

// &amp;lt;s&amp;gt; NRFX_QSPI_PIN_IO3 - IO3 pin value.
#ifndef NRFX_QSPI_PIN_IO3
#define NRFX_QSPI_PIN_IO3 BSP_QSPI_IO3_PIN
#endif
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;However, I see all the data read after write to be 0xFF&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: QSPI and w25q64fv flash</title><link>https://devzone.nordicsemi.com/thread/138722?ContentTypeID=1</link><pubDate>Tue, 03 Jul 2018 10:05:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:80a69bb7-a6a4-449e-b37c-0d25e389a577</guid><dc:creator>Stian R&amp;#248;ed Hafskjold</dc:creator><description>&lt;p&gt;If the data is randomly corrupted I think you have a bad connection. This can also be the reason why the communication timed out when you connected the logic analyzer. Can you describe your hardware setup, how are you connecting the QSPI slave?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: QSPI and w25q64fv flash</title><link>https://devzone.nordicsemi.com/thread/138377?ContentTypeID=1</link><pubDate>Sat, 30 Jun 2018 12:30:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4fe579b3-039e-4453-bf0e-0a58cc140840</guid><dc:creator>Stas</dc:creator><description>&lt;p&gt;I successful configure driver to work with my flash. Now write and read work but only for small amount of data. If i try to write more than 10-18 bytes of data, data corrupts. On different frequencies amount of bytes which i can to write are different. I try all&amp;nbsp;&lt;span&gt;frequencies&amp;nbsp;but no have&amp;nbsp;success.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: QSPI and w25q64fv flash</title><link>https://devzone.nordicsemi.com/thread/136789?ContentTypeID=1</link><pubDate>Tue, 19 Jun 2018 14:21:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8c0ff3ce-0d83-4b03-82f5-b0cdf7c490be</guid><dc:creator>Stian R&amp;#248;ed Hafskjold</dc:creator><description>&lt;p&gt;Hi, have you initialized the QSPI to work with your flash? &lt;a href="http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.0.0/hardware_driver_qspi.html?cp=4_0_0_2_0_10_1_1#qspi_driver_initialize_driver"&gt;http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.0.0/hardware_driver_qspi.html?cp=4_0_0_2_0_10_1_1#qspi_driver_initialize_driver&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;We should also try to figure out why the logic analyzer causes the driver to timeout, because the next step would be to look at the logic trace to see if the flash is initialized correctly. Which logic analyzer are you using?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>