[v3,2/3] configs/andes_nds32_ae3xx: new defconfig

Message ID 20190307021125.8530-3-nylon7@andestech.com
State Changes Requested
Headers show
Series
  • Add prebuilt nds32 toolchain, ae3xx board and autobuild configs support
Related show

Commit Message

Nylon Chen March 7, 2019, 2:11 a.m.
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 +++++++++++
 board/andes/readme.txt                        | 49 +++++++++++++++++++
 configs/andes_ae3xx_defconfig                 | 14 ++++++
 5 files changed, 94 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 board/andes/readme.txt
 create mode 100644 configs/andes_ae3xx_defconfig

Comments

Yann E. MORIN March 14, 2019, 10:31 p.m. | #1
Nylon, All,

On 2019-03-07 10:11 +0800, Nylon Chen spake thusly:
> 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>

Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>

If you were to add a pre-built toolchain package, you could use it in
this defconfig.

Regards,
Yann E. MORIN.

> ---
>  DEVELOPERS                                    |  2 +
>  board/andes/ae3xx/ae3xx.fragment              |  1 +
>  ...0001-nds32-Fix-boot-messages-garbled.patch | 28 +++++++++++
>  board/andes/readme.txt                        | 49 +++++++++++++++++++
>  configs/andes_ae3xx_defconfig                 | 14 ++++++
>  5 files changed, 94 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 board/andes/readme.txt
>  create mode 100644 configs/andes_ae3xx_defconfig
> 
> diff --git a/DEVELOPERS b/DEVELOPERS
> index 06a20c68b6..71fc8062e7 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -1607,6 +1607,8 @@ F:	package/tcf-agent/
>  
>  N:	Nylon Chen <nylon7@andestech.com>
>  F:	arch/Config.in.nds32
> +F:	board/andes
> +F:	configs/andes_ae3xx_defconfig
>  
>  N:	Olaf Rempel <razzor@kopf-tisch.de>
>  F:	package/ctorrent/
> 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/board/andes/readme.txt b/board/andes/readme.txt
> new file mode 100644
> index 0000000000..0f95c65549
> --- /dev/null
> +++ b/board/andes/readme.txt
> @@ -0,0 +1,49 @@
> +Intro
> +=====
> +
> +Andestech(nds32) AE3XX Platform
> +
> +The AE3XX prototype demonstrates the AE3XX example platform on the FPGA. 
> +It is composed of one Andestech(nds32) processor and AE3XX.
> +
> +How to build it
> +===============
> +
> +Configure Buildroot
> +-------------------
> +
> +The andes_ae3xx_defconfig configuration is a sample configuration with
> +all that is required to bring the FPGA Development Board:
> +
> +  $ make andes_ae3xx_defconfig
> +
> +Build everything
> +----------------
> +Note: you will need to have access to the network, since Buildroot will
> +download the packages' sources.
> +
> +  $ make
> +
> +Result of the build
> +-------------------
> +
> +After building, you should obtain this tree:
> +
> +output/images/
> +    +-- vmlinux
> +    +-- rootfs.cpio
> +    +-- rootfs.tar
> +
> +How to run it
> +=============
> +
> +Run
> +---
> +
> +  Setup the Console with the rate 38400/8-N-1.
> +
> +  $ cd output/images
> +  $ ../host/bin/nds32le-linux-gdb vmlinux
> +  $ target remote [your host]
> +  $ lo
> +  $ c 
> diff --git a/configs/andes_ae3xx_defconfig b/configs/andes_ae3xx_defconfig
> new file mode 100644
> index 0000000000..250e3ee157
> --- /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_VERSION=y
> +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.17"
> +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
> 
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

Patch

diff --git a/DEVELOPERS b/DEVELOPERS
index 06a20c68b6..71fc8062e7 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1607,6 +1607,8 @@  F:	package/tcf-agent/
 
 N:	Nylon Chen <nylon7@andestech.com>
 F:	arch/Config.in.nds32
+F:	board/andes
+F:	configs/andes_ae3xx_defconfig
 
 N:	Olaf Rempel <razzor@kopf-tisch.de>
 F:	package/ctorrent/
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/board/andes/readme.txt b/board/andes/readme.txt
new file mode 100644
index 0000000000..0f95c65549
--- /dev/null
+++ b/board/andes/readme.txt
@@ -0,0 +1,49 @@ 
+Intro
+=====
+
+Andestech(nds32) AE3XX Platform
+
+The AE3XX prototype demonstrates the AE3XX example platform on the FPGA. 
+It is composed of one Andestech(nds32) processor and AE3XX.
+
+How to build it
+===============
+
+Configure Buildroot
+-------------------
+
+The andes_ae3xx_defconfig configuration is a sample configuration with
+all that is required to bring the FPGA Development Board:
+
+  $ make andes_ae3xx_defconfig
+
+Build everything
+----------------
+Note: you will need to have access to the network, since Buildroot will
+download the packages' sources.
+
+  $ make
+
+Result of the build
+-------------------
+
+After building, you should obtain this tree:
+
+output/images/
+    +-- vmlinux
+    +-- rootfs.cpio
+    +-- rootfs.tar
+
+How to run it
+=============
+
+Run
+---
+
+  Setup the Console with the rate 38400/8-N-1.
+
+  $ cd output/images
+  $ ../host/bin/nds32le-linux-gdb vmlinux
+  $ target remote [your host]
+  $ lo
+  $ c 
diff --git a/configs/andes_ae3xx_defconfig b/configs/andes_ae3xx_defconfig
new file mode 100644
index 0000000000..250e3ee157
--- /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_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.17"
+BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
+BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/andes/ae3xx/ae3xx.fragment"
+BR2_TARGET_ROOTFS_INITRAMFS=y