summaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorHa Thach <[email protected]>2021-03-18 17:38:51 +0700
committerGitHub <[email protected]>2021-03-18 17:38:51 +0700
commite182bb2a5b27eca914a72e8c074dabd333603d34 (patch)
tree0933213bd5ca568710a08b7172530d13f9384e74 /hw
parent881321e7635bf49253f7714912a24949501e4376 (diff)
parent253430a76585f529340e480397e07de567370b5f (diff)
Merge pull request #729 from hathach/cleanup-make
Cleanup make
Diffstat (limited to 'hw')
-rw-r--r--hw/bsp/d5035_01/board.mk9
-rw-r--r--hw/bsp/da14695_dk_usb/board.mk9
-rw-r--r--hw/bsp/da1469x_dk_pro/board.mk9
-rw-r--r--hw/bsp/ea4088qs/board.mk7
-rw-r--r--hw/bsp/ea4357/board.mk7
-rw-r--r--hw/bsp/esp32s2/family.mk36
-rw-r--r--hw/bsp/fomu/family.mk6
-rw-r--r--hw/bsp/frdm_kl25z/board.mk7
-rw-r--r--hw/bsp/imxrt/family.mk7
-rw-r--r--hw/bsp/lpc18/family.mk7
-rw-r--r--hw/bsp/lpc55/family.mk7
-rw-r--r--hw/bsp/lpcxpresso11u37/board.mk7
-rw-r--r--hw/bsp/lpcxpresso11u68/board.mk7
-rw-r--r--hw/bsp/lpcxpresso1347/board.mk7
-rw-r--r--hw/bsp/lpcxpresso1549/board.mk7
-rw-r--r--hw/bsp/lpcxpresso1769/board.mk7
-rw-r--r--hw/bsp/lpcxpresso51u68/board.mk7
-rw-r--r--hw/bsp/lpcxpresso54114/board.mk7
-rw-r--r--hw/bsp/mbed1768/board.mk7
-rw-r--r--hw/bsp/msp430/family.mk12
-rw-r--r--hw/bsp/ngx4330/board.mk7
-rw-r--r--hw/bsp/nrf/family.mk7
-rw-r--r--hw/bsp/nutiny_nuc121s/board.mk7
-rw-r--r--hw/bsp/nutiny_nuc125s/board.mk9
-rw-r--r--hw/bsp/nutiny_nuc126v/board.mk7
-rw-r--r--hw/bsp/nutiny_sdk_nuc120/board.mk7
-rw-r--r--hw/bsp/nutiny_sdk_nuc505/board.mk7
-rw-r--r--hw/bsp/rp2040/family.mk19
-rw-r--r--hw/bsp/samd11/family.mk7
-rw-r--r--hw/bsp/samd21/family.mk7
-rw-r--r--hw/bsp/samd51/family.mk7
-rw-r--r--hw/bsp/same54xplainedpro/board.mk12
-rw-r--r--hw/bsp/same70_xplained/board.mk3
-rw-r--r--hw/bsp/samg55xplained/board.mk7
-rw-r--r--hw/bsp/spresense/board.mk10
-rw-r--r--hw/bsp/stm32f070rbnucleo/board.mk7
-rw-r--r--hw/bsp/stm32f072disco/board.mk7
-rw-r--r--hw/bsp/stm32f103bluepill/board.mk7
-rw-r--r--hw/bsp/stm32f207nucleo/board.mk7
-rw-r--r--hw/bsp/stm32f303disco/board.mk7
-rw-r--r--hw/bsp/stm32f4/family.mk7
-rw-r--r--hw/bsp/stm32f7/family.mk7
-rw-r--r--hw/bsp/stm32h7/family.mk7
-rw-r--r--hw/bsp/stm32l0538disco/board.mk7
-rw-r--r--hw/bsp/stm32l476disco/board.mk7
-rw-r--r--hw/bsp/stm32l4r5nucleo/board.mk7
46 files changed, 150 insertions, 229 deletions
diff --git a/hw/bsp/d5035_01/board.mk b/hw/bsp/d5035_01/board.mk
index dc364a70c..1d09bd3d4 100644
--- a/hw/bsp/d5035_01/board.mk
+++ b/hw/bsp/d5035_01/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/microchip
+DEPS_SUBMODULES += hw/mcu/microchip
HWREV ?= 1
CFLAGS += \
@@ -22,8 +22,9 @@ CFLAGS += \
LD_FILE = hw/bsp/$(BOARD)/same51j19a_flash.ld
SRC_C += \
+ src/portable/microchip/samd/dcd_samd.c \
hw/mcu/microchip/same51/gcc/gcc/startup_same51.c \
- hw/mcu/microchip/same51/gcc/system_same51.c \
+ hw/mcu/microchip/same51/gcc/system_same51.c
ifdef SYSCALLS
ifneq ($(SYSCALLS),0)
@@ -47,10 +48,6 @@ INC += \
$(TOP)/hw/mcu/microchip/same51/hri \
$(TOP)/hw/mcu/microchip/same51/CMSIS/Include
-# For TinyUSB port source
-VENDOR = microchip
-CHIP_FAMILY = samd
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM4F
diff --git a/hw/bsp/da14695_dk_usb/board.mk b/hw/bsp/da14695_dk_usb/board.mk
index 58f3947cc..e969c79c2 100644
--- a/hw/bsp/da14695_dk_usb/board.mk
+++ b/hw/bsp/da14695_dk_usb/board.mk
@@ -16,7 +16,9 @@ MCU_FAMILY_DIR = hw/mcu/dialog/da1469x
# All source paths should be relative to the top level.
LD_FILE = hw/bsp/$(BOARD)/da1469x.ld
+# While this is for da1469x chip, there is chance that da1468x chip family will also work
SRC_C += \
+ src/portable/dialog/da146xx/dcd_da146xx.c \
$(MCU_FAMILY_DIR)/src/system_da1469x.c \
$(MCU_FAMILY_DIR)/src/da1469x_clock.c \
$(MCU_FAMILY_DIR)/src/hal_gpio.c \
@@ -26,12 +28,7 @@ SRC_S += hw/bsp/$(BOARD)/gcc_startup_da1469x.S
INC += \
$(TOP)/hw/bsp/$(BOARD) \
$(TOP)/$(MCU_FAMILY_DIR)/include \
- $(TOP)/$(MCU_FAMILY_DIR)/SDK_10.0.8.105/sdk/bsp/include \
-
-# For TinyUSB port source
-VENDOR = dialog
-# While this is for da1469x chip, there is chance that da1468x chip family will also work
-CHIP_FAMILY = da146xx
+ $(TOP)/$(MCU_FAMILY_DIR)/SDK_10.0.8.105/sdk/bsp/include
# For freeRTOS port source
FREERTOS_PORT = ARM_CM33_NTZ/non_secure
diff --git a/hw/bsp/da1469x_dk_pro/board.mk b/hw/bsp/da1469x_dk_pro/board.mk
index 5362498ea..980fc422f 100644
--- a/hw/bsp/da1469x_dk_pro/board.mk
+++ b/hw/bsp/da1469x_dk_pro/board.mk
@@ -16,7 +16,9 @@ MCU_FAMILY_DIR = hw/mcu/dialog/da1469x
# All source paths should be relative to the top level.
LD_FILE = hw/bsp/$(BOARD)/da1469x.ld
+# While this is for da1469x chip, there is chance that da1468x chip family will also work
SRC_C += \
+ src/portable/dialog/da146xx/dcd_da146xx.c \
$(MCU_FAMILY_DIR)/src/system_da1469x.c \
$(MCU_FAMILY_DIR)/src/da1469x_clock.c \
$(MCU_FAMILY_DIR)/src/hal_gpio.c \
@@ -26,12 +28,7 @@ SRC_S += hw/bsp/$(BOARD)/gcc_startup_da1469x.S
INC += \
$(TOP)/hw/bsp/$(BOARD) \
$(TOP)/$(MCU_FAMILY_DIR)/include \
- $(TOP)/$(MCU_FAMILY_DIR)/SDK_10.0.8.105/sdk/bsp/include \
-
-# For TinyUSB port source
-VENDOR = dialog
-# While this is for da1469x chip, there is chance that da1468x chip family will also work
-CHIP_FAMILY = da146xx
+ $(TOP)/$(MCU_FAMILY_DIR)/SDK_10.0.8.105/sdk/bsp/include
# For freeRTOS port source
FREERTOS_PORT = ARM_CM33_NTZ/non_secure
diff --git a/hw/bsp/ea4088qs/board.mk b/hw/bsp/ea4088qs/board.mk
index 51e5babe8..05e730d29 100644
--- a/hw/bsp/ea4088qs/board.mk
+++ b/hw/bsp/ea4088qs/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nxp
+DEPS_SUBMODULES += hw/mcu/nxp
CFLAGS += \
-flto \
@@ -22,6 +22,7 @@ MCU_DIR = hw/mcu/nxp/lpcopen/lpc40xx/lpc_chip_40xx
LD_FILE = hw/bsp/$(BOARD)/lpc4088.ld
SRC_C += \
+ src/portable/nxp/lpc17_40/dcd_lpc17_40.c \
$(MCU_DIR)/../gcc/cr_startup_lpc40xx.c \
$(MCU_DIR)/src/chip_17xx_40xx.c \
$(MCU_DIR)/src/clock_17xx_40xx.c \
@@ -35,10 +36,6 @@ SRC_C += \
INC += \
$(TOP)/$(MCU_DIR)/inc
-# For TinyUSB port source
-VENDOR = nxp
-CHIP_FAMILY = lpc17_40
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM4F
diff --git a/hw/bsp/ea4357/board.mk b/hw/bsp/ea4357/board.mk
index 09c782cac..1ad970579 100644
--- a/hw/bsp/ea4357/board.mk
+++ b/hw/bsp/ea4357/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nxp
+DEPS_SUBMODULES += hw/mcu/nxp
CFLAGS += \
-flto \
@@ -21,6 +21,7 @@ MCU_DIR = hw/mcu/nxp/lpcopen/lpc43xx/lpc_chip_43xx
LD_FILE = hw/bsp/$(BOARD)/lpc4357.ld
SRC_C += \
+ src/portable/nxp/transdimension/dcd_transdimension.c \
$(MCU_DIR)/../gcc/cr_startup_lpc43xx.c \
$(MCU_DIR)/src/chip_18xx_43xx.c \
$(MCU_DIR)/src/clock_18xx_43xx.c \
@@ -35,10 +36,6 @@ INC += \
$(TOP)/$(MCU_DIR)/inc \
$(TOP)/$(MCU_DIR)/inc/config_43xx
-# For TinyUSB port source
-VENDOR = nxp
-CHIP_FAMILY = transdimension
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM4F
diff --git a/hw/bsp/esp32s2/family.mk b/hw/bsp/esp32s2/family.mk
new file mode 100644
index 000000000..8bd290eb3
--- /dev/null
+++ b/hw/bsp/esp32s2/family.mk
@@ -0,0 +1,36 @@
+#DEPS_SUBMODULES +=
+
+.PHONY: all clean flash
+
+all:
+ idf.py -B$(BUILD) -DFAMILY=$(FAMILY) -DBOARD=$(BOARD) $(CMAKE_DEFSYM) build
+
+build: all
+
+clean:
+ idf.py -B$(BUILD) -DFAMILY=$(FAMILY) -DBOARD=$(BOARD) $(CMAKE_DEFSYM) clean
+
+fullclean:
+ idf.py -B$(BUILD) -DFAMILY=$(FAMILY) -DBOARD=$(BOARD) $(CMAKE_DEFSYM) fullclean
+
+flash:
+ idf.py -B$(BUILD) -DFAMILY=$(FAMILY) -DBOARD=$(BOARD) $(CMAKE_DEFSYM) flash
+
+bootloader-flash:
+ idf.py -B$(BUILD) -DFAMILY=$(FAMILY) -DBOARD=$(BOARD) $(CMAKE_DEFSYM) bootloader-flash
+
+app-flash:
+ idf.py -B$(BUILD) -DFAMILY=$(FAMILY) -DBOARD=$(BOARD) $(CMAKE_DEFSYM) app-flash
+
+erase:
+ idf.py -B$(BUILD) -DFAMILY=$(FAMILY) -DBOARD=$(BOARD) $(CMAKE_DEFSYM) erase_flash
+
+monitor:
+ idf.py -B$(BUILD) -DFAMILY=$(FAMILY) -DBOARD=$(BOARD) $(CMAKE_DEFSYM) monitor
+
+uf2: $(BUILD)/$(PROJECT).uf2
+
+UF2_FAMILY_ID = 0xbfdd4eee
+$(BUILD)/$(PROJECT).uf2: $(BUILD)/$(PROJECT).bin
+ @echo CREATE $@
+ $(PYTHON) $(TOP)/tools/uf2/utils/uf2conv.py -f $(UF2_FAMILY_ID) -b 0x0 -c -o $@ $^
diff --git a/hw/bsp/fomu/family.mk b/hw/bsp/fomu/family.mk
index f615216be..40cb5dd45 100644
--- a/hw/bsp/fomu/family.mk
+++ b/hw/bsp/fomu/family.mk
@@ -11,15 +11,13 @@ CROSS_COMPILE = riscv-none-embed-
# All source paths should be relative to the top level.
LD_FILE = $(FAMILY_PATH)/fomu.ld
+SRC_C += src/portable/valentyusb/eptri/dcd_eptri.c
+
SRC_S += $(FAMILY_PATH)/crt0-vexriscv.S
INC += \
$(TOP)/$(FAMILY_PATH)/include
-# For TinyUSB port source
-VENDOR = valentyusb
-CHIP_FAMILY = eptri
-
# For freeRTOS port source
FREERTOS_PORT = RISC-V
diff --git a/hw/bsp/frdm_kl25z/board.mk b/hw/bsp/frdm_kl25z/board.mk
index 5ad4d2052..1a4d718cf 100644
--- a/hw/bsp/frdm_kl25z/board.mk
+++ b/hw/bsp/frdm_kl25z/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nxp
+DEPS_SUBMODULES += hw/mcu/nxp
CFLAGS += \
-mthumb \
@@ -16,6 +16,7 @@ MCU_DIR = hw/mcu/nxp/sdk/devices/MKL25Z4
LD_FILE = $(MCU_DIR)/gcc/MKL25Z128xxx4_flash.ld
SRC_C += \
+ src/portable/nxp/khci/dcd_khci.c \
$(MCU_DIR)/system_MKL25Z4.c \
$(MCU_DIR)/project_template/clock_config.c \
$(MCU_DIR)/drivers/fsl_clock.c \
@@ -31,10 +32,6 @@ INC += \
SRC_S += $(MCU_DIR)/gcc/startup_MKL25Z4.S
-# For TinyUSB port source
-VENDOR = nxp
-CHIP_FAMILY = khci
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM0
diff --git a/hw/bsp/imxrt/family.mk b/hw/bsp/imxrt/family.mk
index c07e68d2b..1b6d7e8d6 100644
--- a/hw/bsp/imxrt/family.mk
+++ b/hw/bsp/imxrt/family.mk
@@ -1,5 +1,5 @@
UF2_FAMILY_ID = 0x4fb2d5bd
-DEPS_SUBMODULES = hw/mcu/nxp
+DEPS_SUBMODULES += hw/mcu/nxp
include $(TOP)/$(BOARD_PATH)/board.mk
@@ -27,6 +27,7 @@ LDFLAGS += \
-Wl,--defsym,__stack_size__=0x800 \
SRC_C += \
+ src/portable/nxp/transdimension/dcd_transdimension.c \
$(MCU_DIR)/system_$(MCU_VARIANT).c \
$(MCU_DIR)/xip/fsl_flexspi_nor_boot.c \
$(MCU_DIR)/project_template/clock_config.c \
@@ -44,10 +45,6 @@ INC += \
SRC_S += $(MCU_DIR)/gcc/startup_$(MCU_VARIANT).S
-# For TinyUSB port source
-VENDOR = nxp
-CHIP_FAMILY = transdimension
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM7/r0p1
diff --git a/hw/bsp/lpc18/family.mk b/hw/bsp/lpc18/family.mk
index 05ff27c38..0908e1877 100644
--- a/hw/bsp/lpc18/family.mk
+++ b/hw/bsp/lpc18/family.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nxp
+DEPS_SUBMODULES += hw/mcu/nxp
include $(TOP)/$(BOARD_PATH)/board.mk
@@ -18,6 +18,7 @@ CFLAGS += -Wno-error=unused-parameter -Wno-error=strict-prototypes
MCU_DIR = hw/mcu/nxp/lpcopen/lpc18xx/lpc_chip_18xx
SRC_C += \
+ src/portable/nxp/transdimension/dcd_transdimension.c \
$(MCU_DIR)/../gcc/cr_startup_lpc18xx.c \
$(MCU_DIR)/src/chip_18xx_43xx.c \
$(MCU_DIR)/src/clock_18xx_43xx.c \
@@ -30,9 +31,5 @@ INC += \
$(TOP)/$(MCU_DIR)/inc \
$(TOP)/$(MCU_DIR)/inc/config_18xx
-# For TinyUSB port source
-VENDOR = nxp
-CHIP_FAMILY = transdimension
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM3
diff --git a/hw/bsp/lpc55/family.mk b/hw/bsp/lpc55/family.mk
index 8934cb422..c8874f571 100644
--- a/hw/bsp/lpc55/family.mk
+++ b/hw/bsp/lpc55/family.mk
@@ -1,5 +1,5 @@
UF2_FAMILY_ID = 0x2abc77ec
-DEPS_SUBMODULES = lib/sct_neopixel hw/mcu/nxp
+DEPS_SUBMODULES += lib/sct_neopixel hw/mcu/nxp
include $(TOP)/$(BOARD_PATH)/board.mk
@@ -34,6 +34,7 @@ MCU_DIR = hw/mcu/nxp/sdk/devices/$(MCU_VARIANT)
LD_FILE ?= $(MCU_DIR)/gcc/$(MCU_CORE)_flash.ld
SRC_C += \
+ src/portable/nxp/lpc_ip3511/dcd_lpc_ip3511.c \
$(MCU_DIR)/system_$(MCU_CORE).c \
$(MCU_DIR)/drivers/fsl_clock.c \
$(MCU_DIR)/drivers/fsl_gpio.c \
@@ -54,9 +55,5 @@ SRC_S += $(MCU_DIR)/gcc/startup_$(MCU_CORE).S
LIBS += $(TOP)/$(MCU_DIR)/gcc/libpower_hardabi.a
-# For TinyUSB port source
-VENDOR = nxp
-CHIP_FAMILY = lpc_ip3511
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM33_NTZ/non_secure
diff --git a/hw/bsp/lpcxpresso11u37/board.mk b/hw/bsp/lpcxpresso11u37/board.mk
index e1338c9a3..7fa42f9a5 100644
--- a/hw/bsp/lpcxpresso11u37/board.mk
+++ b/hw/bsp/lpcxpresso11u37/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nxp
+DEPS_SUBMODULES += hw/mcu/nxp
CFLAGS += \
-flto \
@@ -22,6 +22,7 @@ MCU_DIR = hw/mcu/nxp/lpcopen/lpc11uxx/lpc_chip_11uxx
LD_FILE = hw/bsp/$(BOARD)/lpc11u37.ld
SRC_C += \
+ src/portable/nxp/lpc_ip3511/dcd_lpc_ip3511.c \
$(MCU_DIR)/../gcc/cr_startup_lpc11xx.c \
$(MCU_DIR)/src/chip_11xx.c \
$(MCU_DIR)/src/clock_11xx.c \
@@ -33,10 +34,6 @@ SRC_C += \
INC += \
$(TOP)/$(MCU_DIR)/inc
-# For TinyUSB port source
-VENDOR = nxp
-CHIP_FAMILY = lpc_ip3511
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM0
diff --git a/hw/bsp/lpcxpresso11u68/board.mk b/hw/bsp/lpcxpresso11u68/board.mk
index e038a9cd9..b59506d4a 100644
--- a/hw/bsp/lpcxpresso11u68/board.mk
+++ b/hw/bsp/lpcxpresso11u68/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nxp
+DEPS_SUBMODULES += hw/mcu/nxp
CFLAGS += \
-flto \
@@ -19,6 +19,7 @@ MCU_DIR = hw/mcu/nxp/lpcopen/lpc11u6x/lpc_chip_11u6x
LD_FILE = hw/bsp/$(BOARD)/lpc11u68.ld
SRC_C += \
+ src/portable/nxp/lpc_ip3511/dcd_lpc_ip3511.c \
$(MCU_DIR)/../gcc/cr_startup_lpc11u6x.c \
$(MCU_DIR)/src/chip_11u6x.c \
$(MCU_DIR)/src/clock_11u6x.c \
@@ -30,10 +31,6 @@ SRC_C += \
INC += \
$(TOP)/$(MCU_DIR)/inc
-# For TinyUSB port source
-VENDOR = nxp
-CHIP_FAMILY = lpc_ip3511
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM0
diff --git a/hw/bsp/lpcxpresso1347/board.mk b/hw/bsp/lpcxpresso1347/board.mk
index 277282b9c..0f63cefb4 100644
--- a/hw/bsp/lpcxpresso1347/board.mk
+++ b/hw/bsp/lpcxpresso1347/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nxp
+DEPS_SUBMODULES += hw/mcu/nxp
CFLAGS += \
-flto \
@@ -22,6 +22,7 @@ MCU_DIR = hw/mcu/nxp/lpcopen/lpc13xx/lpc_chip_13xx
LD_FILE = hw/bsp/$(BOARD)/lpc1347.ld
SRC_C += \
+ src/portable/nxp/lpc_ip3511/dcd_lpc_ip3511.c \
$(MCU_DIR)/../gcc/cr_startup_lpc13xx.c \
$(MCU_DIR)/src/chip_13xx.c \
$(MCU_DIR)/src/clock_13xx.c \
@@ -33,10 +34,6 @@ SRC_C += \
INC += \
$(TOP)/$(MCU_DIR)/inc
-# For TinyUSB port source
-VENDOR = nxp
-CHIP_FAMILY = lpc_ip3511
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM3
diff --git a/hw/bsp/lpcxpresso1549/board.mk b/hw/bsp/lpcxpresso1549/board.mk
index 8d98379dc..f4d109ecc 100644
--- a/hw/bsp/lpcxpresso1549/board.mk
+++ b/hw/bsp/lpcxpresso1549/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nxp
+DEPS_SUBMODULES += hw/mcu/nxp
CFLAGS += \
-flto \
@@ -21,6 +21,7 @@ MCU_DIR = hw/mcu/nxp/lpcopen/lpc15xx/lpc_chip_15xx
LD_FILE = hw/bsp/$(BOARD)/lpc1549.ld
SRC_C += \
+ src/portable/nxp/lpc_ip3511/dcd_lpc_ip3511.c \
$(MCU_DIR)/../gcc/cr_startup_lpc15xx.c \
$(MCU_DIR)/src/chip_15xx.c \
$(MCU_DIR)/src/clock_15xx.c \
@@ -33,10 +34,6 @@ SRC_C += \
INC += \
$(TOP)/$(MCU_DIR)/inc
-# For TinyUSB port source
-VENDOR = nxp
-CHIP_FAMILY = lpc_ip3511
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM3
diff --git a/hw/bsp/lpcxpresso1769/board.mk b/hw/bsp/lpcxpresso1769/board.mk
index 4b77ac0c3..678c703dc 100644
--- a/hw/bsp/lpcxpresso1769/board.mk
+++ b/hw/bsp/lpcxpresso1769/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nxp
+DEPS_SUBMODULES += hw/mcu/nxp
CFLAGS += \
-flto \
@@ -20,6 +20,7 @@ MCU_DIR = hw/mcu/nxp/lpcopen/lpc175x_6x/lpc_chip_175x_6x
LD_FILE = hw/bsp/$(BOARD)/lpc1769.ld
SRC_C += \
+ src/portable/nxp/lpc17_40/dcd_lpc17_40.c \
$(MCU_DIR)/../gcc/cr_startup_lpc175x_6x.c \
$(MCU_DIR)/src/chip_17xx_40xx.c \
$(MCU_DIR)/src/clock_17xx_40xx.c \
@@ -32,10 +33,6 @@ SRC_C += \
INC += \
$(TOP)/$(MCU_DIR)/inc
-# For TinyUSB port source
-VENDOR = nxp
-CHIP_FAMILY = lpc17_40
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM3
diff --git a/hw/bsp/lpcxpresso51u68/board.mk b/hw/bsp/lpcxpresso51u68/board.mk
index 57af215bb..2582e98f2 100644
--- a/hw/bsp/lpcxpresso51u68/board.mk
+++ b/hw/bsp/lpcxpresso51u68/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nxp
+DEPS_SUBMODULES += hw/mcu/nxp
CFLAGS += \
-flto \
@@ -19,6 +19,7 @@ MCU_DIR = hw/mcu/nxp/sdk/devices/LPC51U68
LD_FILE = $(MCU_DIR)/gcc/LPC51U68_flash.ld
SRC_C += \
+ src/portable/nxp/lpc_ip3511/dcd_lpc_ip3511.c \
$(MCU_DIR)/system_LPC51U68.c \
$(MCU_DIR)/drivers/fsl_clock.c \
$(MCU_DIR)/drivers/fsl_gpio.c \
@@ -34,10 +35,6 @@ SRC_S += $(MCU_DIR)/gcc/startup_LPC51U68.S
LIBS += $(TOP)/$(MCU_DIR)/gcc/libpower.a
-# For TinyUSB port source
-VENDOR = nxp
-CHIP_FAMILY = lpc_ip3511
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM0
diff --git a/hw/bsp/lpcxpresso54114/board.mk b/hw/bsp/lpcxpresso54114/board.mk
index 431ad9122..b6bc07615 100644
--- a/hw/bsp/lpcxpresso54114/board.mk
+++ b/hw/bsp/lpcxpresso54114/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nxp
+DEPS_SUBMODULES += hw/mcu/nxp
CFLAGS += \
-flto \
@@ -21,6 +21,7 @@ MCU_DIR = hw/mcu/nxp/sdk/devices/LPC54114
LD_FILE = $(MCU_DIR)/gcc/LPC54114J256_cm4_flash.ld
SRC_C += \
+ src/portable/nxp/lpc_ip3511/dcd_lpc_ip3511.c \
$(MCU_DIR)/system_LPC54114_cm4.c \
$(MCU_DIR)/drivers/fsl_clock.c \
$(MCU_DIR)/drivers/fsl_gpio.c \
@@ -36,10 +37,6 @@ SRC_S += $(MCU_DIR)/gcc/startup_LPC54114_cm4.S
LIBS += $(TOP)/$(MCU_DIR)/gcc/libpower_cm4_hardabi.a
-# For TinyUSB port source
-VENDOR = nxp
-CHIP_FAMILY = lpc_ip3511
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM4F
diff --git a/hw/bsp/mbed1768/board.mk b/hw/bsp/mbed1768/board.mk
index 2b934aa16..bd48b29ba 100644
--- a/hw/bsp/mbed1768/board.mk
+++ b/hw/bsp/mbed1768/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nxp
+DEPS_SUBMODULES += hw/mcu/nxp
CFLAGS += \
-flto \
@@ -20,6 +20,7 @@ MCU_DIR = hw/mcu/nxp/lpcopen/lpc175x_6x/lpc_chip_175x_6x
LD_FILE = hw/bsp/$(BOARD)/lpc1768.ld
SRC_C += \
+ src/portable/nxp/lpc17_40/dcd_lpc17_40.c \
$(MCU_DIR)/../gcc/cr_startup_lpc175x_6x.c \
$(MCU_DIR)/src/chip_17xx_40xx.c \
$(MCU_DIR)/src/clock_17xx_40xx.c \
@@ -32,10 +33,6 @@ SRC_C += \
INC += \
$(TOP)/$(MCU_DIR)/inc
-# For TinyUSB port source
-VENDOR = nxp
-CHIP_FAMILY = lpc17_40
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM3
diff --git a/hw/bsp/msp430/family.mk b/hw/bsp/msp430/family.mk
index 53ebca1c0..ceafa6ec1 100644
--- a/hw/bsp/msp430/family.mk
+++ b/hw/bsp/msp430/family.mk
@@ -1,5 +1,5 @@
CROSS_COMPILE = msp430-elf-
-DEPS_SUBMODULES = hw/mcu/ti
+DEPS_SUBMODULES += hw/mcu/ti
SKIP_NANOLIB = 1
CFLAGS += \
@@ -8,23 +8,17 @@ CFLAGS += \
-DCFG_EXAMPLE_MSC_READONLY \
-DCFG_TUD_ENDPOINT0_SIZE=8
-#-mmcu=msp430f5529
-
-
-
# All source paths should be relative to the top level.
LD_FILE = hw/mcu/ti/msp430/msp430-gcc-support-files/include/msp430f5529.ld
LDINC += $(TOP)/hw/mcu/ti/msp430/msp430-gcc-support-files/include
LDFLAGS += $(addprefix -L,$(LDINC))
+SRC_C += src/portable/ti/msp430x5xx/dcd_msp430x5xx.c
+
INC += \
$(TOP)/hw/mcu/ti/msp430/msp430-gcc-support-files/include \
$(TOP)/$(BOARD_PATH)
-# For TinyUSB port source
-VENDOR = ti
-CHIP_FAMILY = msp430x5xx
-
# export for libmsp430.so to same installation
ifneq ($(OS),Windows_NT)
export LD_LIBRARY_PATH=$(dir $(shell which MSP430Flasher))
diff --git a/hw/bsp/ngx4330/board.mk b/hw/bsp/ngx4330/board.mk
index c78d4c02d..0a0cb3ba6 100644
--- a/hw/bsp/ngx4330/board.mk
+++ b/hw/bsp/ngx4330/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nxp
+DEPS_SUBMODULES += hw/mcu/nxp
CFLAGS += \
-flto \
@@ -21,6 +21,7 @@ MCU_DIR = hw/mcu/nxp/lpcopen/lpc43xx/lpc_chip_43xx
LD_FILE = hw/bsp/$(BOARD)/ngx4330.ld
SRC_C += \
+ src/portable/nxp/transdimension/dcd_transdimension.c \
$(MCU_DIR)/../gcc/cr_startup_lpc43xx.c \
$(MCU_DIR)/src/chip_18xx_43xx.c \
$(MCU_DIR)/src/clock_18xx_43xx.c \
@@ -33,10 +34,6 @@ INC += \
$(TOP)/$(MCU_DIR)/inc \
$(TOP)/$(MCU_DIR)/inc/config_43xx
-# For TinyUSB port source
-VENDOR = nxp
-CHIP_FAMILY = transdimension
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM4F
diff --git a/hw/bsp/nrf/family.mk b/hw/bsp/nrf/family.mk
index 8756ad9a3..d1afd2587 100644
--- a/hw/bsp/nrf/family.mk
+++ b/hw/bsp/nrf/family.mk
@@ -1,5 +1,5 @@
UF2_FAMILY_ID = 0xADA52840
-DEPS_SUBMODULES = lib/CMSIS_5 hw/mcu/nordic/nrfx
+DEPS_SUBMODULES += lib/CMSIS_5 hw/mcu/nordic/nrfx
include $(TOP)/$(BOARD_PATH)/board.mk
@@ -34,6 +34,7 @@ LD_FILE ?= hw/bsp/nrf/boards/$(BOARD)/nrf52840_s140_v6.ld
LDFLAGS += -L$(TOP)/hw/mcu/nordic/nrfx/mdk
SRC_C += \
+ src/portable/nordic/nrf5x/dcd_nrf5x.c \
hw/mcu/nordic/nrfx/drivers/src/nrfx_power.c \
hw/mcu/nordic/nrfx/drivers/src/nrfx_uarte.c \
hw/mcu/nordic/nrfx/mdk/system_$(MCU_VARIANT).c
@@ -52,10 +53,6 @@ SRC_S += hw/mcu/nordic/nrfx/mdk/gcc_startup_$(MCU_VARIANT).S
ASFLAGS += -D__HEAP_SIZE=0
-# For TinyUSB port source
-VENDOR = nordic
-CHIP_FAMILY = nrf5x
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM4F
diff --git a/hw/bsp/nutiny_nuc121s/board.mk b/hw/bsp/nutiny_nuc121s/board.mk
index 68688be76..a0a208ca7 100644
--- a/hw/bsp/nutiny_nuc121s/board.mk
+++ b/hw/bsp/nutiny_nuc121s/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nuvoton
+DEPS_SUBMODULES += hw/mcu/nuvoton
CFLAGS += \
-flto \
@@ -14,6 +14,7 @@ CFLAGS += \
LD_FILE = hw/bsp/$(BOARD)/nuc121_flash.ld
SRC_C += \
+ src/portable/nuvoton/nuc121/dcd_nuc121.c \
hw/mcu/nuvoton/nuc121_125/Device/Nuvoton/NUC121/Source/system_NUC121.c \
hw/mcu/nuvoton/nuc121_125/StdDriver/src/adc.c \
hw/mcu/nuvoton/nuc121_125/StdDriver/src/bpwm.c \
@@ -42,10 +43,6 @@ INC += \
$(TOP)/hw/mcu/nuvoton/nuc121_125/StdDriver/inc \
$(TOP)/hw/mcu/nuvoton/nuc121_125/CMSIS/Include
-# For TinyUSB port source
-VENDOR = nuvoton
-CHIP_FAMILY = nuc121
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM0
diff --git a/hw/bsp/nutiny_nuc125s/board.mk b/hw/bsp/nutiny_nuc125s/board.mk
index cb75f2ba2..bb56e42ab 100644
--- a/hw/bsp/nutiny_nuc125s/board.mk
+++ b/hw/bsp/nutiny_nuc125s/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nuvoton
+DEPS_SUBMODULES += hw/mcu/nuvoton
CFLAGS += \
-flto \
@@ -14,9 +14,10 @@ CFLAGS += \
LD_FILE = hw/bsp/$(BOARD)/nuc125_flash.ld
SRC_C += \
+ src/portable/nuvoton/nuc121/dcd_nuc121.c \
hw/mcu/nuvoton/nuc121_125/Device/Nuvoton/NUC121/Source/system_NUC121.c \
hw/mcu/nuvoton/nuc121_125/StdDriver/src/clk.c \
- hw/mcu/nuvoton/nuc121_125/StdDriver/src/gpio.c
+ hw/mcu/nuvoton/nuc121_125/StdDriver/src/gpio.c
SRC_S += \
hw/mcu/nuvoton/nuc121_125/Device/Nuvoton/NUC121/Source/GCC/startup_NUC121.S
@@ -26,10 +27,6 @@ INC += \
$(TOP)/hw/mcu/nuvoton/nuc121_125/StdDriver/inc \
$(TOP)/hw/mcu/nuvoton/nuc121_125/CMSIS/Include
-# For TinyUSB port source
-VENDOR = nuvoton
-CHIP_FAMILY = nuc121
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM0
diff --git a/hw/bsp/nutiny_nuc126v/board.mk b/hw/bsp/nutiny_nuc126v/board.mk
index 5beb5f457..848b19f95 100644
--- a/hw/bsp/nutiny_nuc126v/board.mk
+++ b/hw/bsp/nutiny_nuc126v/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nuvoton
+DEPS_SUBMODULES += hw/mcu/nuvoton
CFLAGS += \
-flto \
@@ -14,6 +14,7 @@ CFLAGS += \
LD_FILE = hw/bsp/$(BOARD)/nuc126_flash.ld
SRC_C += \
+ src/portable/nuvoton/nuc121/dcd_nuc121.c \
hw/mcu/nuvoton/nuc126/Device/Nuvoton/NUC126/Source/system_NUC126.c \
hw/mcu/nuvoton/nuc126/StdDriver/src/acmp.c \
hw/mcu/nuvoton/nuc126/StdDriver/src/adc.c \
@@ -46,10 +47,6 @@ INC += \
$(TOP)/hw/mcu/nuvoton/nuc126/StdDriver/inc \
$(TOP)/hw/mcu/nuvoton/nuc126/CMSIS/Include
-# For TinyUSB port source
-VENDOR = nuvoton
-CHIP_FAMILY = nuc121
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM0
diff --git a/hw/bsp/nutiny_sdk_nuc120/board.mk b/hw/bsp/nutiny_sdk_nuc120/board.mk
index affa64058..90b3e91fb 100644
--- a/hw/bsp/nutiny_sdk_nuc120/board.mk
+++ b/hw/bsp/nutiny_sdk_nuc120/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nuvoton
+DEPS_SUBMODULES += hw/mcu/nuvoton
CFLAGS += \
-flto \
@@ -12,6 +12,7 @@ CFLAGS += \
LD_FILE = hw/bsp/nutiny_sdk_nuc120/nuc120_flash.ld
SRC_C += \
+ src/portable/nuvoton/nuc120/dcd_nuc120.c \
hw/mcu/nuvoton/nuc100_120/Device/Nuvoton/NUC100Series/Source/system_NUC100Series.c \
hw/mcu/nuvoton/nuc100_120/StdDriver/src/acmp.c \
hw/mcu/nuvoton/nuc100_120/StdDriver/src/adc.c \
@@ -42,10 +43,6 @@ INC += \
$(TOP)/hw/mcu/nuvoton/nuc100_120/StdDriver/inc \
$(TOP)/hw/mcu/nuvoton/nuc100_120/CMSIS/Include
-# For TinyUSB port source
-VENDOR = nuvoton
-CHIP_FAMILY = nuc120
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM0
diff --git a/hw/bsp/nutiny_sdk_nuc505/board.mk b/hw/bsp/nutiny_sdk_nuc505/board.mk
index 8b2e53d44..e8514347e 100644
--- a/hw/bsp/nutiny_sdk_nuc505/board.mk
+++ b/hw/bsp/nutiny_sdk_nuc505/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/nuvoton
+DEPS_SUBMODULES += hw/mcu/nuvoton
CFLAGS += \
-flto \
@@ -13,6 +13,7 @@ CFLAGS += \
LD_FILE = hw/bsp/$(BOARD)/nuc505_flashtoram.ld
SRC_C += \
+ src/portable/nuvoton/nuc505/dcd_nuc505.c \
hw/mcu/nuvoton/nuc505/Device/Nuvoton/NUC505Series/Source/system_NUC505Series.c \
hw/mcu/nuvoton/nuc505/StdDriver/src/adc.c \
hw/mcu/nuvoton/nuc505/StdDriver/src/clk.c \
@@ -37,10 +38,6 @@ INC += \
$(TOP)/hw/mcu/nuvoton/nuc505/StdDriver/inc \
$(TOP)/hw/mcu/nuvoton/nuc505/CMSIS/Include
-# For TinyUSB port source
-VENDOR = nuvoton
-CHIP_FAMILY = nuc505
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM4F
diff --git a/hw/bsp/rp2040/family.mk b/hw/bsp/rp2040/family.mk
index 2778183f8..ed7b11564 100644
--- a/hw/bsp/rp2040/family.mk
+++ b/hw/bsp/rp2040/family.mk
@@ -1,4 +1,21 @@
-DEPS_SUBMODULES = hw/mcu/raspberrypi/pico-sdk
+DEPS_SUBMODULES += hw/mcu/raspberrypi/pico-sdk
+
+ifeq ($(DEBUG), 1)
+CMAKE_DEFSYM += -DCMAKE_BUILD_TYPE=Debug
+endif
+
+$(BUILD):
+ cmake -S . -B $(BUILD) -DFAMILY=$(FAMILY) -DBOARD=$(BOARD) -DPICO_BUILD_DOCS=0 $(CMAKE_DEFSYM)
+
+all: $(BUILD)
+ $(MAKE) -C $(BUILD)
+
+clean:
+ $(RM) -rf $(BUILD)
+
+#flash: flash-pyocd
+flash:
+ @$(CP) $(BUILD)/$(PROJECT).uf2 /media/$(USER)/RPI-RP2
JLINK_DEVICE = rp2040_m0_0
PYOCD_TARGET = rp2040
diff --git a/hw/bsp/samd11/family.mk b/hw/bsp/samd11/family.mk
index e0005d853..6fbdc35af 100644
--- a/hw/bsp/samd11/family.mk
+++ b/hw/bsp/samd11/family.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/microchip
+DEPS_SUBMODULES += hw/mcu/microchip
include $(TOP)/$(BOARD_PATH)/board.mk
@@ -12,6 +12,7 @@ CFLAGS += \
-DCFG_TUSB_MCU=OPT_MCU_SAMD11
SRC_C += \
+ src/portable/microchip/samd/dcd_samd.c \
hw/mcu/microchip/samd11/gcc/gcc/startup_samd11.c \
hw/mcu/microchip/samd11/gcc/system_samd11.c \
hw/mcu/microchip/samd11/hpl/gclk/hpl_gclk.c \
@@ -32,9 +33,5 @@ INC += \
$(TOP)/hw/mcu/microchip/samd11/CMSIS/Include \
$(TOP)/hw/mcu/microchip/samd11/CMSIS/Core/Include
-# For TinyUSB port source
-VENDOR = microchip
-CHIP_FAMILY = samd
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM0
diff --git a/hw/bsp/samd21/family.mk b/hw/bsp/samd21/family.mk
index e748796fd..f1b063f2c 100644
--- a/hw/bsp/samd21/family.mk
+++ b/hw/bsp/samd21/family.mk
@@ -1,5 +1,5 @@
UF2_FAMILY_ID = 0x68ed2b88
-DEPS_SUBMODULES = hw/mcu/microchip
+DEPS_SUBMODULES += hw/mcu/microchip
include $(TOP)/$(BOARD_PATH)/board.mk
@@ -13,6 +13,7 @@ CFLAGS += \
-DCFG_TUSB_MCU=OPT_MCU_SAMD21
SRC_C += \
+ src/portable/microchip/samd/dcd_samd.c \
hw/mcu/microchip/samd21/gcc/gcc/startup_samd21.c \
hw/mcu/microchip/samd21/gcc/system_samd21.c \
hw/mcu/microchip/samd21/hpl/gclk/hpl_gclk.c \
@@ -32,10 +33,6 @@ INC += \
$(TOP)/hw/mcu/microchip/samd21/hri \
$(TOP)/hw/mcu/microchip/samd21/CMSIS/Include
-# For TinyUSB port source
-VENDOR = microchip
-CHIP_FAMILY = samd
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM0
diff --git a/hw/bsp/samd51/family.mk b/hw/bsp/samd51/family.mk
index 2cf8f0902..f4e260fb1 100644
--- a/hw/bsp/samd51/family.mk
+++ b/hw/bsp/samd51/family.mk
@@ -1,5 +1,5 @@
UF2_FAMILY_ID = 0x55114460
-DEPS_SUBMODULES = hw/mcu/microchip
+DEPS_SUBMODULES += hw/mcu/microchip
include $(TOP)/$(BOARD_PATH)/board.mk
@@ -16,6 +16,7 @@ CFLAGS += \
CFLAGS += -Wno-error=undef
SRC_C += \
+ src/portable/microchip/samd/dcd_samd.c \
hw/mcu/microchip/samd51/gcc/gcc/startup_samd51.c \
hw/mcu/microchip/samd51/gcc/system_samd51.c \
hw/mcu/microchip/samd51/hpl/gclk/hpl_gclk.c \
@@ -35,10 +36,6 @@ INC += \
$(TOP)/hw/mcu/microchip/samd51/hri \
$(TOP)/hw/mcu/microchip/samd51/CMSIS/Include
-# For TinyUSB port source
-VENDOR = microchip
-CHIP_FAMILY = samd
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM4F
diff --git a/hw/bsp/same54xplainedpro/board.mk b/hw/bsp/same54xplainedpro/board.mk
index 508ab20f8..7325a5ffb 100644
--- a/hw/bsp/same54xplainedpro/board.mk
+++ b/hw/bsp/same54xplainedpro/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/microchip
+DEPS_SUBMODULES += hw/mcu/microchip
CONF_CPU_FREQUENCY ?= 120000000
@@ -12,9 +12,7 @@ CFLAGS += \
-nostdlib -nostartfiles \
-D__SAME54P20A__ \
-DCONF_CPU_FREQUENCY=$(CONF_CPU_FREQUENCY) \
- -DCFG_TUSB_MCU=OPT_MCU_SAME5X \
-
-
+ -DCFG_TUSB_MCU=OPT_MCU_SAME5X
# -DSVC_Handler=SVCall_Handler
@@ -22,6 +20,7 @@ CFLAGS += \
LD_FILE = hw/bsp/$(BOARD)/same54p20a_flash.ld
SRC_C += \
+ src/portable/microchip/samd/dcd_samd.c \
hw/mcu/microchip/same54/gcc/gcc/startup_same54.c \
hw/mcu/microchip/same54/gcc/system_same54.c \
hw/mcu/microchip/same54/hal/utils/src/utils_syscalls.c
@@ -36,14 +35,9 @@ INC += \
$(TOP)/hw/mcu/microchip/same54/hri \
$(TOP)/hw/mcu/microchip/same54/CMSIS/Include
-# For TinyUSB port source
-VENDOR = microchip
-CHIP_FAMILY = samd
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM4F
-
# For flash-jlink target
JLINK_DEVICE = ATSAME54P20
diff --git a/hw/bsp/same70_xplained/board.mk b/hw/bsp/same70_xplained/board.mk
index fd9dc5cf2..90ffbb708 100644
--- a/hw/bsp/same70_xplained/board.mk
+++ b/hw/bsp/same70_xplained/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/microchip
+DEPS_SUBMODULES += hw/mcu/microchip
CFLAGS += \
-mthumb \
@@ -19,6 +19,7 @@ ASF_DIR = hw/mcu/microchip/same70
LD_FILE = $(ASF_DIR)/same70b/gcc/gcc/same70q21b_flash.ld
SRC_C += \
+ src/portable/template/dcd_template.c \
$(ASF_DIR)/same70b/gcc/gcc/startup_same70q21b.c \
$(ASF_DIR)/same70b/gcc/system_same70q21b.c \
$(ASF_DIR)/hpl/core/hpl_init.c \
diff --git a/hw/bsp/samg55xplained/board.mk b/hw/bsp/samg55xplained/board.mk
index 3a783d310..aed4de68e 100644
--- a/hw/bsp/samg55xplained/board.mk
+++ b/hw/bsp/samg55xplained/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/microchip
+DEPS_SUBMODULES += hw/mcu/microchip
CFLAGS += \
-flto \
@@ -20,6 +20,7 @@ ASF_DIR = hw/mcu/microchip/samg55
LD_FILE = hw/bsp/$(BOARD)/samg55j19_flash.ld
SRC_C += \
+ src/portable/microchip/samg/dcd_samg.c \
$(ASF_DIR)/samg55/gcc/gcc/startup_samg55.c \
$(ASF_DIR)/samg55/gcc/system_samg55.c \
$(ASF_DIR)/hpl/core/hpl_init.c \
@@ -40,10 +41,6 @@ INC += \
$(TOP)/$(ASF_DIR)/hri \
$(TOP)/$(ASF_DIR)/CMSIS/Core/Include
-# For TinyUSB port source
-VENDOR = microchip
-CHIP_FAMILY = samg
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM4F
diff --git a/hw/bsp/spresense/board.mk b/hw/bsp/spresense/board.mk
index c04296cfa..a46c42bd6 100644
--- a/hw/bsp/spresense/board.mk
+++ b/hw/bsp/spresense/board.mk
@@ -1,4 +1,4 @@
-DEPS_SUBMODULES = hw/mcu/sony/cxd56/spresense-exported-sdk
+DEPS_SUBMODULES += hw/mcu/sony/cxd56/spresense-exported-sdk
# Platforms are: Linux, Darwin, MSYS, CYGWIN
PLATFORM := $(firstword $(subst _, ,$(shell uname -s 2>/dev/null)))
@@ -39,6 +39,8 @@ CFLAGS += -Wno-error=shadow
SPRESENSE_SDK = $(TOP)/hw/mcu/sony/cxd56/spresense-exported-sdk
+SRC_C += src/portable/sony/cxd56/dcd_cxd56.c
+
INC += \
$(SPRESENSE_SDK)/nuttx/include \
$(SPRESENSE_SDK)/nuttx/arch \
@@ -57,11 +59,7 @@ LDFLAGS += \
-nostartfiles \
-nodefaultlibs \
-Wl,--gc-sections \
- -u spresense_main \
-
-# For TinyUSB port source
-VENDOR = sony
-CHIP_FAMILY = cxd56
+ -u spresense_main
$(MKSPK): $(BUILD)/$(PROJECT).elf
$(MAKE) -C $(TOP)/hw/mcu/sony/cxd56/mkspk
diff --git a/hw/bsp/stm32f070rbnucleo/board.mk b/hw/bsp/stm32f070rbnucleo/board.mk
index 0cf28b793..78dd0a39a 100644
--- a/hw/bsp/stm32f070rbnucleo/board.mk
+++ b/hw/bsp/stm32f070rbnucleo/board.mk
@@ -1,5 +1,5 @@
ST_FAMILY = f0
-DEPS_SUBMODULES = lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
+DEPS_SUBMODULES += lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
ST_CMSIS = hw/mcu/st/cmsis_device_$(ST_FAMILY)
ST_HAL_DRIVER = hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
@@ -23,6 +23,7 @@ CFLAGS += -Wno-error=unused-parameter -Wno-error=cast-align
LD_FILE = hw/bsp/$(BOARD)/stm32F070rbtx_flash.ld
SRC_C += \
+ src/portable/st/stm32_fsdev/dcd_stm32_fsdev.c \
$(ST_CMSIS)/Source/Templates/system_stm32$(ST_FAMILY)xx.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal_cortex.c \
@@ -40,10 +41,6 @@ INC += \
$(TOP)/$(ST_HAL_DRIVER)/Inc \
$(TOP)/hw/bsp/$(BOARD)
-# For TinyUSB port source
-VENDOR = st
-CHIP_FAMILY = stm32_fsdev
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM0
diff --git a/hw/bsp/stm32f072disco/board.mk b/hw/bsp/stm32f072disco/board.mk
index 81fb0df89..071c42b65 100644
--- a/hw/bsp/stm32f072disco/board.mk
+++ b/hw/bsp/stm32f072disco/board.mk
@@ -1,5 +1,5 @@
ST_FAMILY = f0
-DEPS_SUBMODULES = lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
+DEPS_SUBMODULES += lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
ST_CMSIS = hw/mcu/st/cmsis_device_$(ST_FAMILY)
ST_HAL_DRIVER = hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
@@ -22,6 +22,7 @@ CFLAGS += -Wno-error=unused-parameter -Wno-error=cast-align
LD_FILE = hw/bsp/$(BOARD)/STM32F072RBTx_FLASH.ld
SRC_C += \
+ src/portable/st/stm32_fsdev/dcd_stm32_fsdev.c \
$(ST_CMSIS)/Source/Templates/system_stm32$(ST_FAMILY)xx.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal_cortex.c \
@@ -39,10 +40,6 @@ INC += \
$(TOP)/$(ST_HAL_DRIVER)/Inc \
$(TOP)/hw/bsp/$(BOARD)
-# For TinyUSB port source
-VENDOR = st
-CHIP_FAMILY = stm32_fsdev
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM0
diff --git a/hw/bsp/stm32f103bluepill/board.mk b/hw/bsp/stm32f103bluepill/board.mk
index e1cf26e88..656a37323 100644
--- a/hw/bsp/stm32f103bluepill/board.mk
+++ b/hw/bsp/stm32f103bluepill/board.mk
@@ -1,5 +1,5 @@
ST_FAMILY = f1
-DEPS_SUBMODULES = lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
+DEPS_SUBMODULES += lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
ST_CMSIS = hw/mcu/st/cmsis_device_$(ST_FAMILY)
ST_HAL_DRIVER = hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
@@ -21,6 +21,7 @@ CFLAGS += \
LD_FILE = hw/bsp/$(BOARD)/STM32F103XB_FLASH.ld
SRC_C += \
+ src/portable/st/stm32_fsdev/dcd_stm32_fsdev.c \
$(ST_CMSIS)/Source/Templates/system_stm32$(ST_FAMILY)xx.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal_cortex.c \
@@ -37,10 +38,6 @@ INC += \
$(TOP)/$(ST_HAL_DRIVER)/Inc \
$(TOP)/hw/bsp/$(BOARD)
-# For TinyUSB port source
-VENDOR = st
-CHIP_FAMILY = stm32_fsdev
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM3
diff --git a/hw/bsp/stm32f207nucleo/board.mk b/hw/bsp/stm32f207nucleo/board.mk
index 4be6e250e..2b979f3d8 100644
--- a/hw/bsp/stm32f207nucleo/board.mk
+++ b/hw/bsp/stm32f207nucleo/board.mk
@@ -1,5 +1,5 @@
ST_FAMILY = f2
-DEPS_SUBMODULES = lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
+DEPS_SUBMODULES += lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
ST_CMSIS = hw/mcu/st/cmsis_device_$(ST_FAMILY)
ST_HAL_DRIVER = hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
@@ -21,6 +21,7 @@ CFLAGS += -Wno-error=sign-compare
LD_FILE = hw/bsp/$(BOARD)/STM32F207ZGTx_FLASH.ld
SRC_C += \
+ src/portable/st/synopsys/dcd_synopsys.c \
$(ST_CMSIS)/Source/Templates/system_stm32$(ST_FAMILY)xx.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal_cortex.c \
@@ -37,10 +38,6 @@ INC += \
$(TOP)/$(ST_HAL_DRIVER)/Inc \
$(TOP)/hw/bsp/$(BOARD)
-# For TinyUSB port source
-VENDOR = st
-CHIP_FAMILY = synopsys
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM3
diff --git a/hw/bsp/stm32f303disco/board.mk b/hw/bsp/stm32f303disco/board.mk
index 304fa9c5a..9dd27a857 100644
--- a/hw/bsp/stm32f303disco/board.mk
+++ b/hw/bsp/stm32f303disco/board.mk
@@ -1,5 +1,5 @@
ST_FAMILY = f3
-DEPS_SUBMODULES = lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
+DEPS_SUBMODULES += lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
ST_CMSIS = hw/mcu/st/cmsis_device_$(ST_FAMILY)
ST_HAL_DRIVER = hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
@@ -22,6 +22,7 @@ CFLAGS += -Wno-error=unused-parameter
LD_FILE = hw/bsp/$(BOARD)/STM32F303VCTx_FLASH.ld
SRC_C += \
+ src/portable/st/stm32_fsdev/dcd_stm32_fsdev.c \
$(ST_CMSIS)/Source/Templates/system_stm32$(ST_FAMILY)xx.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal_cortex.c \
@@ -38,10 +39,6 @@ INC += \
$(TOP)/$(ST_HAL_DRIVER)/Inc \
$(TOP)/hw/bsp/$(BOARD)
-# For TinyUSB port source
-VENDOR = st
-CHIP_FAMILY = stm32_fsdev
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM4F
diff --git a/hw/bsp/stm32f4/family.mk b/hw/bsp/stm32f4/family.mk
index 1bfb38151..584d69405 100644
--- a/hw/bsp/stm32f4/family.mk
+++ b/hw/bsp/stm32f4/family.mk
@@ -1,6 +1,6 @@
UF2_FAMILY_ID = 0x57755a57
ST_FAMILY = f4
-DEPS_SUBMODULES = lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
+DEPS_SUBMODULES += lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
ST_CMSIS = hw/mcu/st/cmsis_device_$(ST_FAMILY)
ST_HAL_DRIVER = hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
@@ -21,6 +21,7 @@ CFLAGS += \
CFLAGS += -Wno-error=cast-align
SRC_C += \
+ src/portable/st/synopsys/dcd_synopsys.c \
$(ST_CMSIS)/Source/Templates/system_stm32$(ST_FAMILY)xx.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal_cortex.c \
@@ -35,10 +36,6 @@ INC += \
$(TOP)/$(ST_CMSIS)/Include \
$(TOP)/$(ST_HAL_DRIVER)/Inc
-# For TinyUSB port source
-VENDOR = st
-CHIP_FAMILY = synopsys
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM4F
diff --git a/hw/bsp/stm32f7/family.mk b/hw/bsp/stm32f7/family.mk
index ed7670850..ead0c977a 100644
--- a/hw/bsp/stm32f7/family.mk
+++ b/hw/bsp/stm32f7/family.mk
@@ -1,6 +1,6 @@
UF2_FAMILY_ID = 0x53b80f00
ST_FAMILY = f7
-DEPS_SUBMODULES = lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
+DEPS_SUBMODULES += lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
ST_CMSIS = hw/mcu/st/cmsis_device_$(ST_FAMILY)
ST_HAL_DRIVER = hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
@@ -34,6 +34,7 @@ endif
CFLAGS += -Wno-error=shadow -Wno-error=cast-align
SRC_C += \
+ src/portable/st/synopsys/dcd_synopsys.c \
$(ST_CMSIS)/Source/Templates/system_stm32$(ST_FAMILY)xx.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal_cortex.c \
@@ -49,9 +50,5 @@ INC += \
$(TOP)/$(ST_CMSIS)/Include \
$(TOP)/$(ST_HAL_DRIVER)/Inc
-# For TinyUSB port source
-VENDOR = st
-CHIP_FAMILY = synopsys
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM7/r0p1
diff --git a/hw/bsp/stm32h7/family.mk b/hw/bsp/stm32h7/family.mk
index 8e49604e1..e35e75610 100644
--- a/hw/bsp/stm32h7/family.mk
+++ b/hw/bsp/stm32h7/family.mk
@@ -1,6 +1,6 @@
UF2_FAMILY_ID = 0x6db66082
ST_FAMILY = h7
-DEPS_SUBMODULES = lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
+DEPS_SUBMODULES += lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
ST_CMSIS = hw/mcu/st/cmsis_device_$(ST_FAMILY)
ST_HAL_DRIVER = hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
@@ -30,6 +30,7 @@ CFLAGS += -Wno-error=maybe-uninitialized -Wno-error=cast-align
# All source paths should be relative to the top level.
SRC_C += \
+ src/portable/st/synopsys/dcd_synopsys.c \
$(ST_CMSIS)/Source/Templates/system_stm32$(ST_FAMILY)xx.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal_cortex.c \
@@ -45,10 +46,6 @@ INC += \
$(TOP)/$(ST_CMSIS)/Include \
$(TOP)/$(ST_HAL_DRIVER)/Inc
-# For TinyUSB port source
-VENDOR = st
-CHIP_FAMILY = synopsys
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM7/r0p1
diff --git a/hw/bsp/stm32l0538disco/board.mk b/hw/bsp/stm32l0538disco/board.mk
index 5c1929aea..c46887f14 100644
--- a/hw/bsp/stm32l0538disco/board.mk
+++ b/hw/bsp/stm32l0538disco/board.mk
@@ -1,5 +1,5 @@
ST_FAMILY = l0
-DEPS_SUBMODULES = lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
+DEPS_SUBMODULES += lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
ST_CMSIS = hw/mcu/st/cmsis_device_$(ST_FAMILY)
ST_HAL_DRIVER = hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
@@ -22,6 +22,7 @@ CFLAGS += -Wno-error=unused-parameter -Wno-error=maybe-uninitialized
LD_FILE = hw/bsp/$(BOARD)/STM32L053C8Tx_FLASH.ld
SRC_C += \
+ src/portable/st/stm32_fsdev/dcd_stm32_fsdev.c \
$(ST_CMSIS)/Source/Templates/system_stm32$(ST_FAMILY)xx.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal_cortex.c \
@@ -38,10 +39,6 @@ INC += \
$(TOP)/$(ST_HAL_DRIVER)/Inc \
$(TOP)/hw/bsp/$(BOARD)
-# For TinyUSB port source
-VENDOR = st
-CHIP_FAMILY = stm32_fsdev
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM0
diff --git a/hw/bsp/stm32l476disco/board.mk b/hw/bsp/stm32l476disco/board.mk
index fefcd6433..28824efdc 100644
--- a/hw/bsp/stm32l476disco/board.mk
+++ b/hw/bsp/stm32l476disco/board.mk
@@ -1,5 +1,5 @@
ST_FAMILY = l4
-DEPS_SUBMODULES = lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
+DEPS_SUBMODULES += lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
ST_CMSIS = hw/mcu/st/cmsis_device_$(ST_FAMILY)
ST_HAL_DRIVER = hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
@@ -22,6 +22,7 @@ CFLAGS += -Wno-error=maybe-uninitialized -Wno-error=cast-align
LD_FILE = hw/bsp/$(BOARD)/STM32L476VGTx_FLASH.ld
SRC_C += \
+ src/portable/st/synopsys/dcd_synopsys.c \
$(ST_CMSIS)/Source/Templates/system_stm32$(ST_FAMILY)xx.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal_cortex.c \
@@ -41,10 +42,6 @@ INC += \
$(TOP)/$(ST_HAL_DRIVER)/Inc \
$(TOP)/hw/bsp/$(BOARD)
-# For TinyUSB port source
-VENDOR = st
-CHIP_FAMILY = synopsys
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM4F
diff --git a/hw/bsp/stm32l4r5nucleo/board.mk b/hw/bsp/stm32l4r5nucleo/board.mk
index f9fccf9b1..12a291d0a 100644
--- a/hw/bsp/stm32l4r5nucleo/board.mk
+++ b/hw/bsp/stm32l4r5nucleo/board.mk
@@ -1,5 +1,5 @@
ST_FAMILY = l4
-DEPS_SUBMODULES = lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
+DEPS_SUBMODULES += lib/CMSIS_5 hw/mcu/st/cmsis_device_$(ST_FAMILY) hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
ST_CMSIS = hw/mcu/st/cmsis_device_$(ST_FAMILY)
ST_HAL_DRIVER = hw/mcu/st/stm32$(ST_FAMILY)xx_hal_driver
@@ -23,6 +23,7 @@ CFLAGS += -Wno-error=maybe-uninitialized -Wno-error=cast-align
LD_FILE = hw/bsp/$(BOARD)/STM32L4RXxI_FLASH.ld
SRC_C += \
+ src/portable/st/synopsys/dcd_synopsys.c \
$(ST_CMSIS)/Source/Templates/system_stm32$(ST_FAMILY)xx.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal.c \
$(ST_HAL_DRIVER)/Src/stm32$(ST_FAMILY)xx_hal_cortex.c \
@@ -42,10 +43,6 @@ INC += \
$(TOP)/$(ST_HAL_DRIVER)/Inc \
$(TOP)/hw/bsp/$(BOARD)
-# For TinyUSB port source
-VENDOR = st
-CHIP_FAMILY = synopsys
-
# For freeRTOS port source
FREERTOS_PORT = ARM_CM4F