Armbian on Raxda's Rock5b ARM board

Author: Ananda Kammampati

Dated : Jan 2023

01-rock5b

Credits:

  • A Big Thank You to Armbian for providing Rock5b images

Goal:

  • Configuring the Rock5b board to make it NVMe SSD bootable

Pre-req:

  • Connect an NVMe SSD that is formatted and partitioned with an ext4 filesystem

Scope:

  • Documenting and sharing the required steps

Out of Scope:

  • End-to-end testing

References:

Step 01: Armbian Installation Steps

1) Download the image ( the one I downloaded: Armbian_22.11.2_Rock-5b_jammy_legacy_5.10.110.img )

2) Copy the image onto an SD card using Belena Ether software

3) Use the right power supply

4) Refer to FAQ on Armbian link provided under References

5) Connect the board to a network where a DHCP Service available (makes it easy)

6) Power on the board

Step 02: Platform Verification

root@rock-5b:~# uname -a
Linux rock-5b 5.10.110-rockchip-rk3588 #trunk.0025 SMP Thu Dec 8 15:14:22 UTC 2022 aarch64 aarch64 aarch64 GNU/Linux

root@rock-5b:~# cat /etc/*release
# PLEASE DO NOT EDIT THIS FILE
BOARD=rock-5b
BOARD_NAME="Rock 5B"
BOARDFAMILY=rockchip-rk3588
BUILD_REPOSITORY_URL=https://github.com/armbian/build
BUILD_REPOSITORY_COMMIT=dbb2846
VERSION=22.11.2
LINUXFAMILY=rockchip-rk3588
ARCH=arm64
IMAGE_TYPE=stable
BOARD_TYPE=wip
INITRD_ARCH=arm64
KERNEL_IMAGE_TYPE=stable
IMAGE_UUID=4428a65b-d9db-4f13-be12-b2fd0e625cc0
# PLEASE DO NOT EDIT THIS FILE
BOARD=rock-5b
BOARD_NAME="Rock 5B"
BOARDFAMILY=rockchip-rk3588
BUILD_REPOSITORY_URL=git@github.com:armbian/build.git
BUILD_REPOSITORY_COMMIT=dbb28469f
VERSION=22.11.2
LINUXFAMILY=rockchip-rk3588
ARCH=arm64
IMAGE_TYPE=user-built
BOARD_TYPE=wip
INITRD_ARCH=arm64
KERNEL_IMAGE_TYPE=Image
BRANCH=legacy
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=22.04
DISTRIB_CODENAME=jammy
DISTRIB_DESCRIPTION="Ubuntu 22.04.1 LTS"
PRETTY_NAME="Armbian 22.11.2 Jammy"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.1 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy

root@rock-5b:~# lspci
0000:00:00.0 PCI bridge: Rockchip Electronics Co., Ltd Device 3588 (rev 01)
0000:01:00.0 Non-Volatile memory controller: Sandisk Corp WD Blue SN550 NVMe SSD (rev 01)
0004:40:00.0 PCI bridge: Rockchip Electronics Co., Ltd Device 3588 (rev 01)
0004:41:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller (rev 05)

root@rock-5b:~# apt-get -y update

root@rock-5b:~# apt-get -y upgrade

root@rock-5b:~# update-alternatives --set iptables /usr/sbin/iptables-legacy

root@rock-5b:~# update-alternatives --set ip6tables /usr/sbin/ip6tables-legacy

root@rock-5b:~# armbian-config --> Software --> Softy --> Docker

root@rock-5b:~# docker --version
Docker version 20.10.22, build 3a2c30b

root@rock-5b:~# systemctl status -l docker

root@rock-5b:~# systemctl enable docker.service

Step 03: Block Devices and naming conventions

Run 'lsblk' command and list all the devices.

mtdblock0 --> SP1 [ Currently empty ]

mmcblk1 --> SD Card [ There are two partition on the SD Card ]

nvme0n1 --> 1TB NVMe SSD [ There is just one partition on the NVMe SSD ]

Step 04: Overall steps to make the board NVMe SSD bootable

1) Use the tool 'armbian-install'

2) Choose the option from which block device the board should boot from (bootloader will be installed)

3) Choose the option to select NVMe as the destination for installing the rootfs

4) Confirm the selection

5) Power off once completed

6) Remove the SD Card from the board

7) Power on the Board

Step 05: Run armbian-install tool

root@rock-5b# armbian-install --> Select SPI as the device from where the board needs to boot from (bootloader goes here)


Step 06: Select NVMe SSD as the destination where rootfs will be installed

Step 07: Confirm writing boot loader to SPI


Step 08: Status update

Step 09: Confirm again

Step 10: Done

 

Step 11: Remove the SD Card and power on the board. The boot should now boot from NVMe SSD