From d031989e0eca2577060ec63b48ae763b23952ad9 Mon Sep 17 00:00:00 2001 From: chao an Date: Fri, 11 Nov 2022 14:55:55 +0800 Subject: [PATCH] arch/arm: make DSP arch extension configurable Signed-off-by: chao an --- arch/arm/Kconfig | 6 ++++++ arch/arm/src/armv8-m/Toolchain.defs | 10 +++++++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index d3c2eecf32..614b83d66e 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -1058,6 +1058,12 @@ config ARM_NEON default y depends on ARM_HAVE_NEON && ARM_DPFPU32 +config ARM_DSP + bool "Advanced DSP Extension" + default y + ---help--- + Enables DSP Extension + config ARM_HAVE_MPU_UNIFIED bool default n diff --git a/arch/arm/src/armv8-m/Toolchain.defs b/arch/arm/src/armv8-m/Toolchain.defs index e694f6e7ed..4426699c66 100644 --- a/arch/arm/src/armv8-m/Toolchain.defs +++ b/arch/arm/src/armv8-m/Toolchain.defs @@ -20,19 +20,23 @@ # Parametrization for ARCHCPUFLAGS +ifeq ($(CONFIG_ARM_DSP),y) + EXTCPUFLAGS = +dsp +endif + ifeq ($(CONFIG_ARCH_CORTEXM23),y) TOOLCHAIN_MTUNE := -mtune=cortex-m23 TOOLCHAIN_MARCH := -march=armv8-m.main TOOLCHAIN_MFLOAT := -mfloat-abi=soft else ifeq ($(CONFIG_ARCH_CORTEXM33),y) TOOLCHAIN_MTUNE := -mtune=cortex-m33 - TOOLCHAIN_MARCH := -march=armv8-m.main+dsp + TOOLCHAIN_MARCH := -march=armv8-m.main$(EXTCPUFLAGS) ifeq ($(CONFIG_ARCH_FPU),y) TOOLCHAIN_MFLOAT := -mfpu=fpv5-sp-d16 endif else ifeq ($(CONFIG_ARCH_CORTEXM35P),y) TOOLCHAIN_MTUNE := -mtune=cortex-m35p - TOOLCHAIN_MARCH := -march=armv8-m.main+dsp + TOOLCHAIN_MARCH := -march=armv8-m.main$(EXTCPUFLAGS) ifeq ($(CONFIG_ARCH_FPU),y) TOOLCHAIN_MFLOAT := -mfpu=fpv5-sp-d16 endif @@ -41,7 +45,7 @@ else ifeq ($(CONFIG_ARCH_CORTEXM55),y) ifeq ($(CONFIG_ARM_HAVE_MVE),y) TOOLCHAIN_MARCH := -march=armv8.1-m.main+mve.fp+fp.dp else - TOOLCHAIN_MARCH := -march=armv8.1-m.main+dsp + TOOLCHAIN_MARCH := -march=armv8.1-m.main$(EXTCPUFLAGS) endif ifeq ($(CONFIG_ARCH_FPU),y) TOOLCHAIN_MFLOAT := -mfpu=fpv5-d16