For FlexSPI, is it mandatory to have a kFLEXSPI_Command_SDR command before a kFLEXSPI_Command_WRITE_SDR in a LUT sequence?
I'm trying to write arbitrary data via FlexSPI without sending a fixed command code first. At the moment I'm trying to write a single byte as a test. The following LUT sequence apparently has no effect:
FLEXSPI_LUT_SEQ(kFLEXSPI_Command_WRITE_SDR, kFLEXSPI_1PAD, 0x00, kFLEXSPI_Command_STOP, kFLEXSPI_1PAD, 0)
When I use the following LUT sequence, I can see that command byte 0xAA followed by my data byte is sent:
FLEXSPI_LUT_SEQ(kFLEXSPI_Command_SDR, kFLEXSPI_1PAD, 0xAA, kFLEXSPI_Command_WRITE_SDR, kFLEXSPI_1PAD, 0x00),
This is the code to perform the FlexSPI transfer:
flexspi_transfer_t flashXfer;
flashXfer.deviceAddress = 0;
flashXfer.port = FLASH_PORT;
flashXfer.cmdType = kFLEXSPI_Write;
flashXfer.SeqNumber = 1;
flashXfer.seqIndex = NOR_CMD_LUT_SEQ_IDX_WRITE;
flashXfer.data = data;
flashXfer.dataSize = 1;
status_t status = FLEXSPI_TransferBlocking(base, &flashXfer);
I could not find anything in the "i.MX 8M Nano Applications Processor Reference Manual" that would indicate such a restriction.
Thanks
Stephan