arch/arm: make DSP arch extension configurable

Signed-off-by: chao an <anchao@xiaomi.com>
This commit is contained in:
chao an 2022-11-11 14:55:55 +08:00 committed by Petro Karashchenko
parent bd06945de2
commit d031989e0e
2 changed files with 13 additions and 3 deletions

View File

@ -1058,6 +1058,12 @@ config ARM_NEON
default y default y
depends on ARM_HAVE_NEON && ARM_DPFPU32 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 config ARM_HAVE_MPU_UNIFIED
bool bool
default n default n

View File

@ -20,19 +20,23 @@
# Parametrization for ARCHCPUFLAGS # Parametrization for ARCHCPUFLAGS
ifeq ($(CONFIG_ARM_DSP),y)
EXTCPUFLAGS = +dsp
endif
ifeq ($(CONFIG_ARCH_CORTEXM23),y) ifeq ($(CONFIG_ARCH_CORTEXM23),y)
TOOLCHAIN_MTUNE := -mtune=cortex-m23 TOOLCHAIN_MTUNE := -mtune=cortex-m23
TOOLCHAIN_MARCH := -march=armv8-m.main TOOLCHAIN_MARCH := -march=armv8-m.main
TOOLCHAIN_MFLOAT := -mfloat-abi=soft TOOLCHAIN_MFLOAT := -mfloat-abi=soft
else ifeq ($(CONFIG_ARCH_CORTEXM33),y) else ifeq ($(CONFIG_ARCH_CORTEXM33),y)
TOOLCHAIN_MTUNE := -mtune=cortex-m33 TOOLCHAIN_MTUNE := -mtune=cortex-m33
TOOLCHAIN_MARCH := -march=armv8-m.main+dsp TOOLCHAIN_MARCH := -march=armv8-m.main$(EXTCPUFLAGS)
ifeq ($(CONFIG_ARCH_FPU),y) ifeq ($(CONFIG_ARCH_FPU),y)
TOOLCHAIN_MFLOAT := -mfpu=fpv5-sp-d16 TOOLCHAIN_MFLOAT := -mfpu=fpv5-sp-d16
endif endif
else ifeq ($(CONFIG_ARCH_CORTEXM35P),y) else ifeq ($(CONFIG_ARCH_CORTEXM35P),y)
TOOLCHAIN_MTUNE := -mtune=cortex-m35p TOOLCHAIN_MTUNE := -mtune=cortex-m35p
TOOLCHAIN_MARCH := -march=armv8-m.main+dsp TOOLCHAIN_MARCH := -march=armv8-m.main$(EXTCPUFLAGS)
ifeq ($(CONFIG_ARCH_FPU),y) ifeq ($(CONFIG_ARCH_FPU),y)
TOOLCHAIN_MFLOAT := -mfpu=fpv5-sp-d16 TOOLCHAIN_MFLOAT := -mfpu=fpv5-sp-d16
endif endif
@ -41,7 +45,7 @@ else ifeq ($(CONFIG_ARCH_CORTEXM55),y)
ifeq ($(CONFIG_ARM_HAVE_MVE),y) ifeq ($(CONFIG_ARM_HAVE_MVE),y)
TOOLCHAIN_MARCH := -march=armv8.1-m.main+mve.fp+fp.dp TOOLCHAIN_MARCH := -march=armv8.1-m.main+mve.fp+fp.dp
else else
TOOLCHAIN_MARCH := -march=armv8.1-m.main+dsp TOOLCHAIN_MARCH := -march=armv8.1-m.main$(EXTCPUFLAGS)
endif endif
ifeq ($(CONFIG_ARCH_FPU),y) ifeq ($(CONFIG_ARCH_FPU),y)
TOOLCHAIN_MFLOAT := -mfpu=fpv5-d16 TOOLCHAIN_MFLOAT := -mfpu=fpv5-d16