Canonical has been releasing Ubuntu RISC-V images for SBCs and QEMU at least since 2021. The latest addition is an Ubuntu 24.04 Server image for the Mars credit-card-size SBC powered by StarFive JH7110 quad-core RISC-V SoC and designed by Shenzhen Milk-V Technology.
That means we now have Ubuntu Server images for the QEMU emulator, AllWinner Nezha SBC, Microchip Polarfire SoC FPGA Icicle Kit, SiFive Unmatched mini-ITX motherboard, Sipeed LicheeRV Dock, StarFive VisionFive 2 SBC, and the Mars SBC. You’ll note there aren’t any Ubuntu Desktop images for now, because the GPU (if any) in RISC-V SoCs is not yet fully supported.
Mars SBC specifications:
- SoC – StarFive JH7110
- CPU – Quad-core RISC-V processor (RV64GC) at up to 1.5GHz
- GPU – Imagination BXE-4-32 GPU with support for OpenCL 1.2, OpenGL ES 3.2, Vulkan 1.2
- VPU
- H.264 & H.265 4Kp60 decoding
- H.265 1080p30 encoding
- JPEG encoder / decoder
- System Memory – 1GB, 2GB, 4GB, or 8GB LPDDR4
- Storage
- eMMC slot
- MicroSD slot
- SPI Flash for bootloader
- Display Interfaces
- HDMI video output
- 2-lane MIPI DSI connector
- 4-lane MIPI DSI connector
- Up to two independent displays (HDMI + 1x MIPI DSI)
- Camera – 2-lane MIPI CSI connector
- Networking
- Gigabit Ethernet RJ45 port
- Optional WiFi and Bluetooth via M.2 socket
- USB – 3x USB 3.0 ports + 1x USB 2.0 port
- Expansion
- M.2 E-Key socket (USB 2.0 or PCIe Gen 2.0 x1)
- 40-pin Raspberry Pi-compatible GPIO header
- Misc
- 1x Recovery button
- 2-pin 5V slot for fan
- Power Supply
- 5V/3A+ via USB-C port
- 5V/3A+ via GPIO Power in or GPIO header
- PoE with add-on PoE HAT
- Dimensions – 85 x 56mm
You’ll find the Ubuntu 24.04 server image for the Mars SBC on the Ubuntu Download page, and instructions to get started on a dedicated wiki page on the Ubuntu website. Some limitations include:
- The onboard GPU is not supported.
- PCIe support is incomplete: An NVMe drive can be used. WiFi cards and external GPUs don’t work.
- While the 3 USB 3.0 ports are working the USB 2.0 port is not supported by the 6.8 kernel.
I was a little confused about the second point since Key E sockets are seldom used for storage, so I went to look at the schematics:
M2-M Key is likely a mistake as the rest of the schematics confirm it’s an M.2 Key-E socket. We can see the socket is connected to the PCIe1 interface of the JH7110 SoC and to USB 2.0 through a VL805 PCIe to USB controller, so it would allow various USB or PCIe cards to be connected potentially using adapters.
Nevertheless, there’s a lot of work to do, but the companies entered an agreement to make Ubuntu the main OS for the Mars SBC and other future Milk-V RISC-V hardware platforms:
Milk-V and Canonical have reached a strategic cooperation agreement with the intention of bringing Ubuntu to novel RISC-V devices. Milk-V will provide hardware sponsorship to Canonical, including for future products, and offer an Ubuntu operating system as its main supported and maintained system to users across form factors and use cases, with a specific emphasis on accelerated computing and AI. With the support of Milk-V’s hardware and engineering teams, Canonical will leverage the latest and greatest RISC-V designs to continuously improve Ubuntu and the broader open source ecosystem for the RISC-V ISA. Once new Milk-V products will be available, Canonical will collaborate with Milk-V to launch developer preview Ubuntu images and support version updates. This collaboration is aimed at providing users of the RISC-V architecture platform with a rich operating system designed to enhance development and user experiences.
Another issue is availability as the Mars SBC is listed for $38.99 and up on Arace Tech, but all models are currently out of stock. The Mars CM – the Raspberry Pi CM4 equivalent of the Mars SBC – can be purchased on Arace Tech as well as on various stores on Aliexpress, so maybe the Mars RISC-V SBC will eventually show up in one of those soon.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress
Presumably it wouldn’t take too much to get this image to work on their Mars CM?
Let’s hope we see similar support from other distros as well!
The qemu image can be converted to a desktop one without issues, and virgl acceleration works very well, so I’m not sure why they aren’t offering it.
Maybe they just prefer to get feedback from developers for now, and not just from anyone buying a cheap board to let Grand’Pa watch movies and play 3D games then complain it doesn’t work well.
With Mars I do understand it of course, I’m talking about the QEMU image here.
“The onboard GPU is not supported.”: what does that mean:
No HDMI output at all? Not even ASCII? That would be quite annoying for installation purposes.
Or HDMI does output ASCII, but no GPU accelaration / graphics, which is not relevant for Ubuntu Server
No HDMI display output at all. (serial console connection required).
brrrrrrrrrrrrrrrrr
“I was a little confused about the second point since Key E sockets are seldom used for storage, so I went to look at the schematics:”
The mentioned NVMe support is likely more applicable for the VisionFive 2 SBC sharing the same SoC – StarFive JH7110, which has a slot ?
For storage i am using the Orange Pi 5 plus emmc modules – https://www.banggood.com/32GB-or-64GB-or-256GB-eMMC-Module-for-Orange-Pi-5-Plus-with-Fast-Read-and-Write-Speeds-Development-p-2002339.html
Does the USA permit this?
In this era of geopolitic war, USA gives no more access to USA product and license to China, and on the other side China refuse them, trying to develop something inside it.
In this scenario, China find that RISC-V, being open, is very interesting for them.
USA has understood this, so is trying to convince RISC-V investor to leave the projects die.
Canonical operates primarily from UK, not USA
USA has nothing to say about RISC-V anymore, they moved to swiss if i am not mistaken, also an isa is just an isa, its not like the arm licensed cores, an isa is open but that doesn’t mean they can easily make cpu they still have to design the core.