mirror of
https://github.com/hathach/tinyusb.git
synced 2025-01-17 05:32:55 +08:00
Merge pull request #70 from hathach/develop
add uf2 target for uf2 bootloader boards
This commit is contained in:
commit
d825e0a8f1
3
.gitmodules
vendored
3
.gitmodules
vendored
@ -13,3 +13,6 @@
|
|||||||
[submodule "hw/mcu/nxp/lpcopen"]
|
[submodule "hw/mcu/nxp/lpcopen"]
|
||||||
path = hw/mcu/nxp/lpcopen
|
path = hw/mcu/nxp/lpcopen
|
||||||
url = https://github.com/hathach/lpcopen.git
|
url = https://github.com/hathach/lpcopen.git
|
||||||
|
[submodule "tools/uf2"]
|
||||||
|
path = tools/uf2
|
||||||
|
url = https://github.com/microsoft/uf2.git
|
||||||
|
@ -12,6 +12,7 @@ MKDIR = mkdir
|
|||||||
SED = sed
|
SED = sed
|
||||||
CP = cp
|
CP = cp
|
||||||
RM = rm
|
RM = rm
|
||||||
|
PYTHON ?= python
|
||||||
|
|
||||||
# Select the board to build for.
|
# Select the board to build for.
|
||||||
ifeq ($(BOARD),)
|
ifeq ($(BOARD),)
|
||||||
|
@ -43,6 +43,8 @@ endif
|
|||||||
.DEFAULT_GOAL := all
|
.DEFAULT_GOAL := all
|
||||||
all: $(BUILD)/$(BOARD)-firmware.bin size
|
all: $(BUILD)/$(BOARD)-firmware.bin size
|
||||||
|
|
||||||
|
uf2: $(BUILD)/$(BOARD)-firmware.uf2
|
||||||
|
|
||||||
OBJ_DIRS = $(sort $(dir $(OBJ)))
|
OBJ_DIRS = $(sort $(dir $(OBJ)))
|
||||||
$(OBJ): | $(OBJ_DIRS)
|
$(OBJ): | $(OBJ_DIRS)
|
||||||
$(OBJ_DIRS):
|
$(OBJ_DIRS):
|
||||||
@ -60,6 +62,11 @@ $(BUILD)/$(BOARD)-firmware.hex: $(BUILD)/$(BOARD)-firmware.elf
|
|||||||
@echo CREATE $@
|
@echo CREATE $@
|
||||||
@$(OBJCOPY) -O ihex $^ $@
|
@$(OBJCOPY) -O ihex $^ $@
|
||||||
|
|
||||||
|
UF2_FAMILY ?= 0x00
|
||||||
|
$(BUILD)/$(BOARD)-firmware.uf2: $(BUILD)/$(BOARD)-firmware.hex
|
||||||
|
@echo CREATE $@
|
||||||
|
$(PYTHON) $(TOP)/tools/uf2/utils/uf2conv.py -f $(UF2_FAMILY) -c -o $@ $^
|
||||||
|
|
||||||
# We set vpath to point to the top of the tree so that the source files
|
# We set vpath to point to the top of the tree so that the source files
|
||||||
# can be located. By following this scheme, it allows a single build rule
|
# can be located. By following this scheme, it allows a single build rule
|
||||||
# to be used to compile all .c files.
|
# to be used to compile all .c files.
|
||||||
|
@ -12,7 +12,7 @@ CFLAGS += \
|
|||||||
CFLAGS += -Wno-error=undef
|
CFLAGS += -Wno-error=undef
|
||||||
|
|
||||||
# All source paths should be relative to the top level.
|
# All source paths should be relative to the top level.
|
||||||
LD_FILE = hw/mcu/nordic/nrfx/mdk/nrf52840_xxaa.ld
|
LD_FILE = hw/bsp/feather_nrf52840_express/nrf52840_s140_v6.ld
|
||||||
|
|
||||||
LDFLAGS += -L$(TOP)/hw/mcu/nordic/nrfx/mdk
|
LDFLAGS += -L$(TOP)/hw/mcu/nordic/nrfx/mdk
|
||||||
|
|
||||||
@ -47,5 +47,8 @@ FREERTOS_PORT = ARM_CM4F
|
|||||||
JLINK_DEVICE = nRF52840_xxAA
|
JLINK_DEVICE = nRF52840_xxAA
|
||||||
JLINK_IF = swd
|
JLINK_IF = swd
|
||||||
|
|
||||||
|
# For uf2 conversion
|
||||||
|
UF2_FAMILY = 0xADA52840
|
||||||
|
|
||||||
# flash using jlink
|
# flash using jlink
|
||||||
flash: flash-jlink
|
flash: flash-jlink
|
||||||
|
38
hw/bsp/feather_nrf52840_express/nrf52840_s140_v6.ld
Normal file
38
hw/bsp/feather_nrf52840_express/nrf52840_s140_v6.ld
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
/* Linker script to configure memory regions. */
|
||||||
|
|
||||||
|
SEARCH_DIR(.)
|
||||||
|
GROUP(-lgcc -lc -lnosys)
|
||||||
|
|
||||||
|
MEMORY
|
||||||
|
{
|
||||||
|
FLASH (rx) : ORIGIN = 0x26000, LENGTH = 0xED000 - 0x26000
|
||||||
|
|
||||||
|
/* SRAM required by S132 depend on
|
||||||
|
* - Attribute Table Size
|
||||||
|
* - Vendor UUID count
|
||||||
|
* - Max ATT MTU
|
||||||
|
* - Concurrent connection peripheral + central + secure links
|
||||||
|
* - Event Len, HVN queue, Write CMD queue
|
||||||
|
*/
|
||||||
|
RAM (rwx) : ORIGIN = 0x20003400, LENGTH = 0x20040000 - 0x20003400
|
||||||
|
}
|
||||||
|
|
||||||
|
SECTIONS
|
||||||
|
{
|
||||||
|
. = ALIGN(4);
|
||||||
|
.svc_data :
|
||||||
|
{
|
||||||
|
PROVIDE(__start_svc_data = .);
|
||||||
|
KEEP(*(.svc_data))
|
||||||
|
PROVIDE(__stop_svc_data = .);
|
||||||
|
} > RAM
|
||||||
|
|
||||||
|
.fs_data :
|
||||||
|
{
|
||||||
|
PROVIDE(__start_fs_data = .);
|
||||||
|
KEEP(*(.fs_data))
|
||||||
|
PROVIDE(__stop_fs_data = .);
|
||||||
|
} > RAM
|
||||||
|
} INSERT AFTER .data;
|
||||||
|
|
||||||
|
INCLUDE "nrf52_common.ld"
|
@ -131,33 +131,32 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef CFG_TUSB_MEM_ALIGN
|
#ifndef CFG_TUSB_MEM_ALIGN
|
||||||
#define CFG_TUSB_MEM_ALIGN ATTR_ALIGNED(4)
|
#define CFG_TUSB_MEM_ALIGN ATTR_ALIGNED(4)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef CFG_TUSB_OS
|
#ifndef CFG_TUSB_OS
|
||||||
#define CFG_TUSB_OS OPT_OS_NONE
|
#define CFG_TUSB_OS OPT_OS_NONE
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
//--------------------------------------------------------------------
|
//--------------------------------------------------------------------
|
||||||
// DEVICE OPTIONS
|
// DEVICE OPTIONS
|
||||||
//--------------------------------------------------------------------
|
//--------------------------------------------------------------------
|
||||||
#if TUSB_OPT_DEVICE_ENABLED
|
|
||||||
|
|
||||||
#ifndef CFG_TUD_ENDOINT0_SIZE
|
#ifndef CFG_TUD_ENDOINT0_SIZE
|
||||||
#define CFG_TUD_ENDOINT0_SIZE 64
|
#define CFG_TUD_ENDOINT0_SIZE 64
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef CFG_TUD_CTRL_BUFSIZE
|
#ifndef CFG_TUD_CDC
|
||||||
#define CFG_TUD_CTRL_BUFSIZE 256
|
#define CFG_TUD_CDC 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef CFG_TUD_CDC
|
#ifndef CFG_TUD_MSC
|
||||||
#define CFG_TUD_CDC 0
|
#define CFG_TUD_MSC 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef CFG_TUD_MSC
|
#ifndef CFG_TUD_HID
|
||||||
#define CFG_TUD_MSC 0
|
#define CFG_TUD_HID 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef CFG_TUD_MIDI
|
#ifndef CFG_TUD_MIDI
|
||||||
#define CFG_TUD_MIDI 0
|
#define CFG_TUD_MIDI 0
|
||||||
@ -167,7 +166,6 @@
|
|||||||
#define CFG_TUD_CUSTOM_CLASS 0
|
#define CFG_TUD_CUSTOM_CLASS 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif // TUSB_OPT_DEVICE_ENABLED
|
|
||||||
|
|
||||||
//--------------------------------------------------------------------
|
//--------------------------------------------------------------------
|
||||||
// HOST OPTIONS
|
// HOST OPTIONS
|
||||||
|
1
tools/uf2
Submodule
1
tools/uf2
Submodule
@ -0,0 +1 @@
|
|||||||
|
Subproject commit 19615407727073e36d81bf239c52108ba92e7660
|
Loading…
x
Reference in New Issue
Block a user