arch/Config.in.arc: introduce the ARC optimized hs38 variant

This corresponds to -mcu=hs38 with mpy-option=9 (64-bit multiplier)

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Vineet Gupta 2019-11-12 07:34:43 -08:00 committed by Thomas Petazzoni
parent f67a254b59
commit 4f115b521a

View File

@ -15,11 +15,17 @@ config BR2_archs38
bool "ARC HS38" bool "ARC HS38"
help help
Generic ARC HS capable of running Linux, i.e. with MMU, Generic ARC HS capable of running Linux, i.e. with MMU,
caches and multiplier. Also it corresponds to the default caches and 32-bit multiplier. Also it corresponds to the
configuration in older GNU toolchain versions. default configuration in older GNU toolchain versions.
If you're not sure which version of ARC HS core you build for config BR2_archs38_64mpy
keep this one. bool "ARC HS38 with 64-bit mpy"
help
Fully featured ARC HS capable of running Linux, i.e. with
MMU, caches and 64-bit multiplier.
If you're not sure which version of ARC HS core you build
for use this one.
config BR2_archs38_full config BR2_archs38_full
bool "ARC HS38 with Quad MAC & FPU" bool "ARC HS38 with Quad MAC & FPU"
@ -43,7 +49,7 @@ endchoice
# Choice of atomic instructions presence # Choice of atomic instructions presence
config BR2_ARC_ATOMIC_EXT config BR2_ARC_ATOMIC_EXT
bool "Atomic extension (LLOCK/SCOND instructions)" bool "Atomic extension (LLOCK/SCOND instructions)"
default y if BR2_arc770d || BR2_archs38 || BR2_archs38_full || BR2_archs4x_rel31 default y if BR2_arc770d || BR2_archs38 || BR2_archs38_64mpy || BR2_archs38_full || BR2_archs4x_rel31
config BR2_ARCH config BR2_ARCH
default "arc" if BR2_arcle default "arc" if BR2_arcle
@ -61,12 +67,13 @@ config BR2_GCC_TARGET_CPU
default "arc700" if BR2_arc750d default "arc700" if BR2_arc750d
default "arc700" if BR2_arc770d default "arc700" if BR2_arc770d
default "archs" if BR2_archs38 default "archs" if BR2_archs38
default "hs38" if BR2_archs38_64mpy
default "hs38_linux" if BR2_archs38_full default "hs38_linux" if BR2_archs38_full
default "hs4x_rel31" if BR2_archs4x_rel31 default "hs4x_rel31" if BR2_archs4x_rel31
config BR2_READELF_ARCH_NAME config BR2_READELF_ARCH_NAME
default "ARCompact" if BR2_arc750d || BR2_arc770d default "ARCompact" if BR2_arc750d || BR2_arc770d
default "ARCv2" if BR2_archs38 || BR2_archs38_full || BR2_archs4x_rel31 default "ARCv2" if BR2_archs38 || BR2_archs38_64mpy || BR2_archs38_full || BR2_archs4x_rel31
choice choice
prompt "MMU Page Size" prompt "MMU Page Size"
@ -86,7 +93,7 @@ choice
config BR2_ARC_PAGE_SIZE_4K config BR2_ARC_PAGE_SIZE_4K
bool "4KB" bool "4KB"
depends on BR2_arc770d || BR2_archs38 || BR2_archs38_full || BR2_archs4x_rel31 depends on BR2_arc770d || BR2_archs38 || BR2_archs38_64mpy || BR2_archs38_full || BR2_archs4x_rel31
config BR2_ARC_PAGE_SIZE_8K config BR2_ARC_PAGE_SIZE_8K
bool "8KB" bool "8KB"
@ -96,7 +103,7 @@ config BR2_ARC_PAGE_SIZE_8K
config BR2_ARC_PAGE_SIZE_16K config BR2_ARC_PAGE_SIZE_16K
bool "16KB" bool "16KB"
depends on BR2_arc770d || BR2_archs38 || BR2_archs38_full || BR2_archs4x_rel31 depends on BR2_arc770d || BR2_archs38 || BR2_archs38_64mpy || BR2_archs38_full || BR2_archs4x_rel31
endchoice endchoice