[Buildroot] [PATCH 1/3] configs: add defconfig for Nationalchip gx6605s dev board.
Guo Ren
ren_guo at c-sky.com
Thu Mar 2 13:03:48 UTC 2017
gx6605s is a nice SOC for dvbs2 DVB product, and C-SKY inside.
Signed-off-by: Guo Ren <ren_guo at c-sky.com>
---
DEVELOPERS | 4 ++
board/csky/gx6605s/gdbinit | 25 ++++++++++
board/csky/post-image.sh | 4 ++
board/csky/readme.txt | 106 +++++++++++++++++++++++++++++++++++++++++
configs/csky_gx6605s_defconfig | 19 ++++++++
5 files changed, 158 insertions(+)
create mode 100644 board/csky/gx6605s/gdbinit
create mode 100755 board/csky/post-image.sh
create mode 100644 board/csky/readme.txt
create mode 100644 configs/csky_gx6605s_defconfig
diff --git a/DEVELOPERS b/DEVELOPERS
index 1bf07c3..6495a9e 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -592,6 +592,10 @@ F: package/sdl2/
N: Guillaume William Brs <guillaume.bressaix at gmail.com>
F: package/liquid-dsp/
+N: Guo Ren <ren_guo at c-sky.com>
+F: board/csky
+F: configs/csky_*
+
N: Gustavo Zacarias <gustavo at zacarias.com.ar>
F: arch/Config.in.powerpc
F: board/qemu/
diff --git a/board/csky/gx6605s/gdbinit b/board/csky/gx6605s/gdbinit
new file mode 100644
index 0000000..0a6d8ab
--- /dev/null
+++ b/board/csky/gx6605s/gdbinit
@@ -0,0 +1,25 @@
+tar jtag jtag://127.0.0.1:1025
+reset
+
+# setup CCR (Cache Config Reg)
+# 0-1:MP,2:IE,3:DE,4:WB,5:RS,6:Z,7:BE
+set $cr18 = 0x7d
+
+# vendor custom setup, double cache line & preload
+set $cr30 = 0xc
+
+# pin mux for serial8250
+set *(unsigned int *) 0xa030a14c |= (1 << 22) | (1 << 23)
+
+# pass devicetree blob
+# r2 is magic
+# r3 is address
+set $r2 = 0x20150401
+set $r3 = 0x92000000
+restore gx6605s.dtb binary 0x92000000
+
+# flush cache
+set $cr17 = 0x33
+
+load
+
diff --git a/board/csky/post-image.sh b/board/csky/post-image.sh
new file mode 100755
index 0000000..7bead4f
--- /dev/null
+++ b/board/csky/post-image.sh
@@ -0,0 +1,4 @@
+#!/bin/sh
+# copy board/csky/xxx/gdbinit to images/.gdbinit for
+BOARD_DIR="$(dirname $0)"
+cp -af $BOARD_DIR/${2}/gdbinit $BINARIES_DIR/.gdbinit
diff --git a/board/csky/readme.txt b/board/csky/readme.txt
new file mode 100644
index 0000000..f670773
--- /dev/null
+++ b/board/csky/readme.txt
@@ -0,0 +1,106 @@
+C-SKY Development Kit
+
+Intro
+=====
+
+C-SKY is a CPU Architecture from www.c-sky.com and has it own instruction set.
+Just like arm and mips in linux/arch, it named as 'csky'.
+
+For C-SKY linux kernel it's made up of three components:
+1. linux/arch/csky contains the CPU related linux arch implement, eg: mmu,
+ task-switch, cache control, ... default git repo is here:
+
+ http://github.com/c-sky/csky-linux
+
+2. linux/addons contains the SOC's drivers which haven't committed in official
+ linux source code, but we really need them to make the board run.
+ Here is the default addons git repo:
+
+ http://github.com/c-sky/csky-addons
+
+ Some C-SKY soc vendor has it own addons git repo. And you can specify
+ the git-repo in buildroot configuration.
+
+3. Official Linux kernel source from www.kernel.org :)
+
+Buildroot will download cross compiler tools and make them together building,
+finally setup the rootfs with the packages which spicified in buildroot
+configuration.
+
+How to build it
+===============
+
+Configure Buildroot
+-------------------
+
+The csky_gx6605s_defconfig configuration is a sample configuration with
+all that is required to bring the gx6605s Development Board:
+
+ $ make csky_gx6605s_defconfig
+
+Build everything
+----------------
+
+Note: you will need to have access to the network, since Buildroot will
+download the packages' sources.
+
+ $ make # All will be done, just wait :)
+
+Result of the build
+-------------------
+
+After building, you should obtain this tree:
+
+ output/images/
+ ├── vmlinux
+ ├── rootfs.tar
+ ├── <board name>.dtb
+ └── .gdbinit
+
+How to run it
+=============
+
+1. Download the Jtag-Server here:
+
+ https://pan.baidu.com/s/1o7VEPbO
+
+ install it and run it:
+
+ $ DebugServerConsole -ddc -rstwait 1000 -prereset -port 1025
+
+2. Prepare the nfs-server in your linux PC. You can get the step in google, we
+ don't mention it here.
+
+ Then extract output/images/rootfs.tar to your nfsroot.
+
+3. Modified the bootargs in board/csky/<board>/<board>.dts'. You should
+ specify the correct nfsroot= and ip=, for example in gx6605s.dts:
+
+ chosen {
+ bootargs = "console=ttyS0,115200 init=/sbin/init root=/dev/nfs\
+rw nfsroot=192.168.101.230:/opt/nfs/test,v3,tcp,nolock ip=192.168.101.25";
+ }
+
+ You need cd to buildroot dir and '$ make' again to update the dts in
+ output/images
+
+
+4. Setup the Console with the rate 115200/8-N-1.
+
+5. cd to the output/images and run.
+
+ For gx6605s, you need plug a usb ethernet card:
+ $csky-linux-gdb vmlinux
+
+Finish
+======
+
+Any question contact me here:
+
+ren_guo at c-sky.com
+
+-----------
+Best Regards
+
+Guo Ren
+
diff --git a/configs/csky_gx6605s_defconfig b/configs/csky_gx6605s_defconfig
new file mode 100644
index 0000000..ad99b6c
--- /dev/null
+++ b/configs/csky_gx6605s_defconfig
@@ -0,0 +1,19 @@
+BR2_csky=y
+BR2_TOOLCHAIN_EXTERNAL=y
+BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
+BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/c-sky/tools/raw/master/csky-linux-tools-x86_64-glibc-linux-4.9.2-20170227.tar.gz"
+BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="csky-linux"
+BR2_TOOLCHAIN_EXTERNAL_GCC_4_5=y
+BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_9=y
+BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y
+BR2_TOOLCHAIN_EXTERNAL_CXX=y
+BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
+BR2_SYSTEM_DHCP="eth0"
+BR2_ROOTFS_POST_IMAGE_SCRIPT="board/csky/post-image.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="gx6605s"
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/c-sky/linux-4.9.y/archive/3549ac308d427b0adb98b410d0acd82449fb5c13.tar.gz"
+BR2_LINUX_KERNEL_DEFCONFIG="gx66xx"
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="gx6605s"
--
1.9.1
More information about the buildroot
mailing list