mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-08-01 21:23:51 -09:00
arch: drop support for ARC big-endian
Alexey Brodkin from Synopsys says in [1]: I think indeed, we may remove all the big-endian support for ARC. Reasons are since introduction of ARC HS4x processors we no longer support big-endian in any new processor IP, and even for older IP which used to support big-endian it was rarely used... so basically there's no good justification to spend any cycles on big-endian support looking forward in this project. I.e. BE support in uClibc could also be removed if it makes any difference. Therefore, let's removed support for ARC big-endian. [1] https://lore.kernel.org/buildroot/SJ2PR12MB818487232470DA4456967C73A1A3A@SJ2PR12MB8184.namprd12.prod.outlook.com/ Cc: Alexey Brodkin <Alexey.Brodkin@synopsys.com> Cc: ARC Maintainers <arc-buildroot@synopsys.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Reviewed-by: Maxim Kochetkov <fido_max@inbox.ru> [Julien: - move legacy option to 2026.02 section - add link to mailing list - remove BR2_arceb from pkg-meson.mk to fix check-symbols error ] Signed-off-by: Julien Olivain <ju.o@free.fr>
This commit is contained in:
committed by
Julien Olivain
parent
0f303f3abc
commit
2d570f8369
@@ -159,6 +159,15 @@ config BR2_BINUTILS_VERSION_2_42_X
|
||||
binutils 2.42 has been removed, select a newer version
|
||||
instead.
|
||||
|
||||
config BR2_arceb
|
||||
bool "ARC big endian support removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Synopsys' DesignWare ARC Processor Cores are a family of
|
||||
32-bit CPUs that can be used from deeply embedded to high
|
||||
performance host applications. The big endian support was
|
||||
not used nor maintained, so it was removed.
|
||||
|
||||
comment "Legacy options removed in 2025.11"
|
||||
|
||||
config BR2_KERNEL_HEADERS_5_4
|
||||
|
||||
@@ -29,14 +29,6 @@ config BR2_arcle
|
||||
32-bit CPUs that can be used from deeply embedded to high
|
||||
performance host applications. Little endian.
|
||||
|
||||
config BR2_arceb
|
||||
bool "ARC (big endian)"
|
||||
select BR2_USE_MMU
|
||||
help
|
||||
Synopsys' DesignWare ARC Processor Cores are a family of
|
||||
32-bit CPUs that can be used from deeply embedded to high
|
||||
performance host applications. Big endian.
|
||||
|
||||
config BR2_arm
|
||||
bool "ARM (little endian)"
|
||||
# MMU support is set by the subarchitecture file, arch/Config.in.arm
|
||||
@@ -385,7 +377,7 @@ config BR2_BINFMT_SUPPORTS_SHARED
|
||||
config BR2_READELF_ARCH_NAME
|
||||
string
|
||||
|
||||
if BR2_arcle || BR2_arceb
|
||||
if BR2_arcle
|
||||
source "arch/Config.in.arc"
|
||||
endif
|
||||
|
||||
|
||||
@@ -59,19 +59,17 @@ config BR2_ARC_ATOMIC_EXT
|
||||
default y if BR2_archs4x_rel31 || BR2_archs4x
|
||||
|
||||
config BR2_ARCH
|
||||
default "arc" if BR2_arcle
|
||||
default "arceb" if BR2_arceb
|
||||
default "arc"
|
||||
|
||||
config BR2_NORMALIZED_ARCH
|
||||
default "arc"
|
||||
|
||||
config BR2_arc
|
||||
bool
|
||||
default y if BR2_arcle || BR2_arceb
|
||||
default y
|
||||
|
||||
config BR2_ENDIAN
|
||||
default "LITTLE" if BR2_arcle
|
||||
default "BIG" if BR2_arceb
|
||||
default "LITTLE"
|
||||
|
||||
config BR2_GCC_TARGET_CPU
|
||||
default "arc700" if BR2_arc750d
|
||||
|
||||
@@ -180,7 +180,7 @@ config BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG
|
||||
# version. This is mainly needed to fix autobuilder testing.
|
||||
select BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL if \
|
||||
BR2_LINUX_KERNEL_LATEST_VERSION && \
|
||||
(BR2_aarch64 || BR2_aarch64_be || BR2_arcle || BR2_arceb || \
|
||||
(BR2_aarch64 || BR2_aarch64_be || BR2_arcle || \
|
||||
BR2_or1k || BR2_riscv || BR2_sparc || BR2_x86_64)
|
||||
help
|
||||
This option will use the default configuration for the
|
||||
|
||||
@@ -16,7 +16,7 @@ config BR2_PACKAGE_DHCPCD_ENABLE_PRIVSEP
|
||||
default y
|
||||
depends on BR2_USE_MMU
|
||||
# Audit headers were only added in recent kernels for some arches
|
||||
depends on !(BR2_arceb || BR2_arcle) || \
|
||||
depends on !BR2_arcle || \
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_2
|
||||
depends on !(BR2_microblazeel || BR2_microblazebe) || \
|
||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18
|
||||
|
||||
@@ -23,7 +23,7 @@ if BR2_PACKAGE_FLUENT_BIT
|
||||
config BR2_PACKAGE_FLUENT_BIT_WASM_ARCH
|
||||
string
|
||||
default "AARCH64" if BR2_aarch64 || BR2_aarch64_be
|
||||
default "ARC" if BR2_arcle || BR2_arceb
|
||||
default "ARC" if BR2_arcle
|
||||
default "ARM" if BR2_arm || BR2_armeb
|
||||
default "MIPS" if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
|
||||
default "RISCV32" if BR2_riscv && BR2_RISCV_32
|
||||
|
||||
@@ -146,7 +146,7 @@ KODI_DEPENDENCIES += libiconv
|
||||
KODI_EXTRA_LIBS += -liconv
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_arceb)$(BR2_arcle),y)
|
||||
ifeq ($(BR2_arcle),y)
|
||||
KODI_CONF_OPTS += -DWITH_ARCH=arc -DWITH_CPU=arc
|
||||
else ifeq ($(BR2_armeb),y)
|
||||
KODI_CONF_OPTS += -DWITH_ARCH=arm -DWITH_CPU=arm
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
config BR2_PACKAGE_LIBSPDM_CPU_FAMILY
|
||||
string
|
||||
# OpenSSL doesn't support "arc" (BR2_arcle || BR2_arceb), "arm"
|
||||
# OpenSSL doesn't support "arc" (BR2_arcle), "arm"
|
||||
# (if BR2_arm || BR2_armeb) or "riscv32"/"riscv6"
|
||||
# (BR2_riscv && BR2_RISCV_32/BR2_RISCV_64). So we don't
|
||||
# support those here
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
config BR2_PACKAGE_OPROFILE_ARCH_SUPPORTS
|
||||
bool
|
||||
default y
|
||||
depends on BR2_arceb || BR2_arcle || BR2_arm || BR2_armeb || \
|
||||
depends on BR2_arcle || BR2_arm || BR2_armeb || \
|
||||
BR2_aarch64 || BR2_aarch64_be || BR2_i386 || BR2_mips || \
|
||||
BR2_mipsel || BR2_mips64 || BR2_mips64el || BR2_powerpc || \
|
||||
BR2_powerpc64 || BR2_powerpc64le || BR2_s390x || BR2_sh || \
|
||||
|
||||
@@ -30,7 +30,7 @@ NINJA = PYTHONNOUSERSITE=y $(HOST_DIR)/bin/ninja
|
||||
NINJA_OPTS = $(if $(VERBOSE),-v)
|
||||
|
||||
# https://mesonbuild.com/Reference-tables.html#cpu-families
|
||||
ifeq ($(BR2_arcle)$(BR2_arceb),y)
|
||||
ifeq ($(BR2_arcle),y)
|
||||
PKG_MESON_TARGET_CPU_FAMILY = arc
|
||||
else ifeq ($(BR2_arm)$(BR2_armeb),y)
|
||||
PKG_MESON_TARGET_CPU_FAMILY = arm
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
config BR2_PACKAGE_SWIPL_ARCH_SUPPORTS
|
||||
bool
|
||||
default y if BR2_aarch64 || BR2_aarch64_be
|
||||
default y if BR2_arceb || BR2_arcle
|
||||
default y if BR2_arcle
|
||||
default y if BR2_arm || BR2_armeb
|
||||
default y if BR2_i386
|
||||
default y if BR2_m68k
|
||||
|
||||
@@ -3,7 +3,6 @@ config BR2_PACKAGE_UCLIBC_ARCH_SUPPORTS
|
||||
default y if BR2_aarch64
|
||||
default y if BR2_aarch64_be
|
||||
default y if BR2_arcle
|
||||
default y if BR2_arceb
|
||||
default y if BR2_arm
|
||||
default y if BR2_armeb
|
||||
default y if BR2_i386
|
||||
@@ -126,7 +125,7 @@ config BR2_UCLIBC_INSTALL_UTILS
|
||||
config BR2_UCLIBC_TARGET_ARCH
|
||||
string
|
||||
default "aarch64" if BR2_aarch64 || BR2_aarch64_be
|
||||
default "arc" if BR2_arcle || BR2_arceb
|
||||
default "arc" if BR2_arcle
|
||||
default "arm" if BR2_arm || BR2_armeb
|
||||
default "m68k" if BR2_m68k
|
||||
default "microblaze" if BR2_microblaze
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
config BR2_PACKAGE_Z3_ARCH_SUPPORTS
|
||||
bool
|
||||
default y if BR2_aarch64 || BR2_aarch64_be
|
||||
default y if BR2_arceb || BR2_arcle
|
||||
default y if BR2_arcle
|
||||
default y if BR2_arm || BR2_armeb
|
||||
default y if BR2_i386
|
||||
default y if BR2_m68k
|
||||
|
||||
@@ -237,10 +237,6 @@ ifeq ($(BR2_mips)$(BR2_mips64),y)
|
||||
TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_MIPS_TARGET_BIG_ENDIAN
|
||||
TOOLCHAIN_EXTERNAL_CFLAGS += -EB
|
||||
endif
|
||||
ifeq ($(BR2_arceb),y)
|
||||
TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_ARC_TARGET_BIG_ENDIAN
|
||||
TOOLCHAIN_EXTERNAL_CFLAGS += -EB
|
||||
endif
|
||||
|
||||
TOOLCHAIN_EXTERNAL_CFLAGS += $(call qstrip,$(BR2_TARGET_OPTIMIZATION))
|
||||
|
||||
|
||||
@@ -33,8 +33,7 @@ config BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARCHS_GLIBC
|
||||
endchoice
|
||||
|
||||
config BR2_TOOLCHAIN_EXTERNAL_PREFIX
|
||||
default "arc-linux" if BR2_arcle
|
||||
default "arceb-linux" if BR2_arceb
|
||||
default "arc-linux"
|
||||
|
||||
config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL
|
||||
default "toolchain-external-synopsys-arc"
|
||||
|
||||
Reference in New Issue
Block a user