diff --git a/cpu/stm32/stm32_info.mk b/cpu/stm32/stm32_info.mk index 04175f25e7..c81f622f23 100644 --- a/cpu/stm32/stm32_info.mk +++ b/cpu/stm32/stm32_info.mk @@ -8,15 +8,20 @@ # - STM32_PINCOUNT: R (64) # - STM32_ROMSIZE: G (1024K) CPU_MODEL_UPPERCASE = $(call uppercase,$(CPU_MODEL)) -STM32_INFO := $(shell echo $(CPU_MODEL_UPPERCASE) | sed -E -e 's/^STM32(F|L|W|G)([0-7]|B)([A-Z0-9])([0-9])(.)(.)(_A)?/\1 \2 \2\3\4 \3 \4 \5 \6 \7/') +STM32_INFO := $(shell echo $(CPU_MODEL_UPPERCASE) | sed -E -e 's/^STM32(F|L|W|G|MP)([0-7]|B)([A-Z0-9])([0-9])(.)(.)?(_A)?/\1 \2 \2\3\4 \3 \4 \5 \6 \7/') STM32_TYPE = $(word 1, $(STM32_INFO)) STM32_FAMILY = $(word 2, $(STM32_INFO)) STM32_MODEL = $(word 3, $(STM32_INFO)) -STM32_MODEL2 = $(word 4, $(STM32_INFO)) -STM32_MODEL3 = $(word 5, $(STM32_INFO)) -STM32_PINCOUNT = $(word 6, $(STM32_INFO)) -STM32_ROMSIZE = $(word 7, $(STM32_INFO)) -STM32_RAMMOD = $(word 8, $(STM32_INFO)) +ifneq (MP, $(STM32_TYPE)) + STM32_MODEL2 = $(word 4, $(STM32_INFO)) + STM32_MODEL3 = $(word 5, $(STM32_INFO)) + STM32_PINCOUNT = $(word 6, $(STM32_INFO)) + STM32_ROMSIZE = $(word 7, $(STM32_INFO)) + STM32_RAMMOD = $(word 8, $(STM32_INFO)) +else + STM32_MODEL2 = $(word 6, $(STM32_INFO)) + STM32_PINCOUNT = $(word 7, $(STM32_INFO))$(word 8, $(STM32_INFO)) +endif CPU_FAM = $(call lowercase,$(STM32_TYPE)$(STM32_FAMILY)) @@ -24,7 +29,7 @@ ifeq (f0,$(CPU_FAM)) CPU_CORE = cortex-m0 else ifneq (,$(filter $(CPU_FAM),f1 f2 l1)) CPU_CORE = cortex-m3 -else ifneq (,$(filter $(CPU_FAM),f3 f4 l4)) +else ifneq (,$(filter $(CPU_FAM),f3 f4 l4 mp1)) CPU_CORE = cortex-m4f else ifneq (,$(filter $(CPU_FAM),g4 wb)) CPU_CORE = cortex-m4