DM: updated bootloader size to 16k, fixed USB vid/pid

This commit is contained in:
dean 2017-10-04 11:27:45 -04:00
parent e42ab7bd90
commit da3291d03d
13 changed files with 19 additions and 23 deletions

View file

@ -180,7 +180,7 @@ adafruit_metro_m4.build.variant_system_lib=
adafruit_metro_m4.build.vid=0x2341
adafruit_metro_m4.build.pid=0x804d
adafruit_metro_m4.bootloader.tool=openocd
adafruit_metro_m4.bootloader.file=metroM4/samdx1_sam_ba.bin
adafruit_metro_m4.bootloader.file=metroM4/samd51_sam_ba.bin
adafruit_metro_m4.compiler.c.elf.extra_flags=-mfloat-abi=hard -mfpu=fpv4-sp-d16
adafruit_metro_m4.compiler.c.extra_flags=-mfloat-abi=hard -mfpu=fpv4-sp-d16
adafruit_metro_m4.compiler.cpp.extra_flags=-mfloat-abi=hard -mfpu=fpv4-sp-d16

View file

@ -71,9 +71,9 @@ endif
#DM: hack b/c I don't know how things work
#ELF=$(NAME).elf
ELF=samdx1_sam_ba.elf
BIN=samdx1_sam_ba.bin
HEX=samdx1_sam_ba.hex
ELF=samd51_sam_ba.elf
BIN=samd51_sam_ba.bin
HEX=samd51_sam_ba.hex
INCLUDES=-I"$(MODULE_PATH)/tools/CMSIS/4.5.0/CMSIS/Include/" -I"$(MODULE_PATH)/tools/CMSIS-Atmel/1.1.0/CMSIS/Device/ATMEL/"
@ -114,7 +114,7 @@ all: print_info $(SOURCES) $(BIN) $(HEX) $(AS_BUILD)
$(ELF): Makefile $(BUILD_PATH) $(OBJECTS)
@echo ----------------------------------------------------------
@echo Creating ELF binary
"$(CC)" -L. -L$(BUILD_PATH) $(LDFLAGS) -Os -Wl,--gc-sections -save-temps -Tbootloader_samdx1.ld -Wl,-Map,"$(BUILD_PATH)/$(NAME).map" -o "$(BUILD_PATH)/$(ELF)" -Wl,--start-group $(OBJECTS) -lm -Wl,--end-group
"$(CC)" -L. -L$(BUILD_PATH) $(LDFLAGS) -Os -Wl,--gc-sections -save-temps -Tbootloader_samd51.ld -Wl,-Map,"$(BUILD_PATH)/$(NAME).map" -o "$(BUILD_PATH)/$(ELF)" -Wl,--start-group $(OBJECTS) -lm -Wl,--end-group
"$(NM)" "$(BUILD_PATH)/$(ELF)" >"$(BUILD_PATH)/$(NAME)_symbols.txt"
"$(SIZE)" --format=sysv -t -x $(BUILD_PATH)/$(ELF)

View file

@ -25,9 +25,9 @@
*/
#define STRING_PRODUCT "Metro M4"
#define USB_VID_HIGH 0x23
#define USB_VID_LOW 0x41
#define USB_VID_LOW 0x9A
#define USB_PID_HIGH 0x00
#define USB_PID_LOW 0x4D
#define USB_PID_LOW 0x20
/*
* If BOOT_DOUBLE_TAP_ADDRESS is defined the bootloader is started by

View file

@ -25,13 +25,9 @@
* RAM.LENGTH: length of RAM bank 0
*/
/*
* TODO: DM: fix this!!
*/
MEMORY
{
FLASH (rx) : ORIGIN = 0x00000000, LENGTH = 0x2000 /* First 8KB used by bootloader */
FLASH (rx) : ORIGIN = 0x00000000, LENGTH = 0x4000 /* First 16KB used by bootloader */
RAM (rwx) : ORIGIN = 0x20000000, LENGTH = 0x00030000-0x0004 /* 4 bytes used by bootloader to keep data between resets */
}

View file

@ -13,7 +13,7 @@
<OutputFileExtension>.elf</OutputFileExtension>
<OutputDirectory>$(MSBuildProjectDirectory)\$(Configuration)</OutputDirectory>
<AssemblyName>samd21_sam_ba</AssemblyName>
<Name>samdx1_sam_ba</Name>
<Name>samd51_sam_ba</Name>
<RootNamespace>samd21_sam_ba</RootNamespace>
<ToolchainFlavour>Native</ToolchainFlavour>
<KeepTimersRunning>true</KeepTimersRunning>
@ -133,7 +133,7 @@
<SubType>compile</SubType>
<Link>board_definitions.h</Link>
</Compile>
<Compile Include="board_definitions_arduino_x1.h">
<Compile Include="board_definitions_metro_m4.h">
<SubType>compile</SubType>
</Compile>
<Compile Include="board_driver_led.c">
@ -206,7 +206,7 @@
</Compile>
</ItemGroup>
<ItemGroup>
<None Include="bootloader_samdx1.ld">
<None Include="bootloader_samd51.ld">
<SubType>compile</SubType>
</None>
<None Include="Makefile">

View file

@ -122,7 +122,7 @@
:10079000237813F0FF0F05D0002000F02DFB00F0B0
:1007A000C5FBFCE7237813F0FF0FECD100F016FF38
:1007B0000028E8D0012000F01FFB00F0B7FBFCE7A9
:1007C000002000000420000014020020000C004063
:1007C000004000000440000014020020000C004023
:1007D000FC7F002035817307808D5B0000ED00E019
:1007E0000080004110E000E07B00002008B5FFF72A
:1007F00051FC00F077FB08BD10B5064C4FF082436A
@ -402,15 +402,15 @@
:1019100013F8012B002AFBD1181A01387047000078
:10192000F8B500BFF8BC08BC9E467047F8B500BFCC
:10193000F8BC08BC9E4670470403090441726475F4
:10194000696E6F204C4C430041726475696E6F2064
:1019500078310000120100020200004041234D00D6
:10194000696E6F204C4C43004D6574726F204D34AE
:101950000000000012010002020000409A23200053
:101960000002010200010000080000001000000059
:101970002000000040000000800000000001000086
:101980000002000000040000A1150000C5150000C1
:10199000B5150000F915000015160000B916000075
:1019A000E5170000322E30000A0D0000760000001E
:1019B000200000004175672020312032303137008F
:1019C00031373A33343A333400000000580A0D00FE
:1019B000200000004F637420203420323031370083
:1019C00031303A35353A313000000000580A0D0008
:1019D000590A0D005A000000230A0D003E000000C5
:1019E000F90C00001D0D00003D0D00005D0D000014
:1019F000790D00005D0D00009D0D00005B417264DB

View file

@ -3,7 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Atmel Studio Solution File, Format Version 11.00
VisualStudioVersion = 14.0.23107.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{54F91283-7BC4-4236-8FF9-10F437C3AD48}") = "samdx1_sam_ba", "samdx1_sam_ba.cproj", "{DCE6C7E3-EE26-4D79-826B-08594B9AD897}"
Project("{54F91283-7BC4-4236-8FF9-10F437C3AD48}") = "samd51_sam_ba", "samd51_sam_ba.cproj", "{DCE6C7E3-EE26-4D79-826B-08594B9AD897}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution

View file

@ -25,7 +25,7 @@
*/
MEMORY
{
FLASH (rx) : ORIGIN = 0x00000000+0x2000, LENGTH = 0x00100000-0x2000 /* First 8KB used by bootloader */
FLASH (rx) : ORIGIN = 0x00000000+0x4000, LENGTH = 0x00100000-0x4000 /* First 16KB used by bootloader */
RAM (rwx) : ORIGIN = 0x20000000, LENGTH = 0x00040000
}
@ -69,7 +69,7 @@ SECTIONS
KEEP(*(.sketch_boot))
. = ALIGN(0x2000);
. = ALIGN(0x4000);
KEEP(*(.isr_vector))
*(.text*)