Difference between revisions of "Linux BSP User Guide for rk3568 series Debian11"
(→Getting Linux Source Code) |
|||
(14 intermediate revisions by 2 users not shown) | |||
Line 12: | Line 12: | ||
Docker command: | Docker command: | ||
− | <pre>sudo docker pull advrisc/u20.04-rklbv1</pre> | + | <pre> |
+ | sudo apt-get install -y qemu-user-static | ||
+ | sudo apt-get install -y live-build | ||
+ | sudo docker pull advrisc/u20.04-rklbv1 | ||
+ | </pre> | ||
== Run Docker example == | == Run Docker example == | ||
Step1 Run docker container (example) | Step1 Run docker container (example) | ||
− | <pre>sudo docker run -it --name | + | <pre>sudo docker run -it --name rk356x_linux5.10_v130_risc -v /home/bsp/myLinux:/home/adv/BSP:rw --privileged advrisc/u20.04-rklbv1:latest /bin/bash |
</pre> | </pre> | ||
Line 25: | Line 29: | ||
<pre> adv@7cc0fa834366:~$ sudo chown adv:adv -R BSP | <pre> adv@7cc0fa834366:~$ sudo chown adv:adv -R BSP | ||
</pre> | </pre> | ||
− | |||
− | |||
− | |||
== Getting Linux Source Code == | == Getting Linux Source Code == | ||
Line 46: | Line 47: | ||
<pre>$ export TOP=`pwd` | <pre>$ export TOP=`pwd` | ||
$ cd $TOP | $ cd $TOP | ||
− | $ | + | $ ./build.sh adv_rk3568_rsb4810a2_defconfig |
− | $ | + | $ |
</pre> | </pre> | ||
Line 53: | Line 54: | ||
<pre>$ export TOP=`pwd` | <pre>$ export TOP=`pwd` | ||
$ cd $TOP | $ cd $TOP | ||
− | $ | + | $ coming soon |
$ | $ | ||
</pre> | </pre> | ||
Line 60: | Line 61: | ||
<pre>$ export TOP=`pwd` | <pre>$ export TOP=`pwd` | ||
$ cd $TOP | $ cd $TOP | ||
− | $ | + | $ ./build.sh adv_rk3568_kedge350a1_defconfig |
$ | $ | ||
</pre> | </pre> | ||
Line 67: | Line 68: | ||
<pre>$ export TOP=`pwd` | <pre>$ export TOP=`pwd` | ||
$ cd $TOP | $ cd $TOP | ||
− | $ | + | $ coming soon |
$ | $ | ||
</pre> | </pre> | ||
== Build U-boot == | == Build U-boot == | ||
− | + | <pre>$ cd $TOP | |
− | + | $ ./build.sh uboot | |
− | <pre> | ||
− | $ cd $TOP | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | $ ./ | ||
</pre> | </pre> | ||
== Build Kernel == | == Build Kernel == | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<pre>$ cd $TOP | <pre>$ cd $TOP | ||
− | $ | + | $ ./build.sh kernel |
− | |||
− | |||
</pre> | </pre> | ||
== Build Recovery == | == Build Recovery == | ||
<pre>$ cd $TOP | <pre>$ cd $TOP | ||
− | $ rm buildroot/output/ | + | $ rm buildroot/output/rockchip_rk3568_recovery -rf |
− | |||
$ ./build.sh recovery | $ ./build.sh recovery | ||
</pre> | </pre> | ||
− | == Build Debian | + | == Build Debian 11.x == |
<pre>$ cd $TOP | <pre>$ cd $TOP | ||
− | $ | + | $ sudo dpkg -i debian/ubuntu-build-service/packages/* |
− | $ sudo | + | $ sudo apt-get install -f -y |
+ | $ ./build.sh debian | ||
</pre> | </pre> | ||
== Push all image to rockdev folder == | == Push all image to rockdev folder == | ||
− | <pre>$ ./ | + | <pre>$ cd $TOP |
+ | $ ./build.sh firmware | ||
</pre> | </pre> | ||
Line 165: | Line 117: | ||
== Make update.img == | == Make update.img == | ||
<pre>$ cd $TOP | <pre>$ cd $TOP | ||
− | $ | + | $ sudo apt-get install bsdmainutils |
$ ./build.sh updateimg | $ ./build.sh updateimg | ||
</pre> | </pre> |
Latest revision as of 08:39, 22 March 2024
Contents
Linux BSP Version
Debian 11.x
Kernel 5.10.160
Build Environment on Host
Currently, we adopt Docker as build environment.
You can get the latest version of advrisc/u20.04-rklbv1 Docker image for developing Rockchip RK3568 projects.
Docker command:
sudo apt-get install -y qemu-user-static sudo apt-get install -y live-build sudo docker pull advrisc/u20.04-rklbv1
Run Docker example
Step1 Run docker container (example)
sudo docker run -it --name rk356x_linux5.10_v130_risc -v /home/bsp/myLinux:/home/adv/BSP:rw --privileged advrisc/u20.04-rklbv1:latest /bin/bash
Step2 In container, change the user. (example)
adv@7cc0fa834366:~$ sudo chown adv:adv -R BSP
Getting Linux Source Code
$ cd ~/BSP $ git clone https://github.com/ADVANTECH-Rockchip/repo.git $ mkdir rk356x_linux5.10_v130_risc $ cd rk356x_linux5.10_v130_risc $ git config --global user.name "Your Name" $ git config --global user.email you@example.com $ ../repo/repo init -u https://AIM-Linux@dev.azure.com/AIM-Linux/RISC-RK3568-Linux/_git/manifest -b rk356x_linux5.10_v130_risc -m default.xml $ ../repo/repo sync $ ../repo/repo forall -c git checkout -b local --track advantech-azure/rk356x_linux5.10_v130_risc $
Build Choose Project
Build Choose Project RSB-4810
$ export TOP=`pwd` $ cd $TOP $ ./build.sh adv_rk3568_rsb4810a2_defconfig $
Build Choose Project ROM-5880
$ export TOP=`pwd` $ cd $TOP $ coming soon $
Build Choose Project KEDGE-350
$ export TOP=`pwd` $ cd $TOP $ ./build.sh adv_rk3568_kedge350a1_defconfig $
Build Choose Project EBC-RB07
$ export TOP=`pwd` $ cd $TOP $ coming soon $
Build U-boot
$ cd $TOP $ ./build.sh uboot
Build Kernel
$ cd $TOP $ ./build.sh kernel
Build Recovery
$ cd $TOP $ rm buildroot/output/rockchip_rk3568_recovery -rf $ ./build.sh recovery
Build Debian 11.x
$ cd $TOP $ sudo dpkg -i debian/ubuntu-build-service/packages/* $ sudo apt-get install -f -y $ ./build.sh debian
Push all image to rockdev folder
$ cd $TOP $ ./build.sh firmware
All image in rockdev/ ./mkfirmware.sh at previous step will repack boot.img and rootfs.img, and copy other related image files to the rockdev/ directory. The common image files are listed below:
# boot.img # misc.img # oem.img # recovery.img # rootfs.img # uboot.img # userdata.img # MiniLoaderAll.bin # parameter.txt #
Make update.img
$ cd $TOP $ sudo apt-get install bsdmainutils $ ./build.sh updateimg
You can get update.img in rockdev/
How to update images?
There are three ways to update images:
1._Using_AndroidToool.
There is no limitation by this way.
2._Using_storage(such sd_or_USB_disk)with_update.zip_in_it.
There are some limitations:
(1)The device must be able to boot up to Debian.
(2)Only update images from the same os, eg :
Debian upgrade to Debian.
(3)Using update.img to upgrade.
3._Using_bootup_sd_disk made_by SDDiskTool.
(1)Only update images from the same os, eg :
Debian upgrade to Debian.
(2)Using update.img to upgrade.