Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
12603 Discussions

Custom QuadSPI Controller and NIOS2 Initialization

trigerion
Beginner
1,316 Views

Hi,

 

I am currently developing a custom QuadSPI Avalon Memory Mapped Component for a MAX10 FPGA as we use a not support QSPI flash in our current design.

I am struggling what to add to the tcl file in order to be able to generate the hex file with mem_init_generate script with eclipse.

 

I added the following lines

# # module assignments # set_module_assignment embeddedsw.memoryInfo.GENERATE_DAT_SYM 1 set_module_assignment embeddedsw.memoryInfo.GENERATE_HEX 1 set_module_assignment embeddedsw.memoryInfo.IS_FLASH 1 set_module_assignment embeddedsw.memoryInfo.MEM_INIT_DATA_WIDTH 8 set_module_assignment embeddedsw.memoryInfo.WIDTH 32

but the mem_init.mk looks like this

# Memory: qspi_max1000_1 MEM_1 := max1000_qspi $(MEM_1)_NAME := qspi_max1000_1 MEM_INIT_INSTALL_FILES += $(MEM_INIT_INSTALL_DIR)/$(MEM_1).hex $(MEM_1)_START := 0x02000000 $(MEM_1)_END := 0x03ffffff $(MEM_1)_SPAN := 0x02000000 $(MEM_1)_HIERARCHICAL_PATH := qspi_max1000_1 $(MEM_1)_WIDTH := 32 $(MEM_1)_HEX_DATA_WIDTH := 8 $(MEM_1)_ENDIANNESS := --little-endian-mem $(MEM_1)_CREATE_LANES := 0 $(MEM_1)_CFI_FLAGS := --base=$($(MEM_1)_START) --end=$($(MEM_1)_END) --reset=$(RESET_ADDRESS) $(MEM_1)_BOOT_LOADER_FLAG := --boot="$(BOOT_LOADER_CFI)"  

instead of

 

 

# Memory: qspi_max1000_1 MEM_1 := max1000_qspi $(MEM_1)_NAME := qspi_max1000_1 HEX_FILES += $(MEM_INIT_DIR)/$(MEM_1).hex MEM_INIT_INSTALL_FILES += $(MEM_INIT_INSTALL_DIR)/$(MEM_1).hex $(MEM_1)_START := 0x02000000 $(MEM_1)_END := 0x03ffffff $(MEM_1)_SPAN := 0x02000000 $(MEM_1)_HIERARCHICAL_PATH := qspi_max1000_1 $(MEM_1)_WIDTH := 32 $(MEM_1)_HEX_DATA_WIDTH := 8 $(MEM_1)_ENDIANNESS := --little-endian-mem $(MEM_1)_CREATE_LANES := 0 $(MEM_1)_CFI_FLAGS := --base=$($(MEM_1)_START) --end=$($(MEM_1)_END) --reset=$(RESET_ADDRESS) $(MEM_1)_BOOT_LOADER_FLAG := --boot="$(BOOT_LOADER_CFI)"   .PHONY: qspi_max1000_1 qspi_max1000_1: check_elf_exists $(MEM_INIT_DIR)/$(MEM_1).hex

As the 'HEX_FILES +=' and '.PHONY: qspi_max1000_1

qspi_max1000_1: check_elf_exists $(MEM_INIT_DIR)/$(MEM_1).hex' is missing, I do not get the hex file when calling mem_init_generate.

 

Can somebody help me and suggest what I am doing wrong or what I should add the the tcl file?

 

Thank you very much.

0 Kudos
0 Replies
Reply