add README.md for artik710
authorChanho Park <chanho61.park@samsung.com>
Thu, 24 Nov 2016 12:01:02 +0000 (21:01 +0900)
committerChanho Park <chanho61.park@samsung.com>
Thu, 25 Jan 2018 05:49:40 +0000 (14:49 +0900)
This patch adds README.md markdown file for github documentation.

Change-Id: I98f85a6e6f47b84a5f33ab37721f03f6254e3020
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
README.md [new file with mode: 0644]

diff --git a/README.md b/README.md
new file mode 100644 (file)
index 0000000..5d5e86e
--- /dev/null
+++ b/README.md
@@ -0,0 +1,115 @@
+# U-boot for ARTIK5 and ARTIK10
+## Contents
+1. [Introduction](#1-introduction)
+2. [Build guide](#2-build-guide)
+3. [Update guide](#3-update-guide)
+
+## 1. Introduction
+This 'u-boot-artik' repository is u-boot source for artik710. The base version
+The u-boot of artik710 is based on 2016-01 version.
+
+---
+## 2. Build guide
+### 2.1 Install cross compiler
++ For artik710> You'll need an arm64 cross compiler
+```
+sudo apt-get install gcc-aarch64-linux-gnu
+```
+If you can't install the above toolchain, you can use linaro toolchain.
+```
+wget https://releases.linaro.org/components/toolchain/binaries/5.3-2016.05/aarch64-linux-gnu/gcc-linaro-5.3.1-2016.05-x86_64_aarch64-linux-gnu.tar.xz
+tar xf gcc-linaro-5.3.1-2016.05-x86_64_aarch64-linux-gnu.tar.xz
+export PATH=~/gcc-linaro-5.3.1-2016.05-x86_64_aarch64-linux-gnu:$PATH
+```
+You can the path permernently through adding it into ~/.bashrc
+
+### 2.2 Build the u-boot
++ For artik710>
+```
+make ARCH=arm artik710_raptor_defconfig
+make ARCH=arm CROSS_COMPILE=aarch64-linux-gnu-
+```
+
+### 2.3 Generate params.bin
+The params.bin contains u-boot environment variables and you can generate the file using below commands:
+
++ For artik710>
+```
+cp `find . -name "env_common.o"` copy_env_common.o
+aarch64-linux-gnu-objcopy -O binary --only-section=.rodata.default_environment `find . -name "copy_env_common.o"`
+tr '\0' '\n' < copy_env_common.o | grep '=' > default_envs.txt
+cp default_envs.txt default_envs.txt.orig
+tools/mkenvimage -s 16384 -o params.bin default_envs.txt
+```
+
+### 2.4 Generate fip/nexell compatable image
+The u-boot.bin cannot be loaded by bl1/bl2 bootloaders. You have to generate
+a fip image and boot image for nexell bl1.
+
++ For artik710>
+a. generate a fip-nonsecure.bin image using fip_create tool(input: u-boot.bin, output:fip-nonsecure.bin)
+```
+tools/fip_create/fip_create \
+       --dump --bl33 u-boot.bin \
+       fip-nonsecure.bin
+```
+b. generate a fip-nonsecure.img using BOOTBIN_GEN tool(input: fip-nonsecure.bin, output: fip-nonsecure.img)
+```
+tools/nexell/SECURE_BINGEN \
+       -c S5P6818 -t 3rdboot \
+       -n tools/nexell/nsih/raptor-64.txt \
+       -i fip-nonsecure.bin \
+       -o fip-nonsecure.img \
+       -l 0x7df00000 -e 0x00000000
+```
+
+---
+## 3. Update Guide
+You can update the u-boot through fastboot or micro sd card(ext4 partition)
+
+### 3.1 Fastboot
+For artik710, you should prepare micro USB cable.
+
+Install android-tools-fastboot
+```
+sudo apt-get install android-tools-fastboot
+wget -S -O - http://source.android.com/source/51-android.rules | sed "s/<username>/$USER/" | sudo tee >/dev/null /etc/udev/rules.d/51-android.rules; sudo udevadm control --reload-rules
+```
+
+Insert the USB cable(not MicroUSB Cable) into your board.
+
+Enter u-boot shell mode during boot countdown:
+```
+Net:   No ethernet found.
+Hit any key to stop autoboot:  0
+ARTIK710 #
+ARTIK710 #
+ARTIK710 # fastboot 0
+```
+
+You'll need to upload the partmap_emmc.txt prior than uploading the binaries.
+It can be downloaded from boot-firmwares-artik710.
+On your Host PC(Linux), flash the u-boot using below command
+```
+sudo fastboot flash partmap partmap_emmc.txt
+sudo fastboot flash fip-nonsecure fip-nonsecure.img
+sudo fastboot flash env params.bin
+sudo fastboot reboot
+```
+
+### 3.2 microSD Card
+Prepare a micro SD card and format to ext4 file system.
+```
+sudo mkfs.ext4 /dev/sd[X]1
+sudo mount /dev/sd[X]1 /mnt
+```
+Copy compiled binaries(fip-nonsecure.img, params.bin) into a micro sd card.
+```
+sudo cp fip-nonsecure.img params.bin /mnt
+sudo umount /mnt
+```
+
+Insert the microSD card into your board and enter u-boot shell during boot countdown
+```
+sd_recovery mmc 1:1 48000000 partmap_emmc.txt
+```