diff --git a/make/defs-cpp.mk b/make/defs-cpp.mk index 1dbff287..92919a93 100644 --- a/make/defs-cpp.mk +++ b/make/defs-cpp.mk @@ -39,6 +39,39 @@ ifneq ($(findstring st-nucleo-f103rb,$(TAGGED_TMPL_TAGS)),) ifneq ($(MCU_FLASH_BANK_NAME),internal) $(error Unsupported flash bank name "$(MCU_FLASH_BANK_NAME)") endif +else ifneq ($(findstring st-disc1-f429i,$(TAGGED_TMPL_TAGS)),) + TAGGED_TMPL_TAGS += cortex-m4 + MCU_BOARD_MODEL ?= ST-DISC1-F429I + BUILD_CPPFLAGS += -DST_DISC1_F429I + #MCU_OPENOCD_CFG_NAME ?= openocd-st-stm32f429disc1.cfg + MCU_OPENOCD_CFG_NAME ?= openocd-st-stm32f429discovery.cfg + MCU_FLASH_BANK_NAME ?= internal + ifeq ($(MCU_FLASH_BANK_NAME),internal) + MCU_FLASH_OFFSET ?= 0x00000000 + MCU_FLASH_SIZE ?= 0x00200000 + MCU_MEM_FETCH_OFFSET ?= 0x08000000 + MCU_MEM_FETCH_SIZE ?= $(MCU_FLASH_SIZE) + else ifeq ($(MCU_FLASH_BANK_NAME),otp) + MCU_FLASH_OFFSET ?= 0x00000000 + MCU_FLASH_SIZE ?= 0x00000200 + MCU_MEM_FETCH_OFFSET ?= 0x1fff7800 + MCU_MEM_FETCH_SIZE ?= $(MCU_FLASH_SIZE) + else + $(error Unsupported flash bank name "$(MCU_FLASH_BANK_NAME)") + endif + ifeq ($(MCU_OPENOCD_CFG_NAME),openocd-st-stm32f429disc1.cfg) + ifeq ($(MCU_FLASH_BANK_NAME),internal) + MCU_FLASH_BANK ?= 1 + endif + else ifeq ($(MCU_OPENOCD_CFG_NAME),openocd-st-stm32f429discovery.cfg) + ifeq ($(MCU_FLASH_BANK_NAME),internal) + MCU_FLASH_BANK ?= 1 + endif + endif + + # modm:disco-f769ni (SIC), not disco-f769i. mbed does the same, despite the + # fact that a board of this name doesn't exist. + MODM_BSPS += modm:disco-f429zi else ifneq ($(findstring st-disco-f769i,$(TAGGED_TMPL_TAGS)),) TAGGED_TMPL_TAGS += cortex-m7 MCU_BOARD_MODEL ?= ST-DISCO-F769I @@ -81,6 +114,8 @@ ifneq ($(findstring cortex-m,$(TAGGED_TMPL_TAGS)),) TAGGED_TMPL_TAGS += cortex-m ifneq ($(findstring cortex-m3,$(TAGGED_TMPL_TAGS)),) TARGET_CPU = cortex-m3 + else ifneq ($(findstring cortex-m4,$(TAGGED_TMPL_TAGS)),) + TARGET_CPU = cortex-m4 else ifneq ($(findstring cortex-m7,$(TAGGED_TMPL_TAGS)),) TARGET_CPU = cortex-m7 endif @@ -259,6 +294,9 @@ ifeq ($(TARGET_TRIPLET),arm-none-eabi) ifeq ($(TARGET_CPU),cortex-m3) PROJECT_CPPFLAGS += -mcpu=cortex-m3 -mthumb PROJECT_LDFLAGS += -mcpu=cortex-m3 -mthumb + else ifeq ($(TARGET_CPU),cortex-m4) + PROJECT_CPPFLAGS += -mcpu=cortex-m4 -mthumb + PROJECT_LDFLAGS += -mcpu=cortex-m4 -mthumb else ifeq ($(TARGET_CPU),cortex-m7) PROJECT_CPPFLAGS += -mcpu=cortex-m7 -mthumb PROJECT_LDFLAGS += -mcpu=cortex-m7 -mthumb diff --git a/make/platform.mk b/make/platform.mk index fa4f0992..8fc2bc41 100644 --- a/make/platform.mk +++ b/make/platform.mk @@ -25,6 +25,7 @@ endif TARGET_PRODUCTS_ARM_NONE_EABI = \ st-nucleo-f103rb \ + st-disc1-f429i \ st-disco-f769i TAGGED_TMPL_TAGS_ARM_NONE_EABI ?= $(TARGET_PRODUCTS_ARM_NONE_EABI)