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
  • It doesn't work for me, I increased  `QSPI_DEF_WAIT_TIME_US` to 1000. Did you ever try to divide an external flash into two parts? One part for the XIP code, another part for a file system or just flash operation.

    I initialize nrfx_qspi In the bootloader to enable XIP, if I initialize nrfx_qspi in the application again, it won't execute any code and gets stuck. If I don't initialize nrfx_qspi in the application, it gets timeout issue as we're talking about.

Reply
  • It doesn't work for me, I increased  `QSPI_DEF_WAIT_TIME_US` to 1000. Did you ever try to divide an external flash into two parts? One part for the XIP code, another part for a file system or just flash operation.

    I initialize nrfx_qspi In the bootloader to enable XIP, if I initialize nrfx_qspi in the application again, it won't execute any code and gets stuck. If I don't initialize nrfx_qspi in the application, it gets timeout issue as we're talking about.

Children
No Data
Related