I am trying to get the MCUBoot to work with my custom board (using a dual data pin SPI chip).
The original example worked fine with the devkit (CY8CPROTO-062-4343W).
In the custom board, I am using MX25V1635FM1I as serial flash (with only two pins used for data).
I changed the serial flash driver using QSPI Configurator (which is being used correctly by blinky_cm4 correctly.
But it appears that the bootload_cm0p is using auto detect SFDP (which attempts to use the serial flash as octal device) which does not work (since the Cy_SMIF_MemSfdpDetect uses CY_SMIF_WIDTH_OCTAL and populates the wrong read commands during the initialization.
What is the proper way to initialize the SMIF or flash_qspi driver from bootloader to use the correct SPI settings?
I was able to get it working by changing CY_SMIF_WIDTH_OCTAL to CY_SMIF_WIDTH_DUAL in Cy_SMIF_MemSfdpDetect, but I doubt that is the correct way to handle this situation.
Hi @projecta98 ,
As per your question, I understand that your using MX25V1635FM1I device when
Cy_SMIF_MemSfdpDetect is being called it is auto-populating the transfer width as
As per my understanding, CY8CPROTO-062-4343W development board by default has a NOR Flash that supports Octal Mode and I guess for the flash device being used by you transfer width should be set as Dual.
What is your device's (MX25V1635FM1I ) response for the transfer width as it being set incorrectly? Can you please elaborate on this?
Thanks and regards,