Hi All,
We are using Micron Serial NOR MT25QL256ABA (32MB)flash and not able to use 'flexspi_nor_flash_page_program' API to program beyond 16MB. Upto 16MB all good.
Now I have enabled 4 byte addressing mode to test this. My relevant LUT entries are :
/* Enter 4 byte addressing mode */
[4 * NOR_CMD_LUT_SEQ_IDX_ENTER_4BYTE_ADDR_MODE] =
FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0xB7, kFLEXSPI_Command_STOP, kFLEXSPI_1PAD, 0),
/* Page Program - quad mode */
[4 * NOR_CMD_LUT_SEQ_IDX_PAGEPROGRAM_QUAD] =
FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0x34, kFLEXSPI_Command_RADDR_SDR, kFLEXSPI_1PAD, 0x20),
[4 * NOR_CMD_LUT_SEQ_IDX_PAGEPROGRAM_QUAD + 1] =
FLEXSPI_LUT_SEQ(kFLEXSPI_Command_WRITE_SDR, kFLEXSPI_4PAD, 0x04, kFLEXSPI_Command_STOP, kFLEXSPI_1PAD, 0),
I have called enter 4 byte addressing mode API before the write.
I can see that it writes some data to the flash (when I dump it using BLHost), but it is not the data I have written.
I would like to know whether I am missing something here.
Thank you in advance.
Note 1: I am modifying the NXP SDK example 'flexspi_nor_polling_transfer' project
Note2 : I am able to program beyond 16MB if I use BLHost and MCUXpresso
iMXRT1170