# failures on all standard configurations. To add a new build target for a
# bootloader to this script, use the format:
#
-# BOOTLOADER = {ARCH} : {MCU} : {BOARD} : {FLASH SIZE KB} : {BOOT SIZE KB} :
+# BOOTLOADER = {ARCH} : {MCU} : {BOARD} : {FLASH SIZE KB} : {BOOT SIZE KB} : {F_USB MHZ}
#
# And re-run the makefile.
# =============================================================================
#
#
-# ------------ CDC Bootloader -------------
-CDC = AVR8 : at90usb1287 : NONE : 128 : 8 :
-CDC = AVR8 : at90usb1287 : NONE : 128 : 4 :
-CDC = AVR8 : at90usb647 : NONE : 64 : 4 :
-CDC = AVR8 : at90usb1286 : NONE : 128 : 8 :
-CDC = AVR8 : at90usb1286 : NONE : 128 : 4 :
-CDC = AVR8 : at90usb646 : NONE : 64 : 4 :
-CDC = AVR8 : atmega32u6 : NONE : 32 : 4 :
-CDC = AVR8 : atmega32u4 : NONE : 32 : 4 :
-CDC = AVR8 : atmega16u4 : NONE : 16 : 4 :
-CDC = AVR8 : atmega32u2 : NONE : 32 : 4 :
-CDC = AVR8 : atmega16u2 : NONE : 16 : 4 :
-CDC = AVR8 : atmega8u2 : NONE : 8 : 4 :
-CDC = AVR8 : at90usb162 : NONE : 16 : 4 :
-CDC = AVR8 : at90usb82 : NONE : 8 : 4 :
+# ------------ CDC Bootloader --------------------
+CDC = AVR8 : at90usb1287 : XPLAIN : 128 : 8 : 8 :
+CDC = AVR8 : at90usb1287 : NONE : 128 : 8 : 8 :
+CDC = AVR8 : at90usb1287 : NONE : 128 : 4 : 8 :
+CDC = AVR8 : at90usb647 : NONE : 64 : 4 : 8 :
+CDC = AVR8 : at90usb1286 : NONE : 128 : 8 : 8 :
+CDC = AVR8 : at90usb1286 : NONE : 128 : 4 : 8 :
+CDC = AVR8 : at90usb646 : NONE : 64 : 4 : 8 :
+CDC = AVR8 : atmega32u6 : NONE : 32 : 4 : 8 :
+CDC = AVR8 : atmega32u4 : NONE : 32 : 4 : 8 :
+CDC = AVR8 : atmega16u4 : NONE : 16 : 4 : 8 :
+CDC = AVR8 : atmega32u2 : NONE : 32 : 4 : 8 :
+CDC = AVR8 : atmega16u2 : NONE : 16 : 4 : 8 :
+CDC = AVR8 : atmega8u2 : NONE : 8 : 4 : 8 :
+CDC = AVR8 : at90usb162 : NONE : 16 : 4 : 8 :
+CDC = AVR8 : at90usb82 : NONE : 8 : 4 : 8 :
+CDC = AVR8 : at90usb1287 : NONE : 128 : 8 : 16 :
+CDC = AVR8 : at90usb1287 : NONE : 128 : 4 : 16 :
+CDC = AVR8 : at90usb647 : NONE : 64 : 4 : 16 :
+CDC = AVR8 : at90usb1286 : NONE : 128 : 8 : 16 :
+CDC = AVR8 : at90usb1286 : NONE : 128 : 4 : 16 :
+CDC = AVR8 : at90usb646 : NONE : 64 : 4 : 16 :
+CDC = AVR8 : atmega32u6 : NONE : 32 : 4 : 16 :
+CDC = AVR8 : atmega32u4 : NONE : 32 : 4 : 16 :
+CDC = AVR8 : atmega16u4 : NONE : 16 : 4 : 16 :
+CDC = AVR8 : atmega32u2 : NONE : 32 : 4 : 16 :
+CDC = AVR8 : atmega16u2 : NONE : 16 : 4 : 16 :
+CDC = AVR8 : atmega8u2 : NONE : 8 : 4 : 16 :
+CDC = AVR8 : at90usb162 : NONE : 16 : 4 : 16 :
+CDC = AVR8 : at90usb82 : NONE : 8 : 4 : 16 :
#
-# ------------ DFU Bootloader -------------
-DFU = AVR8 : at90usb1287 : NONE : 128 : 8 :
-DFU = AVR8 : at90usb1287 : NONE : 128 : 4 :
-DFU = AVR8 : at90usb647 : NONE : 64 : 4 :
-DFU = AVR8 : at90usb1286 : NONE : 128 : 8 :
-DFU = AVR8 : at90usb1286 : NONE : 128 : 4 :
-DFU = AVR8 : at90usb646 : NONE : 64 : 4 :
-DFU = AVR8 : atmega32u6 : NONE : 32 : 4 :
-DFU = AVR8 : atmega32u4 : NONE : 32 : 4 :
-DFU = AVR8 : atmega16u4 : NONE : 16 : 4 :
-DFU = AVR8 : atmega32u2 : NONE : 32 : 4 :
-DFU = AVR8 : atmega16u2 : NONE : 16 : 4 :
-DFU = AVR8 : atmega8u2 : NONE : 8 : 4 :
-DFU = AVR8 : at90usb162 : NONE : 16 : 4 :
-DFU = AVR8 : at90usb82 : NONE : 8 : 4 :
+# ------------ DFU Bootloader --------------------
+DFU = AVR8 : at90usb1287 : XPLAIN : 128 : 8 : 8 :
+DFU = AVR8 : at90usb1287 : NONE : 128 : 8 : 8 :
+DFU = AVR8 : at90usb1287 : NONE : 128 : 4 : 8 :
+DFU = AVR8 : at90usb647 : NONE : 64 : 4 : 8 :
+DFU = AVR8 : at90usb1286 : NONE : 128 : 8 : 8 :
+DFU = AVR8 : at90usb1286 : NONE : 128 : 4 : 8 :
+DFU = AVR8 : at90usb646 : NONE : 64 : 4 : 8 :
+DFU = AVR8 : atmega32u6 : NONE : 32 : 4 : 8 :
+DFU = AVR8 : atmega32u4 : NONE : 32 : 4 : 8 :
+DFU = AVR8 : atmega16u4 : NONE : 16 : 4 : 8 :
+DFU = AVR8 : atmega32u2 : NONE : 32 : 4 : 8 :
+DFU = AVR8 : atmega16u2 : NONE : 16 : 4 : 8 :
+DFU = AVR8 : atmega8u2 : NONE : 8 : 4 : 8 :
+DFU = AVR8 : at90usb162 : NONE : 16 : 4 : 8 :
+DFU = AVR8 : at90usb82 : NONE : 8 : 4 : 8 :
+DFU = AVR8 : at90usb1287 : NONE : 128 : 8 : 16 :
+DFU = AVR8 : at90usb1287 : NONE : 128 : 4 : 16 :
+DFU = AVR8 : at90usb647 : NONE : 64 : 4 : 16 :
+DFU = AVR8 : at90usb1286 : NONE : 128 : 8 : 16 :
+DFU = AVR8 : at90usb1286 : NONE : 128 : 4 : 16 :
+DFU = AVR8 : at90usb646 : NONE : 64 : 4 : 16 :
+DFU = AVR8 : atmega32u6 : NONE : 32 : 4 : 16 :
+DFU = AVR8 : atmega32u4 : NONE : 32 : 4 : 16 :
+DFU = AVR8 : atmega16u4 : NONE : 16 : 4 : 16 :
+DFU = AVR8 : atmega32u2 : NONE : 32 : 4 : 16 :
+DFU = AVR8 : atmega16u2 : NONE : 16 : 4 : 16 :
+DFU = AVR8 : atmega8u2 : NONE : 8 : 4 : 16 :
+DFU = AVR8 : at90usb162 : NONE : 16 : 4 : 16 :
+DFU = AVR8 : at90usb82 : NONE : 8 : 4 : 16 :
#
-# ------------ HID Bootloader -------------
-HID = AVR8 : at90usb1287 : NONE : 128 : 8 :
-HID = AVR8 : at90usb1287 : NONE : 128 : 4 :
-HID = AVR8 : at90usb647 : NONE : 64 : 4 :
-HID = AVR8 : at90usb1286 : NONE : 128 : 8 :
-HID = AVR8 : at90usb1286 : NONE : 128 : 4 :
-HID = AVR8 : at90usb646 : NONE : 64 : 4 :
-HID = AVR8 : atmega32u6 : NONE : 32 : 4 :
-HID = AVR8 : atmega32u4 : NONE : 32 : 4 :
-HID = AVR8 : atmega16u4 : NONE : 16 : 4 :
-HID = AVR8 : atmega32u2 : NONE : 32 : 2 :
-HID = AVR8 : atmega32u2 : NONE : 32 : 4 :
-HID = AVR8 : atmega16u2 : NONE : 16 : 2 :
-HID = AVR8 : atmega16u2 : NONE : 16 : 4 :
-HID = AVR8 : atmega8u2 : NONE : 8 : 2 :
-HID = AVR8 : atmega8u2 : NONE : 8 : 4 :
-HID = AVR8 : at90usb162 : NONE : 16 : 2 :
-HID = AVR8 : at90usb162 : NONE : 16 : 4 :
-HID = AVR8 : at90usb162 : NONE : 16 : 2 :
-HID = AVR8 : at90usb162 : NONE : 16 : 4 :
+# ------------ HID Bootloader --------------------
+HID = AVR8 : at90usb1287 : NONE : 128 : 8 : 8 :
+HID = AVR8 : at90usb1287 : NONE : 128 : 4 : 8 :
+HID = AVR8 : at90usb647 : NONE : 64 : 4 : 8 :
+HID = AVR8 : at90usb1286 : NONE : 128 : 8 : 8 :
+HID = AVR8 : at90usb1286 : NONE : 128 : 4 : 8 :
+HID = AVR8 : at90usb646 : NONE : 64 : 4 : 8 :
+HID = AVR8 : atmega32u6 : NONE : 32 : 4 : 8 :
+HID = AVR8 : atmega32u4 : NONE : 32 : 4 : 8 :
+HID = AVR8 : atmega16u4 : NONE : 16 : 4 : 8 :
+HID = AVR8 : atmega32u2 : NONE : 32 : 2 : 8 :
+HID = AVR8 : atmega32u2 : NONE : 32 : 4 : 8 :
+HID = AVR8 : atmega16u2 : NONE : 16 : 2 : 8 :
+HID = AVR8 : atmega16u2 : NONE : 16 : 4 : 8 :
+HID = AVR8 : atmega8u2 : NONE : 8 : 2 : 8 :
+HID = AVR8 : atmega8u2 : NONE : 8 : 4 : 8 :
+HID = AVR8 : at90usb162 : NONE : 16 : 2 : 8 :
+HID = AVR8 : at90usb162 : NONE : 16 : 4 : 8 :
+HID = AVR8 : at90usb162 : NONE : 16 : 2 : 8 :
+HID = AVR8 : at90usb162 : NONE : 16 : 4 : 8 :
+HID = AVR8 : at90usb1287 : NONE : 128 : 8 : 8 :
+HID = AVR8 : at90usb1287 : NONE : 128 : 4 : 8 :
+HID = AVR8 : at90usb647 : NONE : 64 : 4 : 8 :
+HID = AVR8 : at90usb1286 : NONE : 128 : 8 : 16 :
+HID = AVR8 : at90usb1286 : NONE : 128 : 4 : 16 :
+HID = AVR8 : at90usb646 : NONE : 64 : 4 : 16 :
+HID = AVR8 : atmega32u6 : NONE : 32 : 4 : 16 :
+HID = AVR8 : atmega32u4 : NONE : 32 : 4 : 16 :
+HID = AVR8 : atmega16u4 : NONE : 16 : 4 : 16 :
+HID = AVR8 : atmega32u2 : NONE : 32 : 2 : 16 :
+HID = AVR8 : atmega32u2 : NONE : 32 : 4 : 16 :
+HID = AVR8 : atmega16u2 : NONE : 16 : 2 : 16 :
+HID = AVR8 : atmega16u2 : NONE : 16 : 4 : 16 :
+HID = AVR8 : atmega8u2 : NONE : 8 : 2 : 16 :
+HID = AVR8 : atmega8u2 : NONE : 8 : 4 : 16 :
+HID = AVR8 : at90usb162 : NONE : 16 : 2 : 16 :
+HID = AVR8 : at90usb162 : NONE : 16 : 4 : 16 :
+HID = AVR8 : at90usb162 : NONE : 16 : 2 : 16 :
+HID = AVR8 : at90usb162 : NONE : 16 : 4 : 16 :
#
\ No newline at end of file
# Make all possible bootloaders for all targets and configurations as set by the BootloaderTest build test
# and store them in a seperate directory called "Bootloaders"
-#
-# FIXME: Currently ignores the architecture when deciding on F_USB choices; when more architectures are
-# avaliable as bootloaders, add some additional entries to the bootloader map for F_USB.
make_bootloaders:
@echo "build_bootloaders:" > BuildMakefile
@printf "\t-mkdir Bootloaders 2>/dev/null\n\n" >> BuildMakefile
build_board=`echo $$build_cfg | cut -d':' -f3`; \
build_flashsize=`echo $$build_cfg | cut -d':' -f4`; \
build_bootsize=`echo $$build_cfg | cut -d':' -f5`; \
+ build_fusb=`echo $$build_cfg | cut -d':' -f6`; \
\
- printf "Found '%s' with FLASH: %3s KB, BOOT: %3s KB, MCU: %12s / %4s, BOARD: %s\n" $$build_bootloader $$build_flashsize $$build_bootsize $$build_mcu $$build_arch $$build_board; \
- \
- printf "\t@echo Building '%s' with FLASH: %3s KB, BOOT: %3s KB, MCU: %12s, F_USB: 8MHz, BOARD: %s\n" $$build_bootloader $$build_flashsize $$build_bootsize $$build_mcu $$build_board >> BuildMakefile; \
- printf "\t$(MAKE) -C $(patsubst %/,%,$(LUFA_ROOT))/Bootloaders/%s/ clean hex F_USB=8000000 ARCH=%s MCU=%s BOARD=%s FLASH_SIZE_KB=%s BOOT_SECTION_SIZE_KB=%s DEBUG_LEVEL=0\n" $$build_bootloader $$build_arch $$build_mcu $$build_board $$build_flashsize $$build_bootsize >> BuildMakefile; \
- printf "\tmv $(patsubst %/,%,$(LUFA_ROOT))/Bootloaders/%s/Bootloader%s.hex Bootloaders/%s-%s-%s-BOARD_%s-BOOT_%sKB_8MHz.hex\n\n" $$build_bootloader $$build_bootloader $$build_bootloader $$build_arch $$build_mcu $$build_board $$build_bootsize >> BuildMakefile; \
+ printf "Found '%s' with FLASH: %3s KB, BOOT: %3s KB, MCU: %12s / %4s, BOARD: %s, F_USB: %sMHz\n" $$build_bootloader $$build_flashsize $$build_bootsize $$build_mcu $$build_arch $$build_board $$build_fusb; \
\
- printf "\t@echo Building '%s' with FLASH: %3s KB, BOOT: %3s KB, MCU: %12s, F_USB: 16MHz, BOARD: %s\n" $$build_bootloader $$build_flashsize $$build_bootsize $$build_mcu $$build_board >> BuildMakefile; \
- printf "\t$(MAKE) -C $(patsubst %/,%,$(LUFA_ROOT))/Bootloaders/%s/ clean hex F_USB=16000000 ARCH=%s MCU=%s BOARD=%s FLASH_SIZE_KB=%s BOOT_SECTION_SIZE_KB=%s DEBUG_LEVEL=0\n" $$build_bootloader $$build_arch $$build_mcu $$build_board $$build_flashsize $$build_bootsize >> BuildMakefile; \
- printf "\tmv $(patsubst %/,%,$(LUFA_ROOT))/Bootloaders/%s/Bootloader%s.hex Bootloaders/%s-%s-%s-BOARD_%s-BOOT_%sKB_16MHz.hex\n\n" $$build_bootloader $$build_bootloader $$build_bootloader $$build_arch $$build_mcu $$build_board $$build_bootsize >> BuildMakefile; \
+ printf "\t@echo Building '%s' with FLASH: %3s KB, BOOT: %3s KB, MCU: %12s, BOARD: %s, F_USB: %sMHz\n" $$build_bootloader $$build_flashsize $$build_bootsize $$build_mcu $$build_board $$build_fusb >> BuildMakefile; \
+ printf "\t$(MAKE) -C $(patsubst %/,%,$(LUFA_ROOT))/Bootloaders/%s/ clean hex ARCH=%s MCU=%s BOARD=%s FLASH_SIZE_KB=%s BOOT_SECTION_SIZE_KB=%s F_USB=%s000000 DEBUG_LEVEL=0\n" $$build_bootloader $$build_arch $$build_mcu $$build_board $$build_flashsize $$build_bootsize $$build_fusb >> BuildMakefile; \
+ printf "\tmv $(patsubst %/,%,$(LUFA_ROOT))/Bootloaders/%s/Bootloader%s.hex Bootloaders/%s-%s-%s-BOARD_%s-BOOT_%sKB-%sMHz.hex\n\n" $$build_bootloader $$build_bootloader $$build_bootloader $$build_arch $$build_mcu $$build_board $$build_bootsize $$build_fusb >> BuildMakefile; \
fi; \
done < $(patsubst %/,%,$(LUFA_ROOT))/BuildTests/BootloaderTest/BootloaderDeviceMap.cfg