[Buildroot] [git commit] Remove support for the NDS32 architecture

Arnout Vandecappelle (Essensium/Mind) arnout at mind.be
Sun Jun 19 16:30:45 UTC 2022


commit: https://git.buildroot.net/buildroot/commit/?id=793ee1011e84bd79fa3d146dbe6c14c7fba39648
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

The support for this architecture has been removed from the upstream
Linux kernel, as of commit:

  https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=aec499c75cf8e0b599be4d559e6922b613085f8f

Which states:

  The nds32 architecture, also known as AndeStar V3, is a custom
  32-bit RISC target designed by Andes Technologies. Support was added
  to the kernel in 2016 as the replacement RISC-V based V5 processors
  were already announced, and maintained by (current or former) Andes
  employees.

  As explained by Alan Kao, new customers are now all using RISC-V,
  and all known nds32 users are already on longterm stable kernels
  provided by Andes, with no development work going into mainline
  support any more.

There has also been little to no maintenance done in Buildroot for
this architecture in recent times, so let's follow the Linux kernel
community decision and drop support for this CPU architecture.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni at bootlin.com>
Reviewed-by: Yu Chien Peter Lin <peterlin at andestech.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout at mind.be>
---
 Config.in.legacy                         | 10 ++++++++++
 DEVELOPERS                               |  1 -
 arch/Config.in                           | 12 ------------
 arch/Config.in.nds32                     | 17 -----------------
 docs/manual/known-issues.txt             |  2 +-
 package/dhcpcd/Config.in                 |  1 -
 package/gdb/Config.in                    |  1 -
 package/gdb/Config.in.host               |  1 -
 package/libbsd/Config.in                 |  1 -
 package/postgresql/postgresql.mk         |  2 +-
 package/strace/Config.in                 |  2 +-
 package/uclibc-ng-test/uclibc-ng-test.mk |  2 +-
 utils/genrandconfig                      |  3 ---
 13 files changed, 14 insertions(+), 41 deletions(-)

diff --git a/Config.in.legacy b/Config.in.legacy
index 9d7bdfab10..aea2b59abb 100644
--- a/Config.in.legacy
+++ b/Config.in.legacy
@@ -152,6 +152,16 @@ config BR2_PACKAGE_PHP_EXT_WDDX
 	help
 	  The WDDX extension was removed from php.
 
+comment "Legacy options removed in 2022.08"
+
+config BR2_nds32
+	bool "nds32 architecture removed"
+	select BR2_LEGACY
+	help
+	  Support for the nds32 architecture has been removed, due to
+	  its support being removed from the upstream Linux kernel,
+	  and its lack of maintenance in Buildroot.
+
 comment "Legacy options removed in 2022.05"
 
 config BR2_PACKAGE_KTAP
diff --git a/DEVELOPERS b/DEVELOPERS
index f4e87eec09..c7a4b73ba7 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2172,7 +2172,6 @@ F:	package/systemd/
 F:	package/tcf-agent/
 
 N:	Yu Chien Peter Lin <peterlin at andestech.com>
-F:	arch/Config.in.nds32
 F:	board/andes
 F:	configs/andes_ae350_45_defconfig
 
diff --git a/arch/Config.in b/arch/Config.in
index da499b37ab..366ce71f3a 100644
--- a/arch/Config.in
+++ b/arch/Config.in
@@ -153,14 +153,6 @@ config BR2_mips64el
 	  http://www.mips.com/
 	  http://en.wikipedia.org/wiki/MIPS_Technologies
 
-config BR2_nds32
-	bool "nds32"
-	select BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT
-	select BR2_ARCH_HAS_MMU_MANDATORY
-	help
-	  nds32 is a 32-bit architecture developed by Andes Technology.
-	  https://en.wikipedia.org/wiki/Andes_Technology
-
 config BR2_nios2
 	bool "Nios II"
 	select BR2_ARCH_HAS_MMU_MANDATORY
@@ -449,10 +441,6 @@ if BR2_mips || BR2_mips64 || BR2_mipsel || BR2_mips64el
 source "arch/Config.in.mips"
 endif
 
-if BR2_nds32
-source "arch/Config.in.nds32"
-endif
-
 if BR2_nios2
 source "arch/Config.in.nios2"
 endif
diff --git a/arch/Config.in.nds32 b/arch/Config.in.nds32
deleted file mode 100644
index 0babb2cf7f..0000000000
--- a/arch/Config.in.nds32
+++ /dev/null
@@ -1,17 +0,0 @@
-config BR2_ARCH
-	default "nds32le"
-
-config BR2_NORMALIZED_ARCH
-	default "nds32"
-
-config BR2_GCC_TARGET_ARCH
-	default "v3"
-
-config BR2_ENDIAN
-	default "LITTLE"
-
-config BR2_READELF_ARCH_NAME
-	default "Andes Technology compact code size embedded RISC processor family"
-
-# vim: ft=kconfig
-# -*- mode:kconfig; -*-
diff --git a/docs/manual/known-issues.txt b/docs/manual/known-issues.txt
index 616430b91c..743b794e87 100644
--- a/docs/manual/known-issues.txt
+++ b/docs/manual/known-issues.txt
@@ -7,7 +7,7 @@
   if such options contain a +$+ sign. For example, the following is known
   to break: +BR2_TARGET_LDFLAGS="-Wl,-rpath=\'$ORIGIN/../lib'"+
 
-* The +libffi+ package is not supported on the SuperH 2, nds32, and ARMv7-M
+* The +libffi+ package is not supported on the SuperH 2 and ARMv7-M
   architectures.
 
 * The +prboom+ package triggers a compiler failure with the SuperH 4
diff --git a/package/dhcpcd/Config.in b/package/dhcpcd/Config.in
index 3ebacb3ba2..8612d4ba81 100644
--- a/package/dhcpcd/Config.in
+++ b/package/dhcpcd/Config.in
@@ -20,7 +20,6 @@ config BR2_PACKAGE_DHCPCD_ENABLE_PRIVSEP
 		BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_2
 	depends on !(BR2_microblazeel || BR2_microblazebe) || \
 		BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18
-	depends on !BR2_nds32 || BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_2
 	depends on !BR2_nios2 || BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_2
 	depends on !BR2_or1k || BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
 	depends on !BR2_sh || BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
diff --git a/package/gdb/Config.in b/package/gdb/Config.in
index daad6c910d..a39837fe71 100644
--- a/package/gdb/Config.in
+++ b/package/gdb/Config.in
@@ -4,7 +4,6 @@ config BR2_PACKAGE_GDB_ARCH_SUPPORTS
 	depends on !((BR2_arm || BR2_armeb) && BR2_BINFMT_FLAT)
 	depends on !BR2_microblaze
 	depends on !BR2_or1k
-	depends on !BR2_nds32
 
 comment "gdb/gdbserver needs a toolchain w/ threads, threads debug"
 	depends on BR2_PACKAGE_GDB_ARCH_SUPPORTS
diff --git a/package/gdb/Config.in.host b/package/gdb/Config.in.host
index d3dea0b0a7..43af64a1ed 100644
--- a/package/gdb/Config.in.host
+++ b/package/gdb/Config.in.host
@@ -4,7 +4,6 @@ config BR2_PACKAGE_HOST_GDB_ARCH_SUPPORTS
 	depends on !((BR2_arm || BR2_armeb) && BR2_BINFMT_FLAT)
 	depends on !BR2_microblaze
 	depends on !BR2_or1k
-	depends on !BR2_nds32
 
 comment "Host GDB Options"
 	depends on !BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY
diff --git a/package/libbsd/Config.in b/package/libbsd/Config.in
index 093a2e646c..9f4b30f68c 100644
--- a/package/libbsd/Config.in
+++ b/package/libbsd/Config.in
@@ -5,7 +5,6 @@ config BR2_PACKAGE_LIBBSD_ARCH_SUPPORTS
 	depends on !BR2_microblaze
 	depends on !BR2_arc
 	depends on !BR2_xtensa
-	depends on !BR2_nds32
 
 config BR2_PACKAGE_LIBBSD
 	bool "libbsd"
diff --git a/package/postgresql/postgresql.mk b/package/postgresql/postgresql.mk
index c893f8026c..38746eaf76 100644
--- a/package/postgresql/postgresql.mk
+++ b/package/postgresql/postgresql.mk
@@ -42,7 +42,7 @@ ifneq ($(BR2_TOOLCHAIN_HAS_THREADS_NPTL),y)
 POSTGRESQL_CONF_OPTS += --disable-thread-safety
 endif
 
-ifeq ($(BR2_arcle)$(BR2_arceb)$(BR2_microblazeel)$(BR2_microblazebe)$(BR2_or1k)$(BR2_nios2)$(BR2_riscv)$(BR2_xtensa)$(BR2_nds32),y)
+ifeq ($(BR2_arcle)$(BR2_arceb)$(BR2_microblazeel)$(BR2_microblazebe)$(BR2_or1k)$(BR2_nios2)$(BR2_riscv)$(BR2_xtensa),y)
 POSTGRESQL_CONF_OPTS += --disable-spinlocks
 endif
 
diff --git a/package/strace/Config.in b/package/strace/Config.in
index c394d4c398..dc245c7297 100644
--- a/package/strace/Config.in
+++ b/package/strace/Config.in
@@ -4,7 +4,7 @@ config BR2_PACKAGE_STRACE
 	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0 || !BR2_nios2
 	# needs at least kernel headers 5.0 on xtensa
 	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_0 || !BR2_xtensa
-	depends on !BR2_nds32 && !BR2_RISCV_32
+	depends on !BR2_RISCV_32
 	help
 	  A useful diagnostic, instructional, and debugging tool.
 	  Allows you to track what system calls a program makes
diff --git a/package/uclibc-ng-test/uclibc-ng-test.mk b/package/uclibc-ng-test/uclibc-ng-test.mk
index ea5f224219..6a658b4293 100644
--- a/package/uclibc-ng-test/uclibc-ng-test.mk
+++ b/package/uclibc-ng-test/uclibc-ng-test.mk
@@ -39,7 +39,7 @@ ifeq ($(BR2_STATIC_LIBS),y)
 UCLIBC_NG_TEST_MAKE_ENV += NO_TLS=1 NO_NPTL=1 NO_DL=1
 endif
 # no TLS macros available
-ifeq ($(BR2_nds32)$(BR2_s390x),y)
+ifeq ($(BR2_s390x),y)
 UCLIBC_NG_TEST_MAKE_ENV += NO_TLS=1
 endif
 
diff --git a/utils/genrandconfig b/utils/genrandconfig
index cf43778183..6f748fa709 100755
--- a/utils/genrandconfig
+++ b/utils/genrandconfig
@@ -246,9 +246,6 @@ def fixup_config(sysinfo, configfile):
     if 'BR2_ARM_CPU_ARMV7M=y\n' in configlines and \
        'BR2_PACKAGE_LIBFFI=y\n' in configlines:
         return False
-    if 'BR2_nds32=y\n' in configlines and \
-       'BR2_PACKAGE_LIBFFI=y\n' in configlines:
-        return False
     if 'BR2_PACKAGE_SUNXI_BOARDS=y\n' in configlines:
         configlines.remove('BR2_PACKAGE_SUNXI_BOARDS_FEX_FILE=""\n')
         configlines.append('BR2_PACKAGE_SUNXI_BOARDS_FEX_FILE="a10/hackberry.fex"\n')



More information about the buildroot mailing list