This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Concurrently using XIP and QSPI to read back data from external flash

Dear Nordic,

I have a 4MB external flash on my board, I've successfully run the code on it by using XIP. However, I got stuck when I was trying to read back data from external flash. The following picture has the call stack trace. It's a failure of NRFX_ASSERT.

Some more details:

Using nrfx driver both in bootloader and application is not a good idea, because the driver status is stored in the different RAM area. I add a fake initialization function for QSPI to keep the peripheral status consistent. Do you have any better ideas?

Best Regards,

Eugene

Parents
  • Hi Hung,

    I'm not sure whether this workaround can solve my problem. Let's put it in another way, since Nordic has an example maybe called `qspi_bootloader`, imaging this, if you divide the external flash into two parts, the first part is for data storage, the second part is XIP region. To avoid the limitation that we can't execute code in XIP and access QSPI flash using the code in XIP, you put the QSPI driver in the internal flash. In your application running in the external flash, it calls the QSPI driver in the internal flash to read/write data to the data region in the external flash. Does it work?

    I'd really appreciate it if you can provide this kind of example for me.

Reply
  • Hi Hung,

    I'm not sure whether this workaround can solve my problem. Let's put it in another way, since Nordic has an example maybe called `qspi_bootloader`, imaging this, if you divide the external flash into two parts, the first part is for data storage, the second part is XIP region. To avoid the limitation that we can't execute code in XIP and access QSPI flash using the code in XIP, you put the QSPI driver in the internal flash. In your application running in the external flash, it calls the QSPI driver in the internal flash to read/write data to the data region in the external flash. Does it work?

    I'd really appreciate it if you can provide this kind of example for me.

Children
No Data
Related