We are having trouble getting a custom i.MX6sx board to boot from QSPI:
It has a single Micron N25Q256A flash device connected to the QSPI2A port of the processor.
We have built our custom uboot and linux kernel images image to be used with the mfgtool, and to boot the target from QSPI.
We updated the mfgtool script (ucl2.xml) to program our the BOOT_CFG fuses like so:
BOOT_CFG1 = 0x18
BOOT_CFG4 = 0x10
We have selected the qspi-nor-micron-n25q256a-config file to be programmed by the mfgtool.
But we are unable to get the system to boot. It appears to be trying to boot from QSPI2, I have verified that the QSPI2_LUTx registers are being populated with the LUT sequences from the qspi header that is programmed by the mfgtool. But it always seems to fail, and then return to the "serial downloader" USB mod (when the processor has returned to the "serial downloader" mode I have to restart the processor with the BOOT_MODE pins set to "serial downloader" otherwise the Linux kernel is unable to communicate with the QSPI flash device).
I have tried a variety of settings in the QSPI configuration header between single/quad mode and SDR/DDR as well as customizing the command sequences in the LUT.
What sort of qspi configuration header values should I be using? And should I go about debugging this boot problem?