mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-10-01 06:21:56 -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
|
binutils 2.42 has been removed, select a newer version
|
||||||
instead.
|
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"
|
comment "Legacy options removed in 2025.11"
|
||||||
|
|
||||||
config BR2_KERNEL_HEADERS_5_4
|
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
|
32-bit CPUs that can be used from deeply embedded to high
|
||||||
performance host applications. Little endian.
|
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
|
config BR2_arm
|
||||||
bool "ARM (little endian)"
|
bool "ARM (little endian)"
|
||||||
# MMU support is set by the subarchitecture file, arch/Config.in.arm
|
# 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
|
config BR2_READELF_ARCH_NAME
|
||||||
string
|
string
|
||||||
|
|
||||||
if BR2_arcle || BR2_arceb
|
if BR2_arcle
|
||||||
source "arch/Config.in.arc"
|
source "arch/Config.in.arc"
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|||||||
@@ -59,19 +59,17 @@ config BR2_ARC_ATOMIC_EXT
|
|||||||
default y if BR2_archs4x_rel31 || BR2_archs4x
|
default y if BR2_archs4x_rel31 || BR2_archs4x
|
||||||
|
|
||||||
config BR2_ARCH
|
config BR2_ARCH
|
||||||
default "arc" if BR2_arcle
|
default "arc"
|
||||||
default "arceb" if BR2_arceb
|
|
||||||
|
|
||||||
config BR2_NORMALIZED_ARCH
|
config BR2_NORMALIZED_ARCH
|
||||||
default "arc"
|
default "arc"
|
||||||
|
|
||||||
config BR2_arc
|
config BR2_arc
|
||||||
bool
|
bool
|
||||||
default y if BR2_arcle || BR2_arceb
|
default y
|
||||||
|
|
||||||
config BR2_ENDIAN
|
config BR2_ENDIAN
|
||||||
default "LITTLE" if BR2_arcle
|
default "LITTLE"
|
||||||
default "BIG" if BR2_arceb
|
|
||||||
|
|
||||||
config BR2_GCC_TARGET_CPU
|
config BR2_GCC_TARGET_CPU
|
||||||
default "arc700" if BR2_arc750d
|
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.
|
# version. This is mainly needed to fix autobuilder testing.
|
||||||
select BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL if \
|
select BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL if \
|
||||||
BR2_LINUX_KERNEL_LATEST_VERSION && \
|
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)
|
BR2_or1k || BR2_riscv || BR2_sparc || BR2_x86_64)
|
||||||
help
|
help
|
||||||
This option will use the default configuration for the
|
This option will use the default configuration for the
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ config BR2_PACKAGE_DHCPCD_ENABLE_PRIVSEP
|
|||||||
default y
|
default y
|
||||||
depends on BR2_USE_MMU
|
depends on BR2_USE_MMU
|
||||||
# Audit headers were only added in recent kernels for some arches
|
# 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
|
BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_2
|
||||||
depends on !(BR2_microblazeel || BR2_microblazebe) || \
|
depends on !(BR2_microblazeel || BR2_microblazebe) || \
|
||||||
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18
|
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ if BR2_PACKAGE_FLUENT_BIT
|
|||||||
config BR2_PACKAGE_FLUENT_BIT_WASM_ARCH
|
config BR2_PACKAGE_FLUENT_BIT_WASM_ARCH
|
||||||
string
|
string
|
||||||
default "AARCH64" if BR2_aarch64 || BR2_aarch64_be
|
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 "ARM" if BR2_arm || BR2_armeb
|
||||||
default "MIPS" if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
|
default "MIPS" if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
|
||||||
default "RISCV32" if BR2_riscv && BR2_RISCV_32
|
default "RISCV32" if BR2_riscv && BR2_RISCV_32
|
||||||
|
|||||||
@@ -146,7 +146,7 @@ KODI_DEPENDENCIES += libiconv
|
|||||||
KODI_EXTRA_LIBS += -liconv
|
KODI_EXTRA_LIBS += -liconv
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(BR2_arceb)$(BR2_arcle),y)
|
ifeq ($(BR2_arcle),y)
|
||||||
KODI_CONF_OPTS += -DWITH_ARCH=arc -DWITH_CPU=arc
|
KODI_CONF_OPTS += -DWITH_ARCH=arc -DWITH_CPU=arc
|
||||||
else ifeq ($(BR2_armeb),y)
|
else ifeq ($(BR2_armeb),y)
|
||||||
KODI_CONF_OPTS += -DWITH_ARCH=arm -DWITH_CPU=arm
|
KODI_CONF_OPTS += -DWITH_ARCH=arm -DWITH_CPU=arm
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
config BR2_PACKAGE_LIBSPDM_CPU_FAMILY
|
config BR2_PACKAGE_LIBSPDM_CPU_FAMILY
|
||||||
string
|
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"
|
# (if BR2_arm || BR2_armeb) or "riscv32"/"riscv6"
|
||||||
# (BR2_riscv && BR2_RISCV_32/BR2_RISCV_64). So we don't
|
# (BR2_riscv && BR2_RISCV_32/BR2_RISCV_64). So we don't
|
||||||
# support those here
|
# support those here
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
config BR2_PACKAGE_OPROFILE_ARCH_SUPPORTS
|
config BR2_PACKAGE_OPROFILE_ARCH_SUPPORTS
|
||||||
bool
|
bool
|
||||||
default y
|
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_aarch64 || BR2_aarch64_be || BR2_i386 || BR2_mips || \
|
||||||
BR2_mipsel || BR2_mips64 || BR2_mips64el || BR2_powerpc || \
|
BR2_mipsel || BR2_mips64 || BR2_mips64el || BR2_powerpc || \
|
||||||
BR2_powerpc64 || BR2_powerpc64le || BR2_s390x || BR2_sh || \
|
BR2_powerpc64 || BR2_powerpc64le || BR2_s390x || BR2_sh || \
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ NINJA = PYTHONNOUSERSITE=y $(HOST_DIR)/bin/ninja
|
|||||||
NINJA_OPTS = $(if $(VERBOSE),-v)
|
NINJA_OPTS = $(if $(VERBOSE),-v)
|
||||||
|
|
||||||
# https://mesonbuild.com/Reference-tables.html#cpu-families
|
# https://mesonbuild.com/Reference-tables.html#cpu-families
|
||||||
ifeq ($(BR2_arcle)$(BR2_arceb),y)
|
ifeq ($(BR2_arcle),y)
|
||||||
PKG_MESON_TARGET_CPU_FAMILY = arc
|
PKG_MESON_TARGET_CPU_FAMILY = arc
|
||||||
else ifeq ($(BR2_arm)$(BR2_armeb),y)
|
else ifeq ($(BR2_arm)$(BR2_armeb),y)
|
||||||
PKG_MESON_TARGET_CPU_FAMILY = arm
|
PKG_MESON_TARGET_CPU_FAMILY = arm
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
config BR2_PACKAGE_SWIPL_ARCH_SUPPORTS
|
config BR2_PACKAGE_SWIPL_ARCH_SUPPORTS
|
||||||
bool
|
bool
|
||||||
default y if BR2_aarch64 || BR2_aarch64_be
|
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_arm || BR2_armeb
|
||||||
default y if BR2_i386
|
default y if BR2_i386
|
||||||
default y if BR2_m68k
|
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
|
||||||
default y if BR2_aarch64_be
|
default y if BR2_aarch64_be
|
||||||
default y if BR2_arcle
|
default y if BR2_arcle
|
||||||
default y if BR2_arceb
|
|
||||||
default y if BR2_arm
|
default y if BR2_arm
|
||||||
default y if BR2_armeb
|
default y if BR2_armeb
|
||||||
default y if BR2_i386
|
default y if BR2_i386
|
||||||
@@ -126,7 +125,7 @@ config BR2_UCLIBC_INSTALL_UTILS
|
|||||||
config BR2_UCLIBC_TARGET_ARCH
|
config BR2_UCLIBC_TARGET_ARCH
|
||||||
string
|
string
|
||||||
default "aarch64" if BR2_aarch64 || BR2_aarch64_be
|
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 "arm" if BR2_arm || BR2_armeb
|
||||||
default "m68k" if BR2_m68k
|
default "m68k" if BR2_m68k
|
||||||
default "microblaze" if BR2_microblaze
|
default "microblaze" if BR2_microblaze
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
config BR2_PACKAGE_Z3_ARCH_SUPPORTS
|
config BR2_PACKAGE_Z3_ARCH_SUPPORTS
|
||||||
bool
|
bool
|
||||||
default y if BR2_aarch64 || BR2_aarch64_be
|
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_arm || BR2_armeb
|
||||||
default y if BR2_i386
|
default y if BR2_i386
|
||||||
default y if BR2_m68k
|
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_TOOLCHAIN_WRAPPER_ARGS += -DBR_MIPS_TARGET_BIG_ENDIAN
|
||||||
TOOLCHAIN_EXTERNAL_CFLAGS += -EB
|
TOOLCHAIN_EXTERNAL_CFLAGS += -EB
|
||||||
endif
|
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))
|
TOOLCHAIN_EXTERNAL_CFLAGS += $(call qstrip,$(BR2_TARGET_OPTIMIZATION))
|
||||||
|
|
||||||
|
|||||||
@@ -33,8 +33,7 @@ config BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARCHS_GLIBC
|
|||||||
endchoice
|
endchoice
|
||||||
|
|
||||||
config BR2_TOOLCHAIN_EXTERNAL_PREFIX
|
config BR2_TOOLCHAIN_EXTERNAL_PREFIX
|
||||||
default "arc-linux" if BR2_arcle
|
default "arc-linux"
|
||||||
default "arceb-linux" if BR2_arceb
|
|
||||||
|
|
||||||
config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL
|
config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL
|
||||||
default "toolchain-external-synopsys-arc"
|
default "toolchain-external-synopsys-arc"
|
||||||
|
|||||||
Reference in New Issue
Block a user