Change bootloader makefiles to automatically compute the bootloader starting address from a flash size and bootloader section size, expressed in KB.
This commit is contained in:
parent
5995c3f880
commit
088bfb10b2
5 changed files with 12 additions and 7 deletions
|
@ -38,9 +38,9 @@
|
|||
|
||||
/** Flag to indicate if the bootloader is currently running in secure mode, disallowing memory operations
|
||||
* other than erase. This is initially set to the value set by SECURE_MODE, and cleared by the bootloader
|
||||
* once a memory erase has completed.
|
||||
* once a memory erase has completed in a bootloader session.
|
||||
*/
|
||||
bool IsSecure = SECURE_MODE;
|
||||
bool IsSecure = SECURE_MODE;
|
||||
|
||||
/** Flag to indicate if the bootloader should be running, or should exit and allow the application code to run
|
||||
* via a soft reset. When cleared, the bootloader will abort, the USB interface will shut down and the application
|
||||
|
|
|
@ -86,11 +86,13 @@ F_CLOCK = $(F_CPU)
|
|||
|
||||
|
||||
# Starting byte address of the bootloader, as a byte address - computed via the formula
|
||||
# BOOT_START = ((TOTAL_FLASH_BYTES - BOOTLOADER_SECTION_SIZE_BYTES) * 1024)
|
||||
# BOOT_START = ((FLASH_SIZE_KB - BOOT_SECTION_SIZE_KB) * 1024)
|
||||
#
|
||||
# Note that the bootloader size and start address given in AVRStudio is in words and not
|
||||
# bytes, and so will need to be doubled to obtain the byte address needed by AVR-GCC.
|
||||
BOOT_START = 0x1E000
|
||||
FLASH_SIZE_KB = 128
|
||||
BOOT_SECTION_SIZE_KB = 4
|
||||
BOOT_START = 0x$(shell echo "obase=16; ($(FLASH_SIZE_KB) - $(BOOT_SECTION_SIZE_KB)) * 1024" | bc)
|
||||
|
||||
|
||||
# Output format. (can be srec, ihex, binary)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue