Is it possible to initialize external RAM (ERAM) from the JTAG .sof or EPCS .pof file?
(i) By modifying the BSP to include the new region and section that points to ERAM
(ii) Include in NIOS2 code declaration of global variable and instantiation of variable in that section using "__attribute__". (A bitmap mapped as unsigned char[]).
My project tool path actions include : QSys/BSP Editor/Eclipse BSP + application/Quartus/Programmer/nios-terminal.
Observations: My quartus project builds successfully, however printf's to the nios-terminal of external ERAM contents don't agree with the values that I initialized in my C code suggesting they didn't get initialised. The .objdump file contains all the default sections and my new section with its hex dump in the file and it appears correct. When I view the onchip_mem.hex file it only contains records with addresses for onchip RAM at: 0x2000xxxx. There are no 0x3ff8xxx to 0x3ffc000 ERAM addresses in that file which leads me to the conclusion that the code in the .hex file or .sof file doesn't include a bootloader, alt_load() or something similar.
I have searched the forums for some description of the boot method used and whether this is even possible with a .sof via JTAG and how to initialize ERAM from bootup without any success. Is the ERAM only initialised with a true EPCS .pof file? Any ideas?