📄 makefile
字号:
endififeq ($(ENABLE_IDE_BM), y) @echo "#define CONFIG_ENABLE_IDE_BM" >> $@endififeq ($(ENABLE_PCI), y) @echo "#define CONFIG_ENABLE_PCI" >> $@ifeq ($(ENABLE_PCIHOST_EM86XX), y) @echo "#define CONFIG_ENABLE_PCIHOST_EM86XX" >> $@endififeq ($(ENABLE_PCIHOST_FPGA), y) @echo "#define CONFIG_ENABLE_PCIHOST_PCIFPGA" >> $@endifendififeq ($(ENABLE_CRYPTO), y) @echo "#define CONFIG_ENABLE_CRYPTO" >> $@endififeq ($(ENABLE_CRYPTO_FULL), y) @echo "#define CONFIG_ENABLE_CRYPTO_FULL" >> $@ @echo "#define STAGE0_CRYPTO_IMAGE_SIZE $(STAGE0_CRYPTO_IMAGE_SIZE)" >> $@endififeq ($(ENABLE_NETWORK), y) @echo "#define CONFIG_ENABLE_NETWORK" >> $@ifeq ($(ENABLE_NETWORK_DNS), y) @echo "#define CONFIG_ENABLE_NETWORK_DNS" >> $@endififeq ($(ENABLE_NETWORK_NE2KPCI), y) @echo "#define CONFIG_ENABLE_NETWORK_NE2KPCI" >> $@endififeq ($(ENABLE_NETWORK_RTL81XX), y) @echo "#define CONFIG_ENABLE_NETWORK_RTL81XX" >> $@endififeq ($(ENABLE_NETWORK_TANGO15), y) @echo "#define CONFIG_ENABLE_NETWORK_TANGO15" >> $@endifendififeq ($(DISABLE_HELP_MSGS), y) @echo "#define CONFIG_DISABLE_HELP_MSGS" >> $@endififeq ($(ENABLE_IRQHANDLER), y) @echo "#define CONFIG_ENABLE_IRQHANDLER" >> $@ @echo "#define CONFIG_SD_PRESERVE_FIQ" >> $@endififeq ($(ENABLE_BITMAPS), y) @echo "#define CONFIG_ENABLE_BITMAPS" >> $@endififeq ($(ENABLE_UCODES), y) @echo "#define CONFIG_ENABLE_UCODES" >> $@endififeq ($(ENABLE_USERPREF), y) @echo "#define CONFIG_ENABLE_USERPREF" >> $@endififeq ($(ENABLE_VSYNCPARAM), y) @echo "#define CONFIG_ENABLE_VSYNCPARAM" >> $@endififeq ($(ENABLE_DVI), y) @echo "#define CONFIG_ENABLE_DVI" >> $@endif @echo "" >> $@ @echo "#define CONFIG_ARCH_$(EM86XX_ARCH)" >> $@ @echo "#define CONFIG_ARCH \"$(EM86XX_ARCH)\"" >> $@ @echo "#define CONFIG_REV \"$(EM86XX_REV)\"" >> $@ifeq ($(EM86XX_ARCH), MAMBO) @echo "#define CONFIG_ARCH_MAMBO_REV $(EM86XX_REV)" >> $@elseifeq ($(EM86XX_ARCH), TANGO10) @echo "#define CONFIG_ARCH_TANGO" >> $@ @echo "#define CONFIG_ARCH_TANGO10_REV $(EM86XX_REV)" >> $@elseifeq ($(EM86XX_ARCH), TANGO15) @echo "#define CONFIG_ARCH_TANGO" >> $@ @echo "#define CONFIG_ARCH_TANGO15_REV $(EM86XX_REV)" >> $@endifendifendif @echo "#define CONFIG_BOARD \"$(BOARD)\"" >> $@ifdef SUBBOARD @echo "#define CONFIG_SUBBOARD \"$(SUBBOARD)\"" >> $@ @echo "#define CONFIG_SUBBOARD_LEN $(SUBBOARD_LEN)" >> $@endififeq ($(CACHE_USAGE_OFF), y) @echo "#define DRAMBASE " `printf "0x%x" $$[$(DRAMBASE)&0x7fffffff]` >> $@ @echo "#define LOADER_DRAMBASE " `printf "0x%x" $$[$(LOADERBASE)&0x7fffffff]` >> $@else @echo "#define DRAMBASE $(DRAMBASE)" >> $@ @echo "#define LOADER_DRAMBASE $(LOADERBASE)" >> $@endif @echo "#define STAGE1_IMAGE_SIZE $(STAGE1_IMAGE_SIZE)" >> $@ifeq ($(ENABLE_CRYPTO), y) @echo "#define ENCRYPTED_ROM0_NAME \"$(ENCRYPTED_ROM0_NAME)\"" >> $@ifeq ($(ENABLE_ENCRYPTED_OPT_ROM), y) @echo "#define ENABLE_ENCRYPTED_OPT_ROM" >> $@ @echo "#define CRYPTO_KERNEL_CMDLINE \"$(CRYPTO_KERNEL_CMDLINE)\"" >> $@ @echo "#define ENCRYPTED_OPT_DRAM_SIZE $(ENCRYPTED_OPT_DRAM_SIZE)" >> $@ @echo "#define ENCRYPTED_ROM0_SIZE $(ENCRYPTED_ROM0_SIZE)" >> $@ @echo "#define ENCRYPTED_ROM0_ADDR $(ENCRYPTED_ROM0_ADDR)" >> $@ @echo "#define ENCRYPTED_OPT_ROM1_NAME \"$(ENCRYPTED_OPT_ROM1_NAME)\"" >> $@ @echo "#define ENCRYPTED_OPT_ROM1_ADDR $(ENCRYPTED_OPT_ROM1_ADDR)" >> $@ @echo "#define ENCRYPTED_OPT_ROM1_SIZE $(ENCRYPTED_OPT_ROM1_SIZE)" >> $@ @echo "#define ENCRYPTED_OPT_ROM2_NAME \"$(ENCRYPTED_OPT_ROM2_NAME)\"" >> $@ @echo "#define ENCRYPTED_OPT_ROM2_ADDR $(ENCRYPTED_OPT_ROM2_ADDR)" >> $@ @echo "#define ENCRYPTED_OPT_ROM2_SIZE $(ENCRYPTED_OPT_ROM2_SIZE)" >> $@ @echo "#define ENCRYPTED_OPT_ROM3_NAME \"$(ENCRYPTED_OPT_ROM3_NAME)\"" >> $@ @echo "#define ENCRYPTED_OPT_ROM3_ADDR $(ENCRYPTED_OPT_ROM3_ADDR)" >> $@ @echo "#define ENCRYPTED_OPT_ROM3_SIZE $(ENCRYPTED_OPT_ROM3_SIZE)" >> $@ @echo "#define ENCRYPTED_OPT_ROM4_NAME \"$(ENCRYPTED_OPT_ROM4_NAME)\"" >> $@ @echo "#define ENCRYPTED_OPT_ROM4_ADDR $(ENCRYPTED_OPT_ROM4_ADDR)" >> $@ @echo "#define ENCRYPTED_OPT_ROM4_SIZE $(ENCRYPTED_OPT_ROM4_SIZE)" >> $@endififeq ($(ENABLE_SIGNED_OPT_ROM), y) @echo "#define ENABLE_SIGNED_OPT_ROM" >> $@ @echo "#define SIGNED_OPT_ROM1_ADDR $(SIGNED_OPT_ROM1_ADDR)" >> $@ @echo "#define SIGNED_OPT_ROM1_SIZE $(SIGNED_OPT_ROM1_SIZE)" >> $@ @echo "#define SIGNED_OPT_ROM2_ADDR $(SIGNED_OPT_ROM2_ADDR)" >> $@ @echo "#define SIGNED_OPT_ROM2_SIZE $(SIGNED_OPT_ROM2_SIZE)" >> $@ @echo "#define SIGNED_OPT_ROM3_ADDR $(SIGNED_OPT_ROM3_ADDR)" >> $@ @echo "#define SIGNED_OPT_ROM3_SIZE $(SIGNED_OPT_ROM3_SIZE)" >> $@ @echo "#define SIGNED_OPT_ROM4_ADDR $(SIGNED_OPT_ROM4_ADDR)" >> $@ @echo "#define SIGNED_OPT_ROM4_SIZE $(SIGNED_OPT_ROM4_SIZE)" >> $@endifendif @echo "#define DEFAULT_UART_PORT $(DEFAULT_UART_PORT)" >> $@ @echo "#define DEFAULT_UART_BAUDRATE $(DEFAULT_UART_BAUDRATE)" >> $@ifeq ($(DRAMADJUSTMENT), y) @echo "#define CONFIG_DRAM_ADJUSTMENT" >> $@endififeq ($(BIST), y) @echo "#define CONFIG_BIST" >> $@endififeq ($(TESTLOADERONRAM), y) @echo "#define CONFIG_TESTLOADERONRAM" >> $@endif @echo "" >> $@ @echo "#define DEFAULT_CLKGEN_PLL $(DEFAULT_CLKGEN_PLL)" >> $@ @echo "#define DEFAULT_DRAM0_DUNIT_CFG $(DEFAULT_DRAM0_DUNIT_CFG)" >> $@ @echo "#define DEFAULT_DRAM1_DUNIT_CFG $(DEFAULT_DRAM1_DUNIT_CFG)" >> $@ @echo "#define DEFAULT_DRAM0_SIZE $(DEFAULT_DRAM0_SIZE)" >> $@ @echo "#define DEFAULT_DRAM1_SIZE $(DEFAULT_DRAM1_SIZE)" >> $@ @echo "#define DEFAULT_DRAM_DUNIT_DELAY0_CTRL $(DEFAULT_DRAM_DUNIT_DELAY0_CTRL)" >> $@ @echo "#define DEFAULT_PCI_SUBSYSTEM_ID $(DEFAULT_PCI_SUBSYSTEM_ID)" >> $@ @echo "#define DEFAULT_PCI_REVISION_ID $(DEFAULT_PCI_REVISION_ID)" >> $@ @echo "#define DEFAULT_PCI_MEMORY_SIZE $(DEFAULT_PCI_MEMORY_SIZE)" >> $@ @echo "#define DEFAULT_CONFIGVALID $(DEFAULT_CONFIGVALID)" >> $@ @echo "#define DEFAULT_SFLA_DRIVER_SPEED $(DEFAULT_SFLA_DRIVER_SPEED)" >> $@ @echo "#define DEFAULT_PB_DEFAULT_TIMING $(DEFAULT_PB_DEFAULT_TIMING)" >> $@ @echo "#define DEFAULT_PB_CS_CONFIG $(DEFAULT_PB_CS_CONFIG)" >> $@ @echo "#define DEFAULT_PB_TIMING0 $(DEFAULT_PB_TIMING0)" >> $@ @echo "#define DEFAULT_PB_USE_TIMING0 $(DEFAULT_PB_USE_TIMING0)" >> $@ @echo "#define DEFAULT_PB_TIMING1 $(DEFAULT_PB_TIMING1)" >> $@ @echo "#define DEFAULT_PB_USE_TIMING1 $(DEFAULT_PB_USE_TIMING1)" >> $@ @echo "#define DEFAULT_PB_TIMING2 $(DEFAULT_PB_TIMING2)" >> $@ @echo "#define DEFAULT_PB_USE_TIMING2 $(DEFAULT_PB_USE_TIMING2)" >> $@ @echo "#define DEFAULT_PB_TIMING3 $(DEFAULT_PB_TIMING3)" >> $@ @echo "#define DEFAULT_PB_USE_TIMING3 $(DEFAULT_PB_USE_TIMING3)" >> $@ @echo "#define DEFAULT_PB_TIMING4 $(DEFAULT_PB_TIMING4)" >> $@ @echo "#define DEFAULT_PB_USE_TIMING4 $(DEFAULT_PB_USE_TIMING4)" >> $@ @echo "#define DEFAULT_PB_TIMING5 $(DEFAULT_PB_TIMING5)" >> $@ @echo "#define DEFAULT_PB_USE_TIMING5 $(DEFAULT_PB_USE_TIMING5)" >> $@ @echo "#define DEFAULT_IRQ_GPIOMAP $(DEFAULT_IRQ_GPIOMAP)" >> $@ @echo "#define DEFAULT_BOOTFLAG $(DEFAULT_BOOTFLAG)" >> $@ @echo "#define DEFAULT_GPIO_DIR $(DEFAULT_GPIO_DIR)" >> $@ @echo "#define DEFAULT_GPIO_OUTPUT $(DEFAULT_GPIO_OUTPUT)" >> $@ifneq ($(EM86XX_ARCH), MAMBO)ifneq ($(DEFAULT_CD0_FREQ_HZ),) @echo "#define DEFAULT_CD0_FREQ $(DEFAULT_CD0_FREQ_HZ)" >> $@endififneq ($(DEFAULT_CD1_FREQ_HZ),) @echo "#define DEFAULT_CD1_FREQ $(DEFAULT_CD1_FREQ_HZ)" >> $@endififneq ($(DEFAULT_CD2_FREQ_HZ),) @echo "#define DEFAULT_CD2_FREQ $(DEFAULT_CD2_FREQ_HZ)" >> $@endififneq ($(DEFAULT_CD3_FREQ_HZ),) @echo "#define DEFAULT_CD3_FREQ $(DEFAULT_CD3_FREQ_HZ)" >> $@endifendififeq ($(OPTIMIZE_SIZE), y) @echo "#define CONFIG_OPTIMIZE_SIZE" >> $@endif @echo "#endif" >> $@## Stage 1 boot loader#loader.bin : loader.elf $(OBJCOPY) -Obinary $< $@ chmod a-x $@loader.elf: loader.o $(OBJS-y) 2ndboot.oifeq ($(CACHE_USAGE_OFF), y) $(LD) --gc-section -e start -Ttext `printf "0x%x" $$[$(LOADERBASE)&0x7fffffff]` -o $@ loader.o $(OBJS-y) 2ndboot.o else $(LD) --gc-section -e start -Ttext $(LOADERBASE) -o $@ loader.o $(OBJS-y) 2ndboot.o endif $(OBJDUMP) -d -S -x $@ > loader.maploader.o: loader.S config.h $(RTCONFIG) Makefile $(CC) $(CFLAGS) -c -o $@ $<loader2.o: loader.S config.h $(RTCONFIG) Makefile $(CC) $(CFLAGS) -DSECONDARY_LOADER -c -o $@ $<## Stage 2 boot loader (if needed)#2ndboot2.o: 2ndboot.c $(CC) $(CFLAGS) -c -DSECONDARY_LOADER -o $@ $<loader2.elf: loader2.o $(OBJS-y) 2ndboot2.oifeq ($(CACHE_USAGE_OFF), y) $(LD) --gc-section -e start -Ttext `printf "0x%x" $$[$(LOADERBASE)&0x7fffffff]` -o $@ loader2.o $(OBJS-y) 2ndboot.o else $(LD) --gc-section -e start -Ttext $(LOADERBASE) -o $@ loader2.o $(OBJS-y) 2ndboot2.o endif $(OBJDUMP) -d -S -x $@ > loader2.maploader2.bin: loader2.elf $(OBJCOPY) -Obinary $< $@ chmod a-x $@loader-flash-stage2.bin: loader2.bin genchecksum cat $< /dev/zero | dd of=$@ bs=1 count=$(STAGE2_IMAGE_SIZE) ./genchecksum $@ genchecksum: genchecksum.c gcc -O2 -o $@ $<## loader-sflash.bin#ifeq ($(DRAMADJUSTMENT), n)loader-sflash.bin : loader-sflash0.bin loader.bin cat $< /dev/zero | dd of=$@ count=1028 bs=1 cat loader.bin >> $@loader-sflash0.bin : loader-sflash.elf $(OBJCOPY) -Obinary $< $@ chmod a-x $@loader-sflash.elf : loader-sflash.o $(LD) --gc-section -e stage0_start -Ttext 0x40000000 -o $@ $< $(OBJDUMP) -d -S -x $@ > loader-sflash.maploader-sflash.o : loader-sflash.s $(CC) $(CFLAGS) -c -o $@ $<loader-sflash.s : loader-stage0.S config.h $(RTCONFIG) Makefile $(CPP) $(CPPFLAGS) -DCONFIG_BOOTFROM_SFLASH $< > $@endif## loader-flash.bin#ifeq ($(DRAMADJUSTMENT), n)loader-flash.bin : loader-flash0.bin loader.bin cat $< /dev/zero | dd of=$@ count=1024 bs=1 cat loader.bin >> $@loader-flash0.bin : loader-flash.elf $(OBJCOPY) -Obinary $< $@ chmod a-x $@loader-flash.elf : loader-flash.o $(LD) --gc-section -e stage0_start -Ttext 0x46000000 -o $@ $< $(OBJDUMP) -d -S -x $@ > loader-flash.maploader-flash.o : loader-flash.s $(CC) $(CFLAGS) -c -o $@ $<loader-flash.s : loader-stage0.S config.h $(RTCONFIG) Makefile $(CPP) $(CPPFLAGS) -DCONFIG_BOOTFROM_FLASH $< > $@endif## loader-sflash-min.bin#loader-sflash-min.bin : loader-sflash-min.elf $(OBJCOPY) -Obinary $< $@ chmod a-x $@loader-sflash-min.elf : loader-sflash-min.o $(LD) --gc-section -e stage0_start -Ttext 0x40000000 -o $@ $< $(OBJDUMP) -d -S -x $@ > loader-sflash-min.maploader-sflash-min.o : loader-sflash-min.s $(CC) $(CFLAGS) -c -o $@ $<loader-sflash-min.s : loader-stage0.S config.h $(RTCONFIG) Makefile $(CPP) $(CPPFLAGS) -DCONFIG_BOOTFROM_SFLASH -DCONFIG_BOOTINITONLY $< > $@## loader-sflash-test.bin#TEST_STAGE0_OBJS = test-stage0.o em8600_mem_test.o board/test-stage0.o uart.o em86xxapi.o util.o vsprintf.o loader-sflash-test.bin : loader-sflash-test0.bin loader-sflash-test-stage0.bin loader.bin cat loader-sflash-test0.bin /dev/zero | dd count=1028 bs=1 > $@ cat loader-sflash-test-stage0.bin /dev/zero | dd count=$(STAGE0_TEST_IMAGE_SIZE) bs=1 >> $@ cat loader.bin >> $@loader-sflash-test-stage0.bin : loader-sflash-test-stage0.elf $(OBJCOPY) -Obinary $< $@ chmod a-x $@loader-sflash-test-stage0.elf : $(TEST_STAGE0_OBJS)ifeq ($(TESTLOADERONRAM), y)ifeq ($(CACHE_USAGE_OFF), y) $(LD) --gc-section -e test_stage0 -Ttext 0x11700404 -o $@ $(TEST_STAGE0_OBJS) else $(LD) --gc-section -e test_stage0 -Ttext 0x91700404 -o $@ $(TEST_STAGE0_OBJS) endifelseifeq ($(CACHE_USAGE_OFF), y) $(LD) --gc-section -e test_stage0 -Ttext 0x40000400 -o $@ $(TEST_STAGE0_OBJS) else $(LD) --gc-section -e test_stage0 -Ttext 0xC0000400 -o $@ $(TEST_STAGE0_OBJS) endifendif $(OBJDUMP) -d -S -x $@ > loader-sflash-test-stage0.maploader-sflash-test0.bin : loader-sflash-test.elf $(OBJCOPY) -Obinary $< $@
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -