mirror of
git://projects.qi-hardware.com/ben-wpan.git
synced 2024-11-25 03:02:27 +02:00
atusb/fw: Add build system support for adding a DFU suffix to the fw file
DFU files need to have a valid DFU suffix which provides information about the USB vendor and product ID it should be used for as well as same basic CRC file integrity checking. The dfu-suffix tool can add this and got added to dfu-utils in 0.7. With the Makefile changes we take the original atusb-bin file, make a copy and add the DFU suffix it before flashing.
This commit is contained in:
parent
fc7551e532
commit
3ebd17f9e6
@ -28,7 +28,12 @@ OBJCOPY = $(AVR_PREFIX)objcopy
|
|||||||
#OBJDUMP = $(AVR_PREFIX)objdump
|
#OBJDUMP = $(AVR_PREFIX)objdump
|
||||||
SIZE = $(AVR_PREFIX)size
|
SIZE = $(AVR_PREFIX)size
|
||||||
|
|
||||||
USB_ID = 20b7:1540
|
# BCD notion is 0xJJMM with JJ being major and MM being minor. Thus 0x0020 is
|
||||||
|
# version 0.2 */
|
||||||
|
USB_BCD_VERSION = 0020
|
||||||
|
USB_VENDOR_ID = 20b7
|
||||||
|
USB_PRODUCT_ID = 1540
|
||||||
|
USB_ID = $(USB_VENDOR_ID):$(USB_PRODUCT_ID)
|
||||||
|
|
||||||
OBJS = atusb.o board.o board_app.o sernum.o spi.o descr.o ep0.o \
|
OBJS = atusb.o board.o board_app.o sernum.o spi.o descr.o ep0.o \
|
||||||
dfu_common.o usb.o app-atu2.o mac.o
|
dfu_common.o usb.o app-atu2.o mac.o
|
||||||
@ -80,6 +85,11 @@ boot.elf: $(BOOT_OBJS)
|
|||||||
$(BUILD) $(OBJCOPY) -j .text -j .data -O binary $< $@
|
$(BUILD) $(OBJCOPY) -j .text -j .data -O binary $< $@
|
||||||
@echo "build #`cat .version`, `ls -l $@`"
|
@echo "build #`cat .version`, `ls -l $@`"
|
||||||
|
|
||||||
|
%.dfu: %.bin
|
||||||
|
cp $(NAME).bin $(NAME).dfu
|
||||||
|
dfu-suffix -a $(NAME).dfu -d 0x$(USB_BCD_VERSION) \
|
||||||
|
-p 0x$(USB_PRODUCT_ID) -v 0x$(USB_VENDOR_ID)
|
||||||
|
|
||||||
%.hex: %.elf
|
%.hex: %.elf
|
||||||
$(BUILD) $(OBJCOPY) -j .text -j .data -O ihex $< $@
|
$(BUILD) $(OBJCOPY) -j .text -j .data -O ihex $< $@
|
||||||
@echo "Size: `$(SIZE) -A boot.hex | sed '/Total */s///p;d'` B"
|
@echo "Size: `$(SIZE) -A boot.hex | sed '/Total */s///p;d'` B"
|
||||||
@ -87,7 +97,7 @@ boot.elf: $(BOOT_OBJS)
|
|||||||
# ----- Cleanup ---------------------------------------------------------------
|
# ----- Cleanup ---------------------------------------------------------------
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f $(NAME).bin $(NAME).elf
|
rm -f $(NAME).bin $(NAME).elf $(NAME).dfu
|
||||||
rm -f $(OBJS) $(OBJS:.o=.d)
|
rm -f $(OBJS) $(OBJS:.o=.d)
|
||||||
rm -f boot.hex boot.elf
|
rm -f boot.hex boot.elf
|
||||||
rm -f $(BOOT_OBJS) $(BOOT_OBJS:.o=.d)
|
rm -f $(BOOT_OBJS) $(BOOT_OBJS:.o=.d)
|
||||||
@ -177,8 +187,8 @@ prog-read:
|
|||||||
ssh $(HOST) avrdude -F -p $(CHIP) -c nanonote_atusb \
|
ssh $(HOST) avrdude -F -p $(CHIP) -c nanonote_atusb \
|
||||||
-U flash:r:mcu.bin:r
|
-U flash:r:mcu.bin:r
|
||||||
|
|
||||||
dfu: $(NAME).bin
|
dfu: $(NAME).dfu
|
||||||
dfu-util -d $(USB_ID) -D $(NAME).bin
|
dfu-util -d $(USB_ID) -D $(NAME).dfu
|
||||||
|
|
||||||
update: $(NAME).bin
|
update: $(NAME).bin
|
||||||
-atrf-reset -a
|
-atrf-reset -a
|
||||||
|
Loading…
Reference in New Issue
Block a user