StarFive VisionFive 2
Board revision
Different revisions for the StarFive VisionFive 2 board exists which use different device-trees. The board revision is silkprinted on the board. The Ubuntu image assumes that you are using revision v1.3B. If you are using board revision v1.2A, you will have to update the used device-tree as described below.
Updating U-Boot
For running Ubuntu you need U-Boot installed on the SPI-flash.
You can either use the vendor U-Boot:
VisionFive2 Software v2.11.5 is known to work.
VisionFive2 Software v3.6.1 is not compatible.
Or you can build U-Boot from the upstream source as described in the online documentation.
- v2023.10-rc4 was tested successfully.
Updating U-Boot is described in https://doc-en.rvspace.org/VisionFive2/PDF/VisionFive2_QSG.pdf, chapter "3.8.1. Updating SPL and U-Boot of Flash".
After updating U-Boot it is necessary to reset the environment to the defaults. At the U-Boot console you can use the following commands:
env default -f -a env save
Copying Ubuntu onto the SD-card
Download the Ubuntu preinstalled server image from https://cdimage.ubuntu.com/releases/23.04/release/ and flash it on your sdcard using:
xzcat ubuntu-23.04-preinstalled-server-riscv64+visionfive2.img.xz | sudo dd bs=1M conv=fsync of=/dev/sdX
You will have to replace /dev/sdX by the actual device name of your SD card. Please, be especially cautious not to overwrite the wrong drive as this cannot be undone.
First boot
The boot mode must be set to SPI flash (DIP switches RGPIO_0 = 0, RGPIO_1 = 0) as the Ubuntu image comes without U-Boot.
Connect to the UART using a UART-TTL USB adapter. For accessing the serial console you can use picocom:
picocom -b 115200 /dev/ttyUSB0
Insert the SD card and power on the board.
When booting the first time wait until you see an output line confirming that cloud-init has finished. Cloud init is responsible for generating the SSH keys and setting the default password. Cloud init itself will also need a few minutes. The line to wait for will look similar to
[ 150.053340] cloud-init[1274]: Cloud-init v. 23.1.1-0ubuntu2 finished at Mon, 03 Apr 2023 11:14:35 +0000. Datasource DataSourceNoCloud [seed=/var/lib/cloud/seed/nocloud-net][dsmode=net]. Up 150.00 seconds
Now you can login with user ubuntu and the default password ubuntu and will be asked to choose a new password.
The image assumes that you are using version v1.3B of the board (see silkprint on the board). If you are using board version v1.2A, please proceed as follows:
echo 'StarFive VisionFive 2 v1.2A' | sudo tee /etc/flash-kernel/machine sudo flash-kernel $(uname -r) sudo update-grub sudo reboot
These steps will ensure that you use the v1.2A device-tree. Only the outermost Ethernet port is working.
Limitations
USB and PCIe are not supported by the 6.2 kernel. We expect future upstream kernel revisions to add these.
RISC-V/StarFive VisionFive 2 (last edited 2023-09-07 08:34:26 by xypron)