109 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
		
		
			
		
	
	
			109 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
|  | 
 | ||
|  | # OUTPUT type
 | ||
|  | # 1 - .out
 | ||
|  | # 2 - .a
 | ||
|  | # 3 - .so
 | ||
|  | OUTPUT_TYPE	= 1 | ||
|  | OUTPUT_NAME	= sp_topo | ||
|  | 
 | ||
|  | SUB_DIRS    = startup hw_topo | ||
|  | 
 | ||
|  | ifeq ($(target), kunlun2) | ||
|  | hw_dep = hw2 | ||
|  | else | ||
|  |     ifeq ($(target), kunlun3) | ||
|  |     hw_dep = hw3 | ||
|  |     else | ||
|  |     hw_dep = hw | ||
|  |     endif | ||
|  | endif | ||
|  | 
 | ||
|  | 
 | ||
|  | EXT_SRC     = $(TOPDIR)/driver/src/$(hw_dep)/wdg.c | ||
|  | EXT_SRC     += $(TOPDIR)/driver/src/$(hw_dep)/apb.c | ||
|  | EXT_SRC     += $(TOPDIR)/driver/src/$(hw_dep)/ahb.c | ||
|  | EXT_SRC     += $(TOPDIR)/driver/src/$(hw_dep)/pmu.c | ||
|  | EXT_SRC     += $(TOPDIR)/driver/src/$(hw_dep)/sec_glb.c | ||
|  | EXT_SRC     += $(TOPDIR)/driver/src/$(hw_dep)/cpu.c | ||
|  | EXT_SRC     += $(TOPDIR)/driver/src/$(hw_dep)/intc.c | ||
|  | 
 | ||
|  | EXT_SRC     += $(TOPDIR)/driver/src/hal/irq.c | ||
|  | 
 | ||
|  | ifeq ($(target), kunlun2) | ||
|  | ADD_INCLUDE += $(TOPDIR)/inc/hw/reg/riscv2/$(HW_HEADER_VER) | ||
|  | ADD_INCLUDE += $(TOPDIR)/startup/riscv2/inc | ||
|  | ADD_INCLUDE += $(TOPDIR)/driver/src/hw2/inc | ||
|  | ADD_INCLUDE += $(TOPDIR)/import/wq_vtb/ext_inc | ||
|  | else | ||
|  |     ifeq ($(target), kunlun3) | ||
|  |     ADD_INCLUDE += $(TOPDIR)/inc/hw/reg/riscv3/$(HW_HEADER_VER) | ||
|  |     ADD_INCLUDE += $(TOPDIR)/startup/riscv3/inc | ||
|  |     ADD_INCLUDE += $(TOPDIR)/driver/src/hw3/inc | ||
|  |     else | ||
|  |     ADD_INCLUDE += $(TOPDIR)/inc/hw/reg/riscv/$(HW_HEADER_VER) | ||
|  |     ADD_INCLUDE += $(TOPDIR)/startup/riscv/inc | ||
|  |     ADD_INCLUDE += $(TOPDIR)/driver/src/hw/inc | ||
|  |     endif | ||
|  | endif | ||
|  | ADD_INCLUDE += $(TOPDIR)/plc/halmac/$(hw_dep)/inc | ||
|  | ADD_INCLUDE += $(TOPDIR)/plc/halmac/$(hw_dep)/inc/desc | ||
|  | ADD_INCLUDE +=\
 | ||
|  |             $(TOPDIR)/inc \
 | ||
|  |             $(TOPDIR)/inc/driver \
 | ||
|  |             $(TOPDIR)/driver/inc \
 | ||
|  |             $(TOPDIR)/common/io_lib/inc \
 | ||
|  |             $(TOPDIR)/inc/os_shim \
 | ||
|  |             $(TOPDIR)/export/inc/utils \
 | ||
|  |             $(TOPDIR)/inc/compiler/gcc \
 | ||
|  |             $(TOPDIR)/sp/topo_cpu/hw_topo \
 | ||
|  |             $(TOPDIR)/import/wq_vtb/inc | ||
|  | ADD_INCLUDE += $(TOPDIR)/plc/common/inc \
 | ||
|  |                $(TOPDIR)/inc/io_lib \
 | ||
|  |                $(TOPDIR)/plc/halphy/inc \
 | ||
|  |                $(TOPDIR)/export/inc/pkt \
 | ||
|  |                $(TOPDIR)/inc/plc_lib \
 | ||
|  |                $(TOPDIR)/plc/inc \
 | ||
|  |                ./phy \
 | ||
|  |                $(TOPDIR)/plc/halmac/inc \
 | ||
|  | 
 | ||
|  | # predefined macro
 | ||
|  | PRE_MARCO   += IRAM_SECTION_DISABLE | ||
|  | PRE_MARCO   += IOT_ASSERT_DEBUG=0 | ||
|  | 
 | ||
|  | ifeq ($(cco), 1) | ||
|  | LD_SCRIPT = link_sp_app_cco.lds | ||
|  | else | ||
|  | LD_SCRIPT = link_sp_app.lds | ||
|  | endif | ||
|  | # lib dir
 | ||
|  | # lib need to ld together
 | ||
|  | ADD_LIB  = | ||
|  | 
 | ||
|  | extra_work = echo handle sp_applet..;\
 | ||
|  |              $(TOPDIR)/tools/rom_img/make_ld.sh --addrs $(OUTPUT_FULL_NAME)\
 | ||
|  |              $(TOPDIR)/tools/rom_img/riscv2/sp_symbol > $(TOPDIR)/startup/ldscripts/riscv2/sp_$(MODE_TYPE).addrs.ld ;\
 | ||
|  |              xxd -i < $(OUTPUT_DIR)/$(OUTPUT_NAME).bin > $(TOPDIR)/startup/riscv2/inc/sp_applet.txt | ||
|  | 
 | ||
|  | #####################################################
 | ||
|  | 
 | ||
|  | ifdef TOPDIR | ||
|  | include $(TOPDIR)/build/makefile.cfg | ||
|  | else | ||
|  | include $(CURDIR)/build/makefile.cfg | ||
|  | TOPDIR		= $(CURDIR) | ||
|  | export TOPDIR | ||
|  | endif | ||
|  | 
 | ||
|  | dump: | ||
|  | 	$(OBJDUMP) -D -S -l $(OUTPUT_FULL_NAME) > $(OUTPUT_FULL_NAME).dump | ||
|  | 
 | ||
|  | # display the obj files and output name
 | ||
|  | debug: | ||
|  | 	@echo TOPDIR=$(TOPDIR) | ||
|  | 	@echo OUTPUT_LIB=$(OUTPUT_FULL_NAME) | ||
|  | 	@echo DEPS=$(DEPS) | ||
|  | 	@echo OBJECTS=$(OBJECTS) | ||
|  | 	@echo SRCS=$(SRCS) | ||
|  | 	@echo OBJECTS folder=$(foreach dirname, $(SUB_DIRS), $(addprefix $(BIN_DIR)/, $(dirname))) | ||
|  | 	@echo output_name=$(OUTPUT_FULL_NAME) |