I compiled UEFI loader with -mfpu=none and runtime libraries from LLVM.
hi,
Where a find a binares of package of this files:
Building Haiku Minimum Target
AddHaikuImagePackages: package openssl not available!
AddHaikuImagePackages: package bash not available!
AddHaikuImagePackages: package bc not available!
AddHaikuImagePackages: package coreutils not available!
AddHaikuImagePackages: package curl not available!
AddHaikuImagePackages: package freetype not available!
AddHaikuImagePackages: package icu not available!
AddHaikuImagePackages: package libsolv not available!
AddHaikuImagePackages: package zlib not available!
AddHaikuImagePackages: package zstd not available!
AddHaikuImagePackages: package gcc_syslibs not available!
???
You have to do a bootstrap build where these will be built from source, until we get the toolchain stable enough that we are confident providing binary packages that won’t change every other day.
I wish a ready solution, I don’t want to learn how to compile hkpk for arm
There are no ready solution for ARM yet.
Good day,
Amazed! Geniuses!. I would like to check that “no ready solution” on Pinephone´s aarch64, if possible. I´ll be watching this topic with great interest.
Thanks!
Regards,
RR
At most you will get Haiku boot loader menu and Haiku boot splash with gray icons. Kernel initialization is not yet working. It will also need hardware keyboard to work.
I think about libusb for ARM, that maybe run a keyboard.
Are you sure uboot’s UEFI does support GOP on pinephone? or even ConOut into LCD. I’d expect ConOut into UART only. so you would see something only if attach serial adapter. But, after Boot Services are gone, ConOut through serial is too, so without the framebuffer address (taken from GOP only, and the latter most probably isn’t there) the loader and kernel would have nothing to output to. unless they start discovering/configuring those UI devices (UART and LCD) from the very first steps of kernel initialization process.
Compilation question. I decided to compile under arm (odroid) in linux ubuntu bionic. However, this results in a lot of additional errors, e.g. Segmentation fault. I think this is because JAM is not compiled under arm. Where can I find the source of JAM (looking and finding a commercial version ;(. )
jam - buildtools - Haiku's buildtools repository. It can be compiled on Linux. Note that Haiku use custom Jam version, other versions will not work.
Good day,
That would be fine. I wouldn’t expect it to fully boot, just for fun and “whisful thinking ahead”.
Then I’ll have to wait until I can get a USB-C dock to test it out.
Thanks!
Regards,
RR
A FDT change with UEFI for Arm64 and other architectures.
- How the system will refer to UEFI (as I suppose it maps devices to single boards).
- How Haiku works theoretically?
- X512 are you going to discuss or commite your amendments?
I do not fully understand what have you asked.
UEFI is mostly accessed by boot loader, it can’t be accessed from kernel except very limited UEFI runtime services. Static hardware is enumerated by ACPI or FDT table that is found by boot loader and passed to kernel.
I’am a fresh read a book Operation Systems [Stallings William] 2019, and I’m have many through about How OS works, I see IBM PC to inowate as Windows sub system, Things as Thread and light Thread it is in procesor.
What about support a Cortex-A72 (ARMv8-A) is 64 bit (RPI4), when you take this processor to update the sources of Haiku?. And space for 64 bit in JAM?
Good day @X512,
I’m set. I got the dock, so ready to test your work on the Pinephone. I’m aware of the limitations at the moment.
Where could I download an image?
Thanks and regards,
RR
If I understand correctly, Pinephone has 64 bit ARM, but I ported boot loader to 32 bit ARM. Porting to 64 bit ARM should be not difficult, but need some work.
You are correct @X512 , is 64bit ARM (* CPU: 64-bit Quad-core 1.2 GHz ARM Cortex A-53 * GPU: MALI-400MP2). If I can help, let me know, though beware I got no skill on porting stuff, I struggle with Python and GDScript 

Thanks and regards!
RR
Allwinner 64 bit SoCs start in aarch32 execution state. hence uboot is also 32 bit. it uses some Allwinner hack, to force it to reset into 64 bit if needed (bootm, booti but not go). maybe this will work with UEFI payload to uboot (bootefi), probably not, but you can try. when I first ran my bare metal code with Pine64+, having the same A64 SoC as pinephone does, and used the go command, my aarch64 code, caused the SoC to spit the undefined instruction exception. switching to using bootm and booti, worked fine with the same code. That’s because exactly on executing those commands, 32 bit uboot was making the trick. it was some time ago and since then uboot could switch to 64 bit for itself. but as I said above, you hardly will see anything, unless uboot on pinephone does support GOP (LCD panel) and the OSL in question and Haiku itself uses framebuffer address transferred through GOP.