* [Buildroot] [PATCH v2 0/3] Add prebuilt nds32 toolchain, ae3xx board and autobuild configs support
@ 2019-01-23 12:39 Nylon Chen
2019-01-23 12:39 ` [Buildroot] [PATCH v2 1/3] arch: add support for Andes 32-bit (nds32) architecture Nylon Chen
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Nylon Chen @ 2019-01-23 12:39 UTC (permalink / raw)
To: buildroot
This patchset adds basic support for Andes's nds32 ISA
and nds32 family's CPU IP based on ae3xx platform.
The board is entirely supported since Linux 4.17.
Nylon Chen (3):
arch: add support for Andes 32-bit (nds32) architecture
configs/andes_nds32_ae3xx: new defconfig
support/config-fragments: add Andes 32-bit (nds32) to autobuild
configs
DEVELOPERS | 9 ++++++
arch/Config.in | 13 ++++++++
arch/Config.in.nds32 | 31 +++++++++++++++++++
board/andes/ae3xx/ae3xx.fragment | 1 +
...0001-nds32-Fix-boot-messages-garbled.patch | 28 +++++++++++++++++
configs/andes_ae3xx_defconfig | 14 +++++++++
package/binutils/Config.in.host | 2 ++
package/gcc/Config.in.host | 4 +++
package/linux-headers/Config.in.host | 3 ++
.../autobuild/br-andes-nds32-glibc.config | 9 ++++++
.../autobuild/toolchain-configs.csv | 1 +
11 files changed, 115 insertions(+)
create mode 100644 arch/Config.in.nds32
create mode 100644 board/andes/ae3xx/ae3xx.fragment
create mode 100644 board/andes/patches/linux/0001-nds32-Fix-boot-messages-garbled.patch
create mode 100644 configs/andes_ae3xx_defconfig
create mode 100644 support/config-fragments/autobuild/br-andes-nds32-glibc.config
--
2.18.0
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v2 1/3] arch: add support for Andes 32-bit (nds32) architecture
2019-01-23 12:39 [Buildroot] [PATCH v2 0/3] Add prebuilt nds32 toolchain, ae3xx board and autobuild configs support Nylon Chen
@ 2019-01-23 12:39 ` Nylon Chen
2019-02-04 19:57 ` Thomas Petazzoni
2019-01-23 12:39 ` [Buildroot] [PATCH v2 2/3] configs/andes_nds32_ae3xx: new defconfig Nylon Chen
2019-01-23 12:39 ` [Buildroot] [PATCH v2 3/3] support/config-fragments: add Andes 32-bit (nds32) to autobuild configs Nylon Chen
2 siblings, 1 reply; 8+ messages in thread
From: Nylon Chen @ 2019-01-23 12:39 UTC (permalink / raw)
To: buildroot
This enables a nds32 system to be built with a Buildroot generated
toolchain (gcc >= 8.0.1, binutils >= 2.30, glibc only).
This configuration has been used to successfully build a linux kernel
(git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git).
Signed-off-by: Che-Wei Chuang <cnoize@andestech.com>
Signed-off-by: Greentime Hu <greentime@andestech.com>
Signed-off-by: Nylon Chen <nylon7@andestech.com>
---
DEVELOPERS | 7 +++++++
arch/Config.in | 13 ++++++++++++
arch/Config.in.nds32 | 31 ++++++++++++++++++++++++++++
package/binutils/Config.in.host | 2 ++
package/gcc/Config.in.host | 4 ++++
package/linux-headers/Config.in.host | 3 +++
6 files changed, 60 insertions(+)
create mode 100644 arch/Config.in.nds32
diff --git a/DEVELOPERS b/DEVELOPERS
index c1950bb0f4..1846748e01 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2296,3 +2296,10 @@ F: package/qjson/
F: package/quazip/
F: package/shapelib/
F: package/tinc/
+
+N: Nylon Chen <nylon7@andestech.com>
+F: arch/Config.in
+F: arch/Config.in.nds32
+F: package/binutils
+F: package/gcc
+F: package/linux-headers
diff --git a/arch/Config.in b/arch/Config.in
index f50760a0cf..62d4dda595 100644
--- a/arch/Config.in
+++ b/arch/Config.in
@@ -125,6 +125,15 @@ config BR2_mips
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_mipsel
bool "MIPS (little endian)"
select BR2_ARCH_HAS_MMU_MANDATORY
@@ -423,6 +432,10 @@ if BR2_nios2
source "arch/Config.in.nios2"
endif
+if BR2_nds32
+source "arch/Config.in.nds32"
+endif
+
if BR2_or1k
source "arch/Config.in.or1k"
endif
diff --git a/arch/Config.in.nds32 b/arch/Config.in.nds32
new file mode 100644
index 0000000000..f2b6a22f8c
--- /dev/null
+++ b/arch/Config.in.nds32
@@ -0,0 +1,31 @@
+config BR2_ARCH
+ default "nds32"
+
+choice
+ prompt "Target Architecture Variant"
+ default BR2_nds32_v3
+ depends on !BR2_ARCH_IS_64
+ help
+ Specific CPU variant to use
+
+comment "N series"
+config BR2_nds32_v3
+ bool "v3"
+config BR2_nds32_v3f
+ bool "v3f"
+
+endchoice
+
+config BR2_GCC_TARGET_ARCH
+ default "v3" if BR2_nds32_v3
+ default "v3f" if BR2_nds32_v3f
+
+config BR2_ENDIAN
+ default "LITTLE"
+
+config BR2_TOOLCHAIN_HAS_NATIVE_RPC
+ bool
+
+config BR2_READELF_ARCH_NAME
+ default "Andes Technology compact code size embedded RISC processor family"
+
diff --git a/package/binutils/Config.in.host b/package/binutils/Config.in.host
index 924d1749cd..484fb050ba 100644
--- a/package/binutils/Config.in.host
+++ b/package/binutils/Config.in.host
@@ -19,10 +19,12 @@ config BR2_BINUTILS_VERSION_2_28_X
bool "binutils 2.28.1"
depends on !BR2_arc
depends on !BR2_riscv
+ depends on !BR2_nds32
config BR2_BINUTILS_VERSION_2_29_X
bool "binutils 2.29.1"
depends on !BR2_riscv
+ depends on !BR2_nds32
config BR2_BINUTILS_VERSION_2_30_X
bool "binutils 2.30"
diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
index 036a5b9790..c8a74e10c6 100644
--- a/package/gcc/Config.in.host
+++ b/package/gcc/Config.in.host
@@ -26,6 +26,7 @@ config BR2_GCC_VERSION_4_9_X
# Broken or unsupported architectures
depends on !BR2_arc
depends on !BR2_or1k
+ depends on !BR2_nds32
# musl on microblaze, ppc64 and mips64 unsupported
depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_microblazeel || BR2_microblazebe))
depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64le))
@@ -42,6 +43,7 @@ config BR2_GCC_VERSION_5_X
# Broken or unsupported architectures
depends on !BR2_arc
depends on !BR2_or1k
+ depends on !BR2_nds32
# musl on ppc64 and mips64 unsupported
depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64le))
depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el))
@@ -55,6 +57,7 @@ config BR2_GCC_VERSION_6_X
# Broken or unsupported architectures
depends on !BR2_arc
depends on !BR2_or1k
+ depends on !BR2_nds32
select BR2_TOOLCHAIN_GCC_AT_LEAST_6
config BR2_GCC_VERSION_7_X
@@ -62,6 +65,7 @@ config BR2_GCC_VERSION_7_X
depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_8
# Broken or unsupported architectures
depends on !BR2_or1k
+ depends on !BR2_nds32
select BR2_TOOLCHAIN_GCC_AT_LEAST_7
config BR2_GCC_VERSION_8_X
diff --git a/package/linux-headers/Config.in.host b/package/linux-headers/Config.in.host
index 88373aee6f..43a6374992 100644
--- a/package/linux-headers/Config.in.host
+++ b/package/linux-headers/Config.in.host
@@ -31,16 +31,19 @@ config BR2_KERNEL_HEADERS_AS_KERNEL
config BR2_KERNEL_HEADERS_4_4
bool "Linux 4.4.x kernel headers"
depends on !BR2_riscv
+ depends on !BR2_nds32
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4
config BR2_KERNEL_HEADERS_4_9
bool "Linux 4.9.x kernel headers"
depends on !BR2_riscv
+ depends on !BR2_nds32
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9
config BR2_KERNEL_HEADERS_4_14
bool "Linux 4.14.x kernel headers"
depends on !BR2_riscv
+ depends on !BR2_nds32
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14
config BR2_KERNEL_HEADERS_4_19
--
2.18.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v2 2/3] configs/andes_nds32_ae3xx: new defconfig
2019-01-23 12:39 [Buildroot] [PATCH v2 0/3] Add prebuilt nds32 toolchain, ae3xx board and autobuild configs support Nylon Chen
2019-01-23 12:39 ` [Buildroot] [PATCH v2 1/3] arch: add support for Andes 32-bit (nds32) architecture Nylon Chen
@ 2019-01-23 12:39 ` Nylon Chen
2019-02-04 20:01 ` Thomas Petazzoni
2019-01-23 12:39 ` [Buildroot] [PATCH v2 3/3] support/config-fragments: add Andes 32-bit (nds32) to autobuild configs Nylon Chen
2 siblings, 1 reply; 8+ messages in thread
From: Nylon Chen @ 2019-01-23 12:39 UTC (permalink / raw)
To: buildroot
Add Andes 32-bit defconfig for AE3XX platform.
Signed-off-by: Che-Wei Chuang <cnoize@andestech.com>
Signed-off-by: Greentime Hu <greentime@andestech.com>
Signed-off-by: Nylon Chen <nylon7@andestech.com>
---
DEVELOPERS | 2 ++
board/andes/ae3xx/ae3xx.fragment | 1 +
...0001-nds32-Fix-boot-messages-garbled.patch | 28 +++++++++++++++++++
configs/andes_ae3xx_defconfig | 14 ++++++++++
4 files changed, 45 insertions(+)
create mode 100644 board/andes/ae3xx/ae3xx.fragment
create mode 100644 board/andes/patches/linux/0001-nds32-Fix-boot-messages-garbled.patch
create mode 100644 configs/andes_ae3xx_defconfig
diff --git a/DEVELOPERS b/DEVELOPERS
index 1846748e01..2f53e01b72 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2303,3 +2303,5 @@ F: arch/Config.in.nds32
F: package/binutils
F: package/gcc
F: package/linux-headers
+F: board/andes
+F: configs/andes_ae3xx_defconfig
diff --git a/board/andes/ae3xx/ae3xx.fragment b/board/andes/ae3xx/ae3xx.fragment
new file mode 100644
index 0000000000..3b13d10740
--- /dev/null
+++ b/board/andes/ae3xx/ae3xx.fragment
@@ -0,0 +1 @@
+CONFIG_NDS32_BUILTIN_DTB="ae3xx"
diff --git a/board/andes/patches/linux/0001-nds32-Fix-boot-messages-garbled.patch b/board/andes/patches/linux/0001-nds32-Fix-boot-messages-garbled.patch
new file mode 100644
index 0000000000..adb60937bd
--- /dev/null
+++ b/board/andes/patches/linux/0001-nds32-Fix-boot-messages-garbled.patch
@@ -0,0 +1,28 @@
+From 90d52d180dcc5d1300dc352ca709eb6453894143 Mon Sep 17 00:00:00 2001
+From: Nylon Chen <nylon7@andestech.com>
+Date: Wed, 28 Nov 2018 16:26:46 +0800
+Subject: [PATCH] nds32: Fix boot messages garbled
+
+In order to display uart correctly we have to pass the correct setting of uart to kernel by bootarg.
+This patch will provide such settings to set the correct uart baud rate.
+
+Signed-off-by: Nylon Chen <nylon7@andestech.com>
+---
+ arch/nds32/boot/dts/ae3xx.dts | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/arch/nds32/boot/dts/ae3xx.dts b/arch/nds32/boot/dts/ae3xx.dts
+index bb39749a6673..aefe2090926a 100644
+--- a/arch/nds32/boot/dts/ae3xx.dts
++++ b/arch/nds32/boot/dts/ae3xx.dts
+@@ -6,6 +6,7 @@
+ interrupt-parent = <&intc>;
+
+ chosen {
++ bootargs = "memblock=debug earlycon console=ttyS0,38400n8 debug loglevel=7";
+ stdout-path = &serial0;
+ };
+
+--
+2.18.0
+
diff --git a/configs/andes_ae3xx_defconfig b/configs/andes_ae3xx_defconfig
new file mode 100644
index 0000000000..d5c196d76b
--- /dev/null
+++ b/configs/andes_ae3xx_defconfig
@@ -0,0 +1,14 @@
+BR2_nds32=y
+BR2_GLOBAL_PATCH_DIR="board/andes/patches/"
+BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
+BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/vincentzwc/prebuilt-nds32-toolchain/releases/download/20180521/nds32le-linux-glibc-v3-upstream.tar.gz"
+BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="nds32le-linux"
+BR2_TOOLCHAIN_EXTERNAL_GCC_8=y
+BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_17=y
+BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.17.tar.xz"
+BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
+BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/andes/ae3xx/ae3xx.fragment"
+BR2_TARGET_ROOTFS_INITRAMFS=y
--
2.18.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v2 3/3] support/config-fragments: add Andes 32-bit (nds32) to autobuild configs
2019-01-23 12:39 [Buildroot] [PATCH v2 0/3] Add prebuilt nds32 toolchain, ae3xx board and autobuild configs support Nylon Chen
2019-01-23 12:39 ` [Buildroot] [PATCH v2 1/3] arch: add support for Andes 32-bit (nds32) architecture Nylon Chen
2019-01-23 12:39 ` [Buildroot] [PATCH v2 2/3] configs/andes_nds32_ae3xx: new defconfig Nylon Chen
@ 2019-01-23 12:39 ` Nylon Chen
2019-02-04 20:02 ` Thomas Petazzoni
2 siblings, 1 reply; 8+ messages in thread
From: Nylon Chen @ 2019-01-23 12:39 UTC (permalink / raw)
To: buildroot
Add a minimal nds32 autobuild configuration for the
internal toolchain with glibc.
Signed-off-by: Che-Wei Chuang <cnoize@andestech.com>
Signed-off-by: Greentime Hu <greentime@andestech.com>
Signed-off-by: Nylon Chen <nylon7@andestech.com>
---
.../autobuild/br-andes-nds32-glibc.config | 9 +++++++++
support/config-fragments/autobuild/toolchain-configs.csv | 1 +
2 files changed, 10 insertions(+)
create mode 100644 support/config-fragments/autobuild/br-andes-nds32-glibc.config
diff --git a/support/config-fragments/autobuild/br-andes-nds32-glibc.config b/support/config-fragments/autobuild/br-andes-nds32-glibc.config
new file mode 100644
index 0000000000..cd093a20f9
--- /dev/null
+++ b/support/config-fragments/autobuild/br-andes-nds32-glibc.config
@@ -0,0 +1,9 @@
+BR2_nds32=y
+BR2_TOOLCHAIN_EXTERNAL=y
+BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
+BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
+BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/vincentzwc/prebuilt-nds32-toolchain/releases/download/20180521/nds32le-linux-glibc-v3-upstream.tar.gz"
+BR2_TOOLCHAIN_EXTERNAL_GCC_8=y
+BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_17=y
+BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y
+BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="nds32le-linux"
diff --git a/support/config-fragments/autobuild/toolchain-configs.csv b/support/config-fragments/autobuild/toolchain-configs.csv
index 3681bc519f..4fa5f63b2b 100644
--- a/support/config-fragments/autobuild/toolchain-configs.csv
+++ b/support/config-fragments/autobuild/toolchain-configs.csv
@@ -74,3 +74,4 @@ support/config-fragments/autobuild/sourcery-mips.config,x86
support/config-fragments/autobuild/sourcery-nios2.config,x86
support/config-fragments/autobuild/sourcery-x86-64.config,x86
support/config-fragments/autobuild/x86_64-ctng_locales-linux-gnu.config,x86
+support/config-fragments/autobuild/br-andes-nds32-glibc.config,x86
--
2.18.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v2 1/3] arch: add support for Andes 32-bit (nds32) architecture
2019-01-23 12:39 ` [Buildroot] [PATCH v2 1/3] arch: add support for Andes 32-bit (nds32) architecture Nylon Chen
@ 2019-02-04 19:57 ` Thomas Petazzoni
0 siblings, 0 replies; 8+ messages in thread
From: Thomas Petazzoni @ 2019-02-04 19:57 UTC (permalink / raw)
To: buildroot
Hello,
Thanks for this second iteration. See below for some comments.
On Wed, 23 Jan 2019 20:39:45 +0800
Nylon Chen <nylon7@andestech.com> wrote:
> This enables a nds32 system to be built with a Buildroot generated
> toolchain (gcc >= 8.0.1, binutils >= 2.30, glibc only).
It is not clear what you want to support here. You're talking about a
"Buildroot generated toolchain", so I would expect that one can build a
toolchain with Buildroot for nds32. But:
- You have selected BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT, which
prevents building a toolchain with Buildroot
- I don't see any upstream support for nds32 in glibc. If you have a
special version of glibc (non-upstream), it can be supported as well.
> +N: Nylon Chen <nylon7@andestech.com>
> +F: arch/Config.in
> +F: arch/Config.in.nds32
> +F: package/binutils
> +F: package/gcc
> +F: package/linux-headers
Only add arch/Config.in.nds32, and put this entry at the right place in
the DEVELOPERS file, by alphabetic ordering of developer names.
> +config BR2_nds32
> + bool "nds32"
> + select BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT
So that's where you have to decide: do you support building a toolchain
with Buildroot or not.
> + select BR2_ARCH_HAS_MMU_MANDATORY
> + help
> + nds32 is a 32-bit architecture developed by Andes Technology.
> + https://en.wikipedia.org/wiki/Andes_Technology
> +
> +
Only one empty line here please.
> diff --git a/arch/Config.in.nds32 b/arch/Config.in.nds32
> new file mode 100644
> index 0000000000..f2b6a22f8c
> --- /dev/null
> +++ b/arch/Config.in.nds32
> @@ -0,0 +1,31 @@
> +config BR2_ARCH
> + default "nds32"
> +
> +choice
> + prompt "Target Architecture Variant"
> + default BR2_nds32_v3
> + depends on !BR2_ARCH_IS_64
Why do you have this dependency ?
> + help
> + Specific CPU variant to use
> +
> +comment "N series"
> +config BR2_nds32_v3
> + bool "v3"
> +config BR2_nds32_v3f
> + bool "v3f"
> +
> +endchoice
> +
> +config BR2_GCC_TARGET_ARCH
> + default "v3" if BR2_nds32_v3
> + default "v3f" if BR2_nds32_v3f
> +
> +config BR2_ENDIAN
> + default "LITTLE"
> +
> +config BR2_TOOLCHAIN_HAS_NATIVE_RPC
> + bool
Remove this, it doesn't make sense. This is a property of the C
library, and it has nothing to do with the architecture definition
> diff --git a/package/binutils/Config.in.host b/package/binutils/Config.in.host
> index 924d1749cd..484fb050ba 100644
> --- a/package/binutils/Config.in.host
> +++ b/package/binutils/Config.in.host
> @@ -19,10 +19,12 @@ config BR2_BINUTILS_VERSION_2_28_X
> bool "binutils 2.28.1"
> depends on !BR2_arc
> depends on !BR2_riscv
> + depends on !BR2_nds32
>
> config BR2_BINUTILS_VERSION_2_29_X
> bool "binutils 2.29.1"
> depends on !BR2_riscv
> + depends on !BR2_nds32
>
> config BR2_BINUTILS_VERSION_2_30_X
> bool "binutils 2.30"
These changes are useless if you don't support building a Buildroot
toolchain for nds32.
> diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
> index 036a5b9790..c8a74e10c6 100644
> --- a/package/gcc/Config.in.host
> +++ b/package/gcc/Config.in.host
> @@ -26,6 +26,7 @@ config BR2_GCC_VERSION_4_9_X
> # Broken or unsupported architectures
> depends on !BR2_arc
> depends on !BR2_or1k
> + depends on !BR2_nds32
> # musl on microblaze, ppc64 and mips64 unsupported
> depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_microblazeel || BR2_microblazebe))
> depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64le))
> @@ -42,6 +43,7 @@ config BR2_GCC_VERSION_5_X
> # Broken or unsupported architectures
> depends on !BR2_arc
> depends on !BR2_or1k
> + depends on !BR2_nds32
> # musl on ppc64 and mips64 unsupported
> depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64le))
> depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el))
> @@ -55,6 +57,7 @@ config BR2_GCC_VERSION_6_X
> # Broken or unsupported architectures
> depends on !BR2_arc
> depends on !BR2_or1k
> + depends on !BR2_nds32
> select BR2_TOOLCHAIN_GCC_AT_LEAST_6
>
> config BR2_GCC_VERSION_7_X
> @@ -62,6 +65,7 @@ config BR2_GCC_VERSION_7_X
> depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_8
> # Broken or unsupported architectures
> depends on !BR2_or1k
> + depends on !BR2_nds32
> select BR2_TOOLCHAIN_GCC_AT_LEAST_7
Same thing: those changes are not needed if you don't support building
a Buildroot toolchain for nds32.
If you want to support building a Buildroot toolchain for nds32, you
can also drop all those changes, and just have the main BR2_nds32
option select BR2_ARCH_NEEDS_GCC_AT_LEAST_8.
> diff --git a/package/linux-headers/Config.in.host b/package/linux-headers/Config.in.host
> index 88373aee6f..43a6374992 100644
> --- a/package/linux-headers/Config.in.host
> +++ b/package/linux-headers/Config.in.host
> @@ -31,16 +31,19 @@ config BR2_KERNEL_HEADERS_AS_KERNEL
> config BR2_KERNEL_HEADERS_4_4
> bool "Linux 4.4.x kernel headers"
> depends on !BR2_riscv
> + depends on !BR2_nds32
> select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4
>
> config BR2_KERNEL_HEADERS_4_9
> bool "Linux 4.9.x kernel headers"
> depends on !BR2_riscv
> + depends on !BR2_nds32
> select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9
>
> config BR2_KERNEL_HEADERS_4_14
> bool "Linux 4.14.x kernel headers"
> depends on !BR2_riscv
> + depends on !BR2_nds32
> select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14
>
> config BR2_KERNEL_HEADERS_4_19
Same thing: those changes are not needed if you don't support building
a Buildroot toolchain for nds32.
Thanks,
Thomas Petazzoni
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v2 2/3] configs/andes_nds32_ae3xx: new defconfig
2019-01-23 12:39 ` [Buildroot] [PATCH v2 2/3] configs/andes_nds32_ae3xx: new defconfig Nylon Chen
@ 2019-02-04 20:01 ` Thomas Petazzoni
0 siblings, 0 replies; 8+ messages in thread
From: Thomas Petazzoni @ 2019-02-04 20:01 UTC (permalink / raw)
To: buildroot
Hello,
On Wed, 23 Jan 2019 20:39:46 +0800
Nylon Chen <nylon7@andestech.com> wrote:
> diff --git a/DEVELOPERS b/DEVELOPERS
> index 1846748e01..2f53e01b72 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -2303,3 +2303,5 @@ F: arch/Config.in.nds32
> F: package/binutils
> F: package/gcc
> F: package/linux-headers
> +F: board/andes
> +F: configs/andes_ae3xx_defconfig
Please keep entries alphabetically sorted.
> diff --git a/configs/andes_ae3xx_defconfig b/configs/andes_ae3xx_defconfig
> new file mode 100644
> index 0000000000..d5c196d76b
> --- /dev/null
> +++ b/configs/andes_ae3xx_defconfig
> @@ -0,0 +1,14 @@
> +BR2_nds32=y
> +BR2_GLOBAL_PATCH_DIR="board/andes/patches/"
> +BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
> +BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/vincentzwc/prebuilt-nds32-toolchain/releases/download/20180521/nds32le-linux-glibc-v3-upstream.tar.gz"
> +BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="nds32le-linux"
> +BR2_TOOLCHAIN_EXTERNAL_GCC_8=y
> +BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_17=y
> +BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y
> +BR2_LINUX_KERNEL=y
> +BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
> +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.17.tar.xz"
Use BR2_LINUX_KERNEL_CUSTOM_VERSION and
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE instead.
Also, for our defconfigs, we require a readme.txt file, in
board/andes/ae3xx/readme.txt, which briefly says how to use the
defconfig. See other readme.txt files in board/.
Best regards,
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v2 3/3] support/config-fragments: add Andes 32-bit (nds32) to autobuild configs
2019-01-23 12:39 ` [Buildroot] [PATCH v2 3/3] support/config-fragments: add Andes 32-bit (nds32) to autobuild configs Nylon Chen
@ 2019-02-04 20:02 ` Thomas Petazzoni
2019-02-11 7:45 ` Nylon Chen
0 siblings, 1 reply; 8+ messages in thread
From: Thomas Petazzoni @ 2019-02-04 20:02 UTC (permalink / raw)
To: buildroot
Hello,
On Wed, 23 Jan 2019 20:39:47 +0800
Nylon Chen <nylon7@andestech.com> wrote:
> Add a minimal nds32 autobuild configuration for the
> internal toolchain with glibc.
This autobuild configuration is using an external toolchain, so it is
not at all testing "internal toolchain with glibc".
Also, are you ok with analyzing the build failures that will be
reported by our autobuilders for the nds32 architecture, investigate
them and provide fixes ?
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH v2 3/3] support/config-fragments: add Andes 32-bit (nds32) to autobuild configs
2019-02-04 20:02 ` Thomas Petazzoni
@ 2019-02-11 7:45 ` Nylon Chen
0 siblings, 0 replies; 8+ messages in thread
From: Nylon Chen @ 2019-02-11 7:45 UTC (permalink / raw)
To: buildroot
On Tue, Feb 05, 2019 at 04:02:32AM +0800, Thomas Petazzoni wrote:
> Hello,
>
> On Wed, 23 Jan 2019 20:39:47 +0800
> Nylon Chen <nylon7@andestech.com> wrote:
>
> > Add a minimal nds32 autobuild configuration for the
> > internal toolchain with glibc.
>
> This autobuild configuration is using an external toolchain, so it is
> not at all testing "internal toolchain with glibc".
>
Ok, next patch I will fix commit described avoid confusing.
> Also, are you ok with analyzing the build failures that will be
> reported by our autobuilders for the nds32 architecture, investigate
> them and provide fixes ?
>
no problem, I'll help as mush as i can.
> Thanks!
>
> Thomas
> --
> Thomas Petazzoni, CTO, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2019-02-11 7:45 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-23 12:39 [Buildroot] [PATCH v2 0/3] Add prebuilt nds32 toolchain, ae3xx board and autobuild configs support Nylon Chen
2019-01-23 12:39 ` [Buildroot] [PATCH v2 1/3] arch: add support for Andes 32-bit (nds32) architecture Nylon Chen
2019-02-04 19:57 ` Thomas Petazzoni
2019-01-23 12:39 ` [Buildroot] [PATCH v2 2/3] configs/andes_nds32_ae3xx: new defconfig Nylon Chen
2019-02-04 20:01 ` Thomas Petazzoni
2019-01-23 12:39 ` [Buildroot] [PATCH v2 3/3] support/config-fragments: add Andes 32-bit (nds32) to autobuild configs Nylon Chen
2019-02-04 20:02 ` Thomas Petazzoni
2019-02-11 7:45 ` Nylon Chen
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.