Haiku on x86 macbooks

MacTracker is my goto source for Apple hardware information.

For some newer Intel models we need to write a driver for the T2 chip. This is an Arm-coprocessor and seems to have all the relevant things connected (mouse, kb, usb)

Before that though I am getting a gray screen on boot : /

1 Like

9 posts were split to a new topic: Link bundles

If the goal here is to get Haiku fully working with most of the hardware in Intel-based Macbooks, then an important area to work on is improving Broadcom WiFi adapter support in Haiku. IIRC, FreeBSD’s bwi driver does work with Haiku’s compatibility layer but not the newer bwn driver. @waddlesplash would prolly know more about this, as he’s who I learned about this from a while back.

@marcoapc -

Slide over to the drivers…

  • Intel Graphics
  • Intel HDA
  • Wifi/Ethernet
  • Et cetera

Slide over to the Apple Intel hardware…

  • Apple iMac
  • Apple MacBook Pro
  • SuperDrive (Internal/USB)

Now, spaghetti…

The video drivers - most of the iMac models used the ATI/Nvidia chips. Here, review 1080p and 1440p usage using the VESA/fail-safe driver method. Font scaling, changing resolutions, etc.

Nvidia 8800/9800/etc are not implemented for Haiku’s Nvidia driver.

ATI 2400/2600 possible hit-miss on some models. Possibly focus on ATI 2600 Pro setups for the older iMac models.

Newer iMacs use Intel Iris Pro/AMD Radeon 500-series. Focus on Intel/AMD graphics driver/accelerant updates.

Most of the iMacs use Intel HDA chips (or just focus on those models that do). Use something like “iMac” or profiles.

Best to have a clean single target for success than a bowl of baby kittens.
Don’t have too many models to address. Start with a selected control group.

In the case of Macs, it would be better to start with drivers with more documentation or source code references from other OS, leaving video drivers for last.

I had assumed that was ported from linux, but seems it was from fragonflybsd. Anyway, not sure I have a mac to test this with.

My order of priorities are pretty much:
get the thing booting on mac mini 2012, 2014 and macbook pro 13" 2018.
So far all of these devices fail.

Afterwards T2 and input devices and the video drivers. (except nvidia)

Aftttter that I would look at wifi, since this is also an area I’ve not worked in before : )

These Mini almost certainly require rEFInd and potentially dd’ing a partition with a Haiku image from within MacOS. I vaguely remember I did this with a 2013 model.
Re. The MacBook 2018, it can be booted (I’ve successfully done it with a 2017 MacBook Retina 12” with similar specs). The problem here is that keyboard, trackpad, touchbar and ambient light sensor are wired to the SPI bus…

rEFInd is not a technology. It might do some setup we don’t do. In that case we need to figure out what it is and do this ourselves. It’s not really ideal to ask users to install this after the fact.

For the macbook pro atleast rEFInd made no difference in my testing. (And installing it was hugely annoying as macos could not mount the esp partition of the thumb drive)

I have NOT managed to boot the macbook at all. It justs lands at a gray screen, either you are doing something different or there are different specs.
As far as I know the input devices also are not wired to a SPI bus, atleast not to the processor. But instead to the previously mentioned T2 chip, for which we need to write a bridge to interface with, so it will tell us the input events.

(Booting a linux has that exact problem too, boots up fine graphics wise but no input devices work. the t2linux wiki has links to a github repo to implement such a bridge driver)

for reference:
Screenshot 2024-11-02 at 15.08.59

rEFInd does many things but when it comes to booting Haiku it does two useful things:

  1. set the firmware to expect a specific version of MacOS X. In my case it is 10.9 which is supposed to rely on the firmware for the initialization of certain components (e.g. the graphic adapter). Later versions apparently take over the process and provide their own initialization.
  2. Initializes trackpad and keyboard to be used within rEFInd and with the boot menu. This applies to SPI and USB devices.

Now let’s come to the T2. I mistakenly remembered that T2 was introduced in 2019 not 2018, my bad.
I own only one Mac with T2, a 2019 15" Core i9 32GB (it’s my company laptop) where Secure Boot is enabled by default and can’t be turned off. Any chance you could try disabling it?

rEFind is able to boot aswell as linux. Sounds like secure boot is off? not sure how to check that on a macbook.

It’s hard to tell wether it’s a matter of configuration or anything related to the Haiku boot process as I’m not allowed to boot another OS on my MacBook.
Nevertheless, here you go:

Secure boot was already disabled, so no dice.

It was worth trying anyway…

Where is Haiku able to get to on your MacBook if started via rEFInd? Does it get to the bootloader menu?

I have gotten a gray screen in either case, no unlit icons

With the macmini 2012 (first one)
I can boot it with rEFInd now fine, without rEFInd I have gotten a KDL now, but it got through the boot… not sure if that is spuripus but I have the other macmini to test against. : )

Getting some graphic problems I can investigate (shifted output)

Something is deeply wrong there. I wish I had a T2 device to test it out. Have you tried to boot Linux with rEFInd on that Macbook? edt: I see you did.

I will bring this laptop to FOSDEM, if you are there you can try it if you want ; )

1 Like

Maybe I’ll be there, it’s a bit far away to know for sure. But I’ve just thought that one of my colleagues has T2 MacBook which he doesn’t use anymore because he’s now working on M2 laptop. I’ll check with him if the old one is available for testing purposes :slight_smile: