You may see this warning when using memory initialization files generated by the mem_init_generate make target in the makefile generated by the Nios® II Embedded Design Suite (EDS).
The reason for this warning is that the Intel® Quartus® Prime software expects the record length within .hex files to match the data port width of the memory that is initialized. Note the data port width is specified in bits in Platform Designer, and specified in bytes to elf2hex.
To change the generated .hex files to have a record length that matches the memory data port width, modify the mem_init.mk file within the BSP directory:
- Find the ELF_TO_HEX_CMD_NO_BOOTLOADER command
- add the following switch:
--record=${mem_hex_width}/8
Example:
ELF_TO_HEX_CMD_NO_BOOTLOADER = $(ELF2HEX) --record=4 $< $(mem_start_address) $(mem_end_address) --width=$(mem_hex_width) $(mem_endianness) --create-lanes=$(mem_create_lanes) $(elf2hex_extra_args) $@
This problem is not scheduled to be resolved in a future release of the Intel® Quartus® Prime software.