Git Product home page Git Product logo

nanopi_m3-u-boot's Introduction

U-boot for ARTIK5 and ARTIK10

Contents

  1. Introduction
  2. Build 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 device-tree-compiler

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

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.