RISC-V
3600
Comment:
|
3321
Fix link
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
Ubuntu provides riscv64 architecture for the RISC-V platform since Focal release. | Ubuntu provides the riscv64 architecture for the RISC-V platform since the release of Ubuntu 20.04 LTS. |
Line 5: | Line 5: |
* Ubuntu 20.04.2 LTS Release Image https://cdimage.ubuntu.com/releases/20.04.2/release/ | === Preinstalled Server Images === |
Line 7: | Line 7: |
* Ubuntu Focal (20.04) Dailies https://cdimage.ubuntu.com/ubuntu-server/focal/daily-preinstalled/current/ | * Ubuntu 23.10 (Mantic minotaur) preinstalled images for |
Line 9: | Line 9: |
* Ubuntu Hirsute (21.04) Dailies https://cdimage.ubuntu.com/ubuntu-server/daily-preinstalled/current/ | * [[RISC-V/Nezha D1 | Allwinner Nezha D1]] * [[RISC-V/LicheeRV | LicheeRV Dock]] * [[RISC-V/PolarFire SoC FPGA Icicle Kit | Microchip Polarfire Icicle]] * [[RISC-V/SiFive HiFive Unmatched | SiFive HiFive Unmatched]] (also supports [[RISC-V/QEMU | QEMU]]) * [[RISC-V/StarFive VisionFive | StarFive VisionFive]] * [[RISC-V/StarFive VisionFive 2 | StarFive VisionFive 2]] |
Line 11: | Line 16: |
One can boot it on any system with qemu-system, or on bare-metal board such as those built by SiFive. | * Ubuntu 23.04 (Lunar Lobster) preinstalled SD-card images for * [[RISC-V/Nezha D1 | Allwinner Nezha D1]] * [[RISC-V/LicheeRV | LicheeRV Dock]] * [[RISC-V/SiFive HiFive Unmatched | SiFive HiFive Unmatched]] (also supports [[RISC-V/QEMU | QEMU]]) * [[RISC-V/StarFive VisionFive | StarFive VisionFive]] * [[RISC-V/StarFive VisionFive 2 | StarFive VisionFive 2]] are available at https://cdimage.ubuntu.com/releases/23.04/release/. * Ubuntu 22.04.3 (Jammy Jellyfish) preinstalled SD-card images for * [[RISC-V/Nezha D1 | Allwinner Nezha D1]] * [[RISC-V/LicheeRV | LicheeRV Dock]] * [[RISC-V/PolarFire SoC FPGA Icicle Kit | Microchip PolarFire Icicle Kit]] * [[RISC-V/SiFive HiFive Unmatched | SiFive HiFive Unmatched]] (also supports [[RISC-V/QEMU | QEMU]]) * [[RISC-V/StarFive VisionFive | StarFive VisionFive]] are available at https://cdimage.ubuntu.com/releases/22.04.2/release/. * Ubuntu 20.04.5 (Focal Fossa) preinstalled SD-card images for the * SiFive HiFive Unleashed * [[RISC-V/SiFive HiFive Unmatched | SiFive HiFive Unmatched]] (also supports [[RISC-V/QEMU | QEMU]]) are available at https://cdimage.ubuntu.com/releases/20.04.5/release/. === Server Install Image === If you want to install Ubuntu on a disk drive, use the server install image. * An Ubuntu 23.10 (Mantic Minotaur) [[https://cdimage.ubuntu.com/releases/23.10/release/ubuntu-23.10-live-server-riscv64.img.gz|server install image]] is available at https://cdimage.ubuntu.com/releases/23.10/release/ * A Ubuntu 23.04 (Lunar Lobster) server install image supporting the [[RISC-V/SiFive HiFive Unmatched | SiFive HiFive Unmatched]] board and [[RISC-V/QEMU | QEMU]] is available at https://cdimage.ubuntu.com/releases/23.04/release/. * A Ubuntu 22.04.3 (Jammy Jellyfish) server install image supporting the [[RISC-V/SiFive HiFive Unmatched | SiFive HiFive Unmatched]] board and [[RISC-V/QEMU | QEMU]] is available at https://cdimage.ubuntu.com/releases/22.04.3/release/. A tutorial is available at https://ubuntu.com/tutorials/install-ubuntu-server. A description of the installation process is also available at https://discourse.ubuntu.com/t/ubuntu-installation-on-the-sifive-hifive-unmatched-board-using-a-server-install-image/27804. === Desktop === We currently don't provide a desktop image for RISC-V. But you can install package ubuntu-desktop to get a GNOME desktop. As of 2022 due to performance restrictions the only hardware usable for a desktop is the SiFive HiFive Unmatched board. |
Line 16: | Line 65: |
== Booting with qemu == Prerequisites: * apt install qemu-system-misc opensbi u-boot-qemu qemu-utils After installing the above prerequisites, one can use any of the above images to boot virtua> First unpack the image {{{ xz -dk focal-preinstalled-server-riscv64.img.xz }}} Optionally, if you want larger disk, you can expand the disk (filesystem will be automatical> {{{ qemu-img resize focal-preinstalled-server-riscv64.img +5G }}} Next use OpenSBI bootloader & u-boot-qemu to boot the virtual machine Working example with all the options is: {{{ qemu-system-riscv64 \ -machine virt -m 2048 -smp 4 \ -bios /usr/lib/riscv64-linux-gnu/opensbi/generic/fw_jump.elf \ -kernel /usr/lib/u-boot/qemu-riscv64_smode/uboot.elf \ -device virtio-net-device,netdev=eth0 -netdev user,id=eth0 \ -drive file=focal-preinstalled-server-riscv64.img,if=virtio }}} The important options to use are: * Machine type `virt` aka `-machine virt` * Bios is OpenSBI `-bios /usr/lib/riscv64-linux-gnu/opensbi/generic/fw_jump.elf` * "kernel" is qemu smode uboot `-kernel /usr/lib/u-boot/qemu-riscv64_smode/uboot.elf` One can use pass through networking, adjust memory (`-m`) & cpu counts (`-smp`) as needed. Switch to the serial console, wait for cloud-init to complete, then login using `ubuntu:ubuntu`. See the cloud-init section below to further customise the first boot behaviour with cloud-init. == Booting on SiFive HiFive Unleashed board == The above image has U-Boot SPL loader as well as SiFive U-Boot to boot on the board. Set jumpers to boot from the microSD by setting `MSEL=1011` (MSEL2 to the outside of the board, the rest to the inside). You can then use "Gnome Disks" app to restore `img.xz` image onto the microSD card, plug it into the board and boot. You can also use cmdline to extract the image and dd it. {{{ xz -dk focal-preinstalled-server-riscv64.img.xz dd if=focal-preinstalled-server-riscv64.img of=/dev/disk/by-id/<TAB><TAB>complete-to-sdcard-device }}} Monitor serial console, wait for cloud-init to complete, then login using `ubuntu:ubuntu`. See the cloud-init section below to further customise the first boot behaviour with cloud-init. == cloud-init integration == The image has a fallback cloud-init datasource that configures sudo user `ubuntu` with password `ubuntu` and DHCP networking. You will be asked to change the password on first login. The image has `CIDATA` partition which can be used as a valid datasource to adjust cloud-config metadata. If you wish to customize user password, networking information, add ssh keys, etc. Please mount `CIDATA` partition rename `meta-data` and `user-data` files and adjust them to taste. You can use network-info to configure networking if something more sophisticated than just DHCP is desired. For example ssh keys, disabling interactive login, and so on. See https://cloudinit.readthedocs.io/en/latest |
Ubuntu provides the riscv64 architecture for the RISC-V platform since the release of Ubuntu 20.04 LTS.
Images
Preinstalled Server Images
- Ubuntu 23.10 (Mantic minotaur) preinstalled images for
- Ubuntu 23.04 (Lunar Lobster) preinstalled SD-card images for
SiFive HiFive Unmatched (also supports QEMU)
are available at https://cdimage.ubuntu.com/releases/23.04/release/.
- Ubuntu 22.04.3 (Jammy Jellyfish) preinstalled SD-card images for
SiFive HiFive Unmatched (also supports QEMU)
are available at https://cdimage.ubuntu.com/releases/22.04.2/release/.
- Ubuntu 20.04.5 (Focal Fossa) preinstalled SD-card images for the
SiFive HiFive Unmatched (also supports QEMU)
are available at https://cdimage.ubuntu.com/releases/20.04.5/release/.
Server Install Image
If you want to install Ubuntu on a disk drive, use the server install image.
An Ubuntu 23.10 (Mantic Minotaur) server install image is available at https://cdimage.ubuntu.com/releases/23.10/release/
A Ubuntu 23.04 (Lunar Lobster) server install image supporting the SiFive HiFive Unmatched board and QEMU is available at https://cdimage.ubuntu.com/releases/23.04/release/.
A Ubuntu 22.04.3 (Jammy Jellyfish) server install image supporting the SiFive HiFive Unmatched board and QEMU is available at https://cdimage.ubuntu.com/releases/22.04.3/release/.
A tutorial is available at https://ubuntu.com/tutorials/install-ubuntu-server.
A description of the installation process is also available at https://discourse.ubuntu.com/t/ubuntu-installation-on-the-sifive-hifive-unmatched-board-using-a-server-install-image/27804.
Desktop
We currently don't provide a desktop image for RISC-V. But you can install package ubuntu-desktop to get a GNOME desktop. As of 2022 due to performance restrictions the only hardware usable for a desktop is the SiFive HiFive Unmatched board.
Forums
You can discuss Ubuntu on RISC-V over at the Ubuntu Server forums.
RISC-V (last edited 2024-04-21 06:55:43 by xypron)