12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- BOARD ?= icebreaker
- CROSS ?= riscv-none-elf-
- CC = $(CROSS)gcc
- OBJCOPY = $(CROSS)objcopy
- ICEPROG = iceprog
- DFU_UTIL = dfu-util
- BOARD_DEFINE=BOARD_$(shell echo $(BOARD) | tr a-z\- A-Z_)
- CFLAGS=-Wall -Os -march=rv32i -mabi=ilp32 -ffreestanding -flto -nostartfiles -fomit-frame-pointer -Wl,--gc-section -D$(BOARD_DEFINE) -I.
- HEADERS_common=\
- config.h \
- console.h \
- led.h \
- mini-printf.h \
- spi.h \
- utils.h \
- registers.h
- SOURCES_common=\
- start.S \
- console.c \
- led.c \
- mini-printf.c \
- spi.c \
- utils.c \
- registers.c
- HEADERS_app=\
- #usb_str_app.gen.h \
- $(NULL)
- SOURCES_app=\
- fw_app.c \
- #usb_desc_app.c \
- $(NULL)
- all: boot.hex fw_app.bin
- boot.elf: lnk-boot.lds boot.S
- $(CC) $(CFLAGS) -Wl,-Bstatic,-T,lnk-boot.lds,--strip-debug -DFLASH_APP_ADDR=0x000a0000 -o $@ boot.S
- fw_app.elf: lnk-app.lds $(HEADERS_app) $(SOURCES_app) $(HEADERS_common) $(SOURCES_common)
- $(CC) $(CFLAGS) -Wl,-Bstatic,-T,lnk-app.lds,--strip-debug -o $@ $(SOURCES_common) $(SOURCES_app)
- %.hex: %.bin
- python ./bin2hex.py $< $@
- %.bin: %.elf
- $(OBJCOPY) -O binary $< $@
- prog: fw_app.bin
- $(ICEPROG) -o 640k $<
- dfuprog: fw_app.bin
- ifeq ($(DFU_SERIAL),)
- $(DFU_UTIL) -R -a 1 -D $<
- else
- $(DFU_UTIL) -R -S $(DFU_SERIAL) -a 1 -D $<
- endif
- clean:
- rm -f *.bin *.hex *.elf *.o *.gen.h
- .PHONY: prog_app clean
|