AnsweredAssumed Answered

RT1064 programming the internal Flash at the same time as using HyperRAM

Question asked by Carsten Groen on Jun 19, 2019
Latest reply on Jul 8, 2019 by Artur Petukhov

I have come to a tiresome problem in one of our projects. 

The system uses a RT1064, HyperRAM (8 Mbyte) and the code runs out of the internal 4 MByte Flash in the 1064.

The HyperRAM is connected to FlexSPI and the internal Flash is by nature, connected to FlexSPI2.

In my bootloader, I need to have access to the HyperRAM at the same time as programming the internal Flash. This seems not to be possible ??

I can program the internal flash just fine using the NOR Flash driver in the device, but as soon as I do:

status = flexspi_nor_flash_init(instance, &config); // instance is 1 in this case

I loose the connection to the HyperRAM.

Is that to be expected, and more importantly, is there a way around it ?

In this particular case I need to load a firmware file from a filesystem and program that to the internal Flash.

(I'm using the internal 1 MB SRAM for other purposes (filesystem etc etc) so its not an option to use that)

 

When debugging, I can see that as soon as the NOR Flash driver is called for the internal Flash on FlexSPI2, the FlexSPI is also affected, most of its registers are set to 0. This seems strange as I specifically asks for FlexSPI2 which should be for the internal Flash (or is that determined by the address space)?

Outcomes