My call to Nor_Flash_Init() used to work, but now fails in my modified project evkmimxrt1064_flash_component_nor.
EVK-MIMXRT1064, Segger Jlink Pro, MCUXpresso 10.3, NXP MIMXRT1064 SDK 2.6.1.
Calling Nor_Flash_Init() causes the MCU to hang. I try rebooting, deleting my .launch file before debugging, re-enumerating my Segger Jlink by unplugging/replugging its USB connection, now am currently at a loss as to why it fails. Nor_Flash_Init() ultimately calls FLEXSPI_NOR_ReadSFDP(). which seems to result in kStatus_FLEXSPINOR_Unsupported_SFDP_Version because the signature is incorrect. Any suggestions are welcome!
Nor_Flash_Init() calls FLEXSPI_NOR_GenerateConfigBlockUsingSFDP() which calls FLEXSPI_NOR_ProbeCommandMode() which calls FLEXSPI_NOR_ReadSFDP(). The function returns kStatsus_Success, however the sfdp_header is filled with 0xff's, and so the signatures contains the value 0xffffffff.
In the original example provided by NXP, the test is for the external Nor Flash memory that is present on eval board EVL-MIMXRT1064. This program should be able to execute out of RAM or internal FLASH. To test RAM execution, we check the box "Link application to RAM" in C/C++ Build=>Settings=>MCU Linker=>Managed Linker Script.