Initial PPC64 support

I was looking at Haiku’s git page, and saw that someone added initial build support to the build tools

https://git.haiku-os.org/haiku/commit/?id=c12b2aba11346c2b64c75951fa6deee4e3ebf07f

1 Like

I always wanted an excuse to buy an old PowerMac, maybe this is it :smiley:

Probably not, considering most PowerMacs are not capable of runing PPC 64bit, only the G5 would be :slight_smile:

And granted, i have one here, and it’s supposed to run Haiku, but for most machines it it probably more usefull to use the 32bit variant.

Oh good point! I didn’t realize the G4 was also 32bit, and I never really cared for the G5.

Not at all, modern Amiga’s also on PPC64 CPU’s, like X5000 or newest board Mirari, and they all using UBoot, so I think thats can make port more easier Mirari is coming | IntuitionBase

2 Likes

But… Those aren’t PowerMacs :smiley:

but any way powerpc so if someone want to try add support for 32 bit variant more things already partially or fully realized or need less patches

The 32 bit PowerPC suppurt is way more advanced, but still doesn’t boot to the desktop. Probably quite a bit of oitrot as it wasn’t touched in years, but at the time, the kernel was running.

I’m currently to short on time to actually work on the ppc port, last time I was stuck at ld not properly linking stuff (It moves everything either into one program header or into more than two). Though I had some other compilation troubles aswell. I might have a look at it once I have more time again. The bootloader loads and I’ve gotten to the kdl, though it got there before any commands were loaded. @ilzu and @Yn0ga had made some progress aswell and got further than I did, iirc

I have a POWER9 system which I’m sure Haiku would be blazing fast on :slight_smile:

2 Likes

I have, shoved under a desk, a final gen G4 (MDD) and a final gen G5 (Powermac tower). Neither have been powered on in a decade, so they very probably don’t work at this stage, but they might still work…

1 Like

Boot them up and see what happens!

I have a G4 Mac Mini which definitely still boots as I had it running about 2 weeks ago. I also have a load of old world Macs now, but I guess the only really useful one is a Wallstreet PowerBook. The rest are all 604’s.

I did really like the 604s, and the brightly colored G3s.

1 Like

I am keeping my eMac G4 (currently running MorphOS) in the hope to run Haiku on it one day. But that is one big machine so will probably need to give it away as I am getting short in storage space :frowning:

The issue I’ve seen when attempting to compile the 32-bit PPC port suggests rebootstrapping is necessary? The prebuilt libgcc in the build packages is missing the _restgpr_*_x symbols.

I have access to both big-endian PPC64 and PPC64LE hardware, and I’d be happy to actively contribute to the PPC64 port. I have quite a bit of experience with the architecture

Some of the trickier parts will probably be Open Firmware support on Apple machines, proper drivers for the different PowerMac and RS/6000 systems, and especially thermal management. From what I remember, that can get pretty complicated, particularly on the G5, but it’s definitely not impossible.

I’m not sure what the current state of Open Firmware support in Haiku is, but at least a lot of this can be tested entirely in QEMU before moving to real hardware. That should make development much easier than burning a new CD for every test

But first, I need to get Haiku building again. I’m using Fedora now, and the build isn’t completing for some reason. I’ll investigate and try to figure out what’s going on :confused:

2 Likes

Open firmware support was fully working on powerpc 32 bit, and made 64 bit aware during my experiments with the sparc port. I guess some fixes will be needeo, but it should already be 90% there.

The openbios firmware that comes with QEMU does some stuff differently than apple’s firmware, leading to it freezing in QEMU.
I’m using netbooting with real hardware (booting using tftp and the disk server), though that makes debugging more difficult. I’ll perhaps try to have a look at the buildtools once I have more time in general