2022-03-09 01:22 PM
Followed STM tutorial on the subject. This is custom board STM32G484 with Winbond 25q128jvsq. Memory can read, erased and written to. It passes all the tests in quad mode (4 IO lines). However Programmer reads only single line, hence rather all FF's it reads all 88's after erase I used Loader_Src as per STM. Obviously fails programming reporting error deleting memory.
Any ideas?
2022-03-09 01:37 PM
0x88 suggests you're trying to do a Quad Read on a device where the Quad Enable bit hasn't be set, and it's probably either ignoring the command, or the commands operating on a different set of assumptions about what mode its in.
Or perhaps the Erase hasn't completed, and the chips off doing its own thing still.
ST also has this habit of switching in/out of Memory Mapped mode, resetting the chip or QSPI peripheral, again often leading to a situation where the memory chip and the STM32 side code have different ideas about what mode each is operating.
2022-03-22 10:19 AM
The problem was with HAL_qspi_abort.
Seems to working fine with stand alone application, however in External Flash Loader context hangs on TC clear flag religiously.
Read part errata re QSPI.