Linux BSP User Guide for rk3288 series Debian9

From ESS-WIKI
Jump to: navigation, search

Linux BSP Version

We have two version for rk3288 series.

V2.1 :

Debian 9 stretch
Linux version 4.4.143

V2.2 :

Debian 9 stretch
Linux version 4.4.194

Get Docker Image

If you don't have docker in your system, then you can follow the below  steps to install docker and run it first.

To install Docker Engine on your platform

Please refer to Docker Installation Guide for details

To pull ubuntu 16.04 image from Docker Hub 

$ sudo docker pull advrisc/u16.04-rk3288lbv1
$ sudo apt-get update
$ sudo apt-get install binfmt-support qemu-user-static

Config Docker

$ mkdir -p ~/work/code/rk3288_debian
$ sudo docker run -it --name rk3288_linux --privileged -v ~/work/code/rk3288_debian:/home/adv/code:rw advrisc/u16.04-rk3288lbv1:latest /bin/bash
$ exit       //This command run in dock workspace. It means exit dock workspace to host workspace.

Note : 

The above commands only need run in the first time .

Start Docker

$ sudo docker start rk3288_linux
$ sudo docker attach rk3288_linux

Note : 

After run the above two commands, you will work in docker workspace .

You can get debian source code and build them in docker workspace.

Getting Debian Source Code

V2.1 :

$ cd ~/code
$ sudo git clone https://github.com/rockchip-linux/repo.git
$ mkdir rk3288_debian
$ cd rk3288_debian
$ git config --global user.name "Your Name"
$ git config --global user.email you@example.com
$ ../repo/repo init -u https://github.com/ADVANTECH-Rockchip/linux-manifest.git -b rk3288_linux_v2.0 -m default.xml
$ ../repo/repo sync
$ ../repo/repo forall -c git checkout -b local --track advantech-github/rk3288_linux_v2.0
$ 
$ sudo dpkg -i rootfs/ubuntu-build-service/packages/*
$ sudo apt-get install -f

V2.2 :

$ cd ~/code
$ sudo git clone https://github.com/rockchip-linux/repo.git
$ mkdir rk3288_debian
$ cd rk3288_debian
$ git config --global user.name "Your Name"
$ git config --global user.email you@example.com
$ ../repo/repo init -u https://github.com/ADVANTECH-Rockchip/linux-manifest.git -b rk3288_linux_v2.0_risc -m default.xml
$ ../repo/repo sync
$ ../repo/repo forall -c git checkout -b local --track advantech-github/rk3288_linux_v2.0_risc
$ 
$ sudo dpkg -i rootfs/ubuntu-build-service/packages/*
$ sudo apt-get install -f

Build U-boot

Build RSB-4680 U-boot

$ export TOP=`pwd`
$ cd $TOP
$ cd u-boot/
$ ./make.sh rsb4680a3-2G-rk3288

Build EBC-RB03 U-boot

$ export TOP=`pwd`
$ cd $TOP
$ cd u-boot/
$ ./make.sh ebcrb03a2-2G-rk3288

Build USM-110 U-boot

$ export TOP=`pwd`
$ cd $TOP
$ cd u-boot/
$ ./make.sh usm110a2-2G-rk3288


Build Kernel

Build RSB-4680 Kernel

$ cd $TOP 
$ cd kernel/ 
$ make ARCH=arm rk3288_adv_defconfig 
$ make ARCH=arm rk3288-rsb4680-a3.img -j12

​Build EBC-RB03 Kernel

$ cd $TOP
$ cd kernel/
$ make ARCH=arm rk3288_adv_defconfig
$ make ARCH=arm rk3288-ebcrb03-a2.img -j12

Build USM-110 Kernel

$ cd $TOP
$ cd kernel/
$ make ARCH=arm rk3288_adv_defconfig
$ make ARCH=arm rk3288-usm110-a2.img -j12

Build Recovery

$ cd $TOP
$ rm buildroot/output/rockchip_rk3288_recovery -rf
$ source envsetup.sh rockchip_rk3288_recovery
$ ./build.sh recovery

NOTE:
For recovery.img includes kernel and recovery tools, kernel MUST be built before recovery.

Build Rootfs

V2.1 :

$ cd $TOP
$ cd rootfs/
$ sudo ARCH=armhf ./mk-rootfs.sh
$ sudo ARCH=armhf ./mk-adv.sh
$ sudo ./mk-image.sh

V2.2 :

$ cd $TOP
$ sudo ./mk-debian.sh

Creating the ext4 image

$ cd $TOP
$ source envsetup.sh rockchip_rk3288_recovery
$ sudo ./mkfirmware.sh

NOTE:
If there is no error, the following ten files will be found in $TOP/rockdev/ :
boot.img  MiniLoaderAll.bin  misc.img  oem.img  parameter.txt  recovery.img  rootfs.img  trust.img  uboot.img  userdata.img

How to do about update RK3288 Platform?

There are two ways to update images : 

Android Tool

Update image through AndroidTool

SD card

Update image through SD-Card

NOTE : 

This way only support Linux(Debian9) upgrade to Linux(Debian9) 、 Android6.0 upgrade to Android6.0 or Android8.1 upgrade to Android8.1.

If the device is in Android, you want to upgrade to Linux(Debian9), please use Android Tool.

User and password

Here are default user and password:

linaro 123456

root 123456