I have another question regarding the FlexSPI interface.
We use the Interface to boot from an Adesto Octa-SPI Flash. This is working fine; we can boot from the Flash and can run our code from it. Reading from the related Memory-mapped data via the Debugger is also working well.
Now we like to write to the flash. Therefore, I’ve extended the command set in the LUT included in the configuration section of the flash with commands for reading JEDEC-ID, Enable write access, reading the status register and the actual write command.
After booting – when entering the code – the interface should be initialized by the Hardware-Bootloader. I can run my code from the flash and I can read the related memory-Areas so it should be fine. However, I can’t access the FlexSPI registers via the debugger. When trying to check them in debug view, the controller gets stuck and the only way to get control over it is to do a power cycle. SO, I can’t check if the LUT is loaded as intended. What is the reason for this?
In Addition, I cannot execute one of the additional commands I’ve added to the LUT, like reading the JEDEC IDs.
Do I have to initialize some additional Stuff? It looks like only the AHB-Bus is initialized to get access via memory mapping. The access over the IP Bus seems not to work.
I know that I could do a complete reinitialization. However, I like to understand what is going on there in first place. In addition, I don’t like a complete reinitialization of an interface which is already initialized especially on a complex one like this where I fear to break something else.