My progress on real RISC-V hardware

Multiple CPU cores are working on real hardware!

Video plays much better. Now it even can play fullscreen, but screen update will become slow because of unsolved slow video memory access problem. Video memory access speed can be improved by using DMA controller that can transfer physical memory without using CPU.

screenshot6

36 Likes

the touhou anime?

Yes. Unofficial fan-made anime in Touhou universe.

3 Likes

I just want to say that I’ve been following your efforts since you started posting and I am extremely impressed, and very grateful for your work. Thank you!

3 Likes

ciao! please, can we have the qemu syntax?
I can’t start your images :frowning:

I use following QEMU scripts:

haiku_loader.riscv:

/boot/data/packages/haikuports/app-emulation/qemu/work-6.0.0/sources/qemu-6.0.0/build/install/bin/qemu-system-riscv64 \
	-machine virt \
	-global virtio-mmio.force-legacy=false \
	-m 1G \
	-bios "/Haiku/data/packages/haiku/generated.riscv64/objects/haiku/riscv64/release/system/boot/riscv/haiku_loader.riscv" \
	-serial stdio \
	-parallel none \
	-monitor none \
	-device ati-vga \
	-device virtio-blk-device,drive=x0,bus=virtio-mmio-bus.2 \
	-device virtio-net-device,netdev=usernet,bus=virtio-mmio-bus.3 \
	-drive file="/Haiku/data/packages/haiku/generated.riscv64/haiku-minimum2.image",if=none,format=raw,id=x0 \
	-netdev user,id=usernet \
	-device nec-usb-xhci,id=xhci \
	-device usb-tablet,bus=xhci.0 \
	-device usb-kbd,bus=xhci.0

haiku_loader.efi (need u-boot firmware image):

/boot/data/packages/haikuports/app-emulation/qemu/work-6.0.0/sources/qemu-6.0.0/build/install/bin/qemu-system-riscv64 \
	-machine virt \
	-global virtio-mmio.force-legacy=false \
	-m 256M \
	-kernel u-boot.bin \
	-serial stdio \
  	-parallel none \
	-monitor none \
	-device ati-vga \
	-device virtio-blk-device,drive=x0,bus=virtio-mmio-bus.3 \
	-device virtio-blk-device,drive=x1,bus=virtio-mmio-bus.2 \
	-device virtio-net-device,netdev=usernet,bus=virtio-mmio-bus.4 \
	-drive file="/boot/data/packages/haiku/generated.riscv64/haiku-minimum.image",format=raw,id=x0 \
	-device nec-usb-xhci,id=xhci \
	-device usb-tablet,bus=xhci.0 \
	-device usb-kbd,bus=xhci.0 \
	-netdev user,id=usernet
8 Likes

Latest uploaded version (rev3) is already a bit obsolete, it has some critical problems already fixed.

8 Likes

Running Haiku within Haiku, very interesting… Haiku-ception!

This port is looking very good, if I had a RISC-V machine I’d try it in a heartbeat. Awesome work @X512 :grinning:

2 Likes

i see riscv as being veey useful for embedded use, cnc machines, automotive , portable battery powered.

looks like Haiku being in the first mover group of OS’s, should benefit greatly !!!

this is something haiku promotion team needs to get word out about fast

2 Likes

In theory Haiku can be used in various machines control panel GUI.

2 Likes

Might help in the list of possible use-cases for the nay-sayers.

Linux CNC, it really should be forked, they have a python qt gui to. I don’t know how capable gerbel is, but emc2 delivers for tolerances and control.

has a shit load of cruft and bad design though.

I am not sure if Haiku would run reliably in CNC work, considering it is still beta and prone to crashes. It might poo on very expensive craft. :slight_smile:

Amazing Sir!!! I instant want to have this RISC machine!!! <3

2 Likes

only one way to find out, and you start with a parellel install, and run small safe projects and bug hunt, same as everything else.

2 Likes

Loving the progress of this. Makes me want to get a RISC-V hardware and play with it.

2 Likes

@waddlesplash is still wanting to kill haiku_loader.riscv: https://dev.haiku-os.org/ticket/17188. It is possible to down-vote ticket.

1 Like

Votes on tickets are a system to indicate to developers what users are particularly interested in. On technical matters like this, where the ultimate decision will have basically no impact on users one way or another, they matter much less. “Vote brigading” is also, uh, generally unhelpful.

Anyway, @kallisti5 et al. seemed to vaguely agree with the reasoning in there; which is part of why I made the ticket in the first place.

2 Likes

Still no new RISC-V related Gerrit patches from me in 5 years until that ticket is opened. No discussion accepted. My new code will be uploaded here or on Gists.

6 Likes

Previously you said the condition was my -2 and the code not being merged as a result. Well, we agreed to shelve the discussion and resume it at a later date, and merge the code for now (and indeed it was merged.) So, you are changing your terms, then?

Hinging all of your contributions to Haiku on a single chunk of code being included or not in Haiku is not a great recipe for amenable relations with the rest of the developers, and leaves a rather sour taste in any technical discussions.