My progress on real RISC-V hardware

This is simply astonishing! Hats off and kudos to you for your hard work and mad skills!

13 Likes

Wow wtf, unbelievable work…
Congtats and Nastrowie for the dektop to show.
We should consider a prize for your archivement.
Just great very fast straight forward process.
Nice and it makes me confident to hold on Haiku developement efforts.
Like a light in the dark…
Fascinating.

3 Likes

@jt15s Maybe you can promote this achievement by a blog post ?

3 Likes

Maybe fix artifacts first?

11 Likes

Would enabling write-combining, the way VESA & Framebuffer drivers do, potentially fix this problem? It may get the CPU to write a full cache line at a time instead of unaligned bytes.

3 Likes

I fixed problem by using 32 bit copy per step. It seems that 64 bit access should use 64 bit (8 byte) aligned pointers.

CIMG4717

31 Likes

Memory types are not yet implemented for RISC-V.

2 Likes

Another interesting thing is that HDA audio is recognized for video card HDMI port. Maybe audio will work by HDMI.

11 Likes

I’ve shared some info on your awesome progress on Reddit, and someone there is asking if there’s an SD card image that be used to play with.

6 Likes

I boot from USB disk, SD card is left untouched. I may upload test live USB image later. Note that it have known problems and not yet ready for general use.

SD card has 3 problems:

  1. It is not yet supported by Haiku.
  2. It should include 2 additional partitions with low-level firmware code.
  3. It is slow, at least on Linux.
4 Likes

An image which can be dd-d to a drive should be sufficient, and of course the expectations would be set that this is pre-pre alpha.

Also… @X512… I’ve been on the edge of my seat these past few months reading and waiting for your updates. This is awesome work, and I wish I was at your level.

5 Likes

Also people who want to test should aware that video card is mandatory, there are no text mode. Currently only Radeon graphics are included and tested.

3 Likes

I also posted on SiFive Forum.

brucehoult seems also registered on SiFive forum.

7 Likes

Fantastic progress Ilya. You are a true star in the Haiku community :slight_smile:

8 Likes

Great progress @X512 !!!

2 Likes

time to build a riscv system

My ears are burning, so I guess I had to register.

Great work and I’ve love to try it on my Unmatched if you make an SD card image available.

One comment: I see you’re calculating some table offsets based on multiplying the HART ID by a constant. That will work for the FU740 where the HART IDs are 0-4, but it’s not portable. RISC-V does not require that HART IDs are consecutive or even necessarily small. All that is required is that one of the HARTs has ID 0.

There’s a maybe useful blog post about some of this boot stuff here: All Aboard, Part 6: Booting a RISC-V Linux Kernel - SiFive

Obviously you’ve got past all that already, but maybe not in a generic way for other SoCs. Might be worth checking.

16 Likes

I think some credits are due also to all the developers that laid the groundwork for this, the base was there and with the great work @X512 did he pulled Haiku again a step higher on the ladder! :clap:
Let’s not forget the work done by @kallisti5 also :clap:

13 Likes

Shout out to Haiku Inc, too for funding the boards!

6 Likes

Congratulations on your progress!

2 Likes