Haiku on ARM status?

What’s the current status of Haiku on ARM? At least for the QEMU target?

It crashes just before loading the desktop, at least in the last screenshots we saw from David Karoly.

6 Likes

Hmmm. I should have a pinebook turning up tomorrow. It would be so awesome to triple boot Haiku with Linux and RISC OS on it… The RISC V effort has gotten further, no?

The inconsistent boot firmwares are a problem in ARM7 and earlier but AArch64 has adopted UEFI, hopefully simplifying matters. A 64-bit Pinebook series laptop should be easier to support for that reason, I would hope. I’m not so sure about the 32-bit ARM.

1 Like

Yes, Haiku RISC-V is usable on real hardware, but there are some troubles such as improperly working USB 3 controller (issue seems actually unrelated to RISC-V). Many built-in hardware such as Ethernet or SD-card slots may not work.

5 Likes

i haven’t looked at it in the past few weeks (bogged down with my day job…)

latest status as of June, when I last looked at it in QEMU:

  • the 32-bit ARM port is almost able to start some simple applications (e.g. AboutSystem or LaunchBox), there’s an issue related to mutexes that needs to be investigated. Basically it’s the mutex was not actually locked assertion. This was before #18451 / hrev57121, I haven’t checked it since then.
  • the 64-bit ARM port does not reach the rocket icon, we get a page fault in inflate. Commenting out the timer interrupt (thread context switch?) allows us to reach the rocket icon, then we get an assertion as user mode memory mapping is not yet implemented.

On real hardware (e.g. RPi3/RPI4) the bootup fails at various earlier stages

  • the 32-bit port needs additional drivers at least for interrupt controller and SD card
  • the 64-bit port has some additional memory mapping issues (Cache/TLB invalidation?)
7 Likes

That’s intriguing, because I only was encountering this problem under rare scenarios involving the memory allocator. Seeing a stack trace from ARM would be interesting.

6 Likes