1
0
forked from sig_altarch/wiki
sig_altarch_wiki/docs/riscv64/visionfive2/visionfive2.md
Pratham Patel 26b1fdb263 Bump MIN_UBOOT_FIRM_VER from v2.10.4 to v2.11.5
The previous versions of firmware including v2.10.4 had a bug related to
power management where the board would not reboot properly. Just when
the board would turn off, the voltage would drop from 10-ish volts to
5v. This would happen randomly and prevent the board from powering back
up.

Firmware provided in release v2.11.5 fixes this. This was included in the
changelog and I have verified it using all the compatible cables that I
have. More testing is needed to make sure that *this* firmware version
fixes it or not. But making this change because more community members
and/or testers use this as a minimum version and raise issues in regards
of this version.
2023-04-15 07:11:48 +05:30

6.3 KiB

title author tested with tags
VisionFive 2 Pratham Patel TBD
riscv
starfive
visionfive

The VisionFive 2 SBC's Wiki

The VisionFive 2 SBC is the second generation of SBC in the VisionFive SBC lineup. This lineup of SBCs contains SoCs with the CPUs that use the RISC-V open computing ISA.

This Wiki contains the necessary information a user needs to know before using Rocky Linux on the VisionFive 2 SBC.

Technical guide

Hardware specifications

Item Description
Processor/SoC StarFive JH6110 (rv64gc with up-to 1.5GHz max freq)
Memory LPDDR4: 2GB/4GB/8GB
Storage SD card slot
SPI flash for u-boot
Video Output HDMI 2.0
MIPI-DSI
Multimedia Camera with MIPI CSI (up-to 2160p@30fps)
Decoding: H.264 & H.265 at 2160p@60fps Encoding: H.264 & H.265 at 1080p@30fps JPEG Encoder and Decoder
1/4-pole stereo audio
Connectivity 2x RJ45 Gigabit Ethernet (some models have 1x 100Mbit instead)
4x USB 3.0 (some models have 2x USB 2.0)
M.2 M-Key NVMe drive slot
Power in USB-C port: Qualcomm Quick Charge 3.0 compatible
GPIO power in: 5V/3A
PoE ("pin compatible with RPi PoE HAT")
GPIO 40-pin GPIO header
Dimensions 100mm x 72mm
Button(s) Hardware reset button
Other Debug pin headers

Software status/information

At the time of writing this Wiki, the software support is still being upstreamed by the hardware vendor. More details about their upstreaming efforts and the merge status of each component can be viewed at rvspace.org.

Relevant software repositories:

Following are the necessary arch/board specific software repositories. These are here for curious tinkerers and Rocky Linux maintainers. Suffice to say, as a normal user, you are not expected to touch/compile any of these items 😉

Fully upstreamed
Downstream forks (upstream WIP)

Installation

To install Rocky Linux on the VisionFive 2 SBC, there is one pre-requisite that needs to be satisfied. That is to update the board firmware to MIN_UBOOT_FIRM_VER.

Editor's note: StarFive (the hardware vendor) is almost done sending in mainlining patches for u-boot and we should be able to switch to upstream u-boot soon. Our u-boot package for the VisionFive 2 should automatically update the board firmware to whatever version we support. But the following section is present nonetheless, for the users who have an outdated firmware than what we (Rocky Linux) have a minimum spec bar for.

Pre-requisite: Update board firmware

  1. Download the following files:
  1. sudo dd if=sdcard.img conv=sync status=progress bs=1M of=/dev/sdX

  2. mkdir temp-dir

  3. sudo mount /dev/sdX4 temp-dir

  4. sudo cp u-boot-spl.bin.normal.out visionfive2_fw_payload.img temp-dir/root/

  5. sudo sync; sudo sync; sudo sync; sudo sync;

  6. sudo umount temp-dir

  7. Eject the SD card from your computer, insert it in your VisionFive 2 and power it up. The green LED should start blinking to indicate successful board power-up.

  8. Plug the network cable in the Ethernet port that is next to the HDMI port. (The other port has DHCP-related issues with early firmware.)

  9. ssh root@<IP_ADDRESS> (passwd: starfive)

  10. Run the command cat /proc/mtd and you should have the following output:

dev: size erasesize name
mtd0: 00020000 00001000 "spl"
mtd1: 00300000 00001000 "uboot"
mtd2: 00100000 00001000 "data"
  1. If and only if the partition information given above matches with yours, update the spl and uboot partitions using the following commands:
flashcp -v u-boot-spl.bin.normal.out /dev/mtd0
flashcp -v visionfive2_fw_payload.img /dev/mtd1

The board firmware has now been updated!

Current things that are WIP

A Rocky Linux image 😝