Booting our RISC-V images | Haiku Project

Thanks in large part to the hard work by X512 and everyone developing on Haiku, our nightly RISCV64 images are now functional.


This is a companion discussion topic for the original entry at https://www.haiku-os.org/blog/kallisti5/2021-11-07_booting_our_risc-v_images/
28 Likes

Wow, I completely missed this update.
Thanks for the great work on the RISC-V port!
Let’s hope, that we will have affordable boards with this architecture in the near future.

X512 should get a medal for his work on RISC-V and Vulkan :sunglasses:

5 Likes

Full disclosure, SMP (more than one processor) support is still a WIP via this patch.

That patch works, but needs some minor refinement before being merged.

7 Likes

Does it mean the nightly images page would be refreshed soon accordingly ?..

https://download.haiku-os.org/nightly-images/riscv64/

Or still remain this way ?.. For me this is enough calling to not take this sentence

“Releasing software that requires these unsupported builds is discouraged.”

seriously anymore. I mean you exactly encouraged people to start to use it :wink:

Even if it for testing and developing purposes ( only? ) …

Technically that’s still accurate. Haiku currently only “officially” targets x86 32-bit (x86_gcc2), and x86_64 support for major (aka named) releases. However, we likely need to sit down and re-evaluate this position as alternative architecture ports become available.

6 Likes

I just tried the latest RISC-V image in QEMU.
At the first try it only showed a black screen,now I have a desktop.
Mouse and keyboard still don’t work,is that expected at the current state or should I try rebooting more often?
Also the CPU usage is going from 50% to 100% and back every few milliseconds while it’s actually doing nothing (serial doesn’t show any new events either).

This is truly amazing!!!

Maybe try the qemu flags the article mentions? I think most of the erratic keyboard + mouse behavior is due to #17380 mentioned below. It’s funny that the hardware works better than qemu at the moment :slight_smile:

This is a known issue in qemu. There’s a timer bug in Haiku (pretty much #17380 (Haiku under qemu-system-riscv64, system timer issues) – Haiku which is (poorly) linked in the article) which causes it.

I see, this way you developers to expand the “supported versions”. Thanks for the quick answer, Alexander.

I used exactly the command from the article.
After another reboot,it still behaves the same way.
I hope there will be support for the VisionFive V1 SBC when it’s released next year.
QEMU is not a perfect solution,but the HiFive Unmatched is too expensive for me.

Well done @kallisti5, @X512 and other developers who helped make this happen!

9 Likes

A small step for RISC-V one giant leap for Haiku.

5 Likes

4 posts were split to a new topic: Haiku and FatELF

I’m having an issue with my copy of the image, resets after bootloader because of load access fault while trying to load the kernel

After we merged gcc 11 a few weeks ago, the RISCV64 images saw several regressions.
I updated this article with the working hrevs (between hrev55624 and hrev55697)

Here are the regressions:

@X512 has been busy on the Vulcan + wine ports, and hasn’t had the time to look into the issues.
I’ve been poking at the problem in the tickets above, but haven’t been able to figure out the cause.

7 Likes

Well, that fixed the first issue, now I have an issue with it freezing while initializing the graphics driver

Hello, i wanna buy Lichee RV Dock, and try boot Haiku, this is real on nightly builds? , small, not big price for buy-in , interest board :),?
And if there is boot, may be i can get sensor display, for send any data to be develop/contribute information for this businness… I decided to take…

Also this is Be Good for, deep diving in tech, io connecting, development tldr, on board have many for this. This is enother level :thinking::melting_face:

I look forward to trying Haiku on the VisionFive 2.

3 Likes

The only requirement today is a RV64GC or better core, UEFI firmware (Tianocore, etc) for the device, or the ability to boot a UEFI bootloader providing UEFI hooks (modern u-boot).

Beyond the above requirements, we also need a video framebuffer device, 1 GiB (2 better) of Memory, and some media to boot from (SD Card, etc)

If the above is available, Haiku is much more likely to boot today (or be booted after some minor adjustments in the future)

For all of EFI’s pain points (PE, etc), It definitely makes porting to boards a lot easier.

Thank you for the link. Also thinking about getting this board now! :slight_smile: