Booting from QSPI with mimxrt1050 EVK


Hi All,

I'm trying to flash code, and boot out of the QSPI memory on the MIMXRT1050 EVKB board. Does anyone have experience with this? I've been unable to successfully flash so far.

Here are the steps I've taken
1. Swap 0 ohm resistors on the board as mentioned in the user guide and schematic to connect QSPI device to Soc (instead of Hyperflash part). I've triple checked that these are correct.
2. Load JLink OpenSDA firmware for the MIMXRT1050-EVK-QSPI (hold the switch, copy bin file to "MAINTENANCE" drive....)
3. Change toggle switch SW7 on board to
4. Build and load samples/basic/blinky with "west build -b mimxrt1050_evk_qspi" and "west flash"

Does anyone know if I'm missing something? Do these steps look correct?

Thanks for the help!


I've been able to program and run, but not with JLink OpenSDA debug probe. Instead I had to use the DAP Link firmware for QSPI instead ("west flash" unfortunately doesn't work with this so I'd prefer to figure out how to use the JLink debug probe instead).

I found in this link some boot settings need changed.
RT1050EVKB QSPI - NXP Community

I modified modules/hal/nxp/mcux/evkbimxrt1050/evkbimxrt1050_flexspi_nor_config.c to define this struct instead:
const flexspi_nor_config_t qspiflash_config = {
    .memConfig =
            .tag              = FLEXSPI_CFG_BLK_TAG,
            .version          = FLEXSPI_CFG_BLK_VERSION,
            .readSampleClkSrc = kFlexSPIReadSampleClk_LoopbackFromDqsPad,
            .csHoldTime       = 3u,
            .csSetupTime      = 3u,
            .sflashPadType    = kSerialFlash_4Pads,
            .serialClkFreq    = kFlexSpiSerialClk_100MHz,
            .sflashA1Size     = 8u * 1024u * 1024u,
            .lookupTable =
                    // Read LUTs
                    FLEXSPI_LUT_SEQ(DUMMY_SDR, FLEXSPI_4PAD, 0x06, READ_SDR, FLEXSPI_4PAD, 0x04),
    .pageSize           = 256u,
    .sectorSize         = 4u * 1024u,
    .blockSize          = 64u * 1024u,
    .isUniformBlockSize = false,

After these changes I was able to boot from the QSPI, but needed to do so through MCUXpresso.