Long post, but some useful info how I got Haiku installed using EFI on native SSD.
For several years, the only way I got Haiku running on the MBP 2014 (11.3) was with USB2 flash devices / external USB2 hard disk over the Mac’s xHCI bus. A warm boot enabled sound (headphone jack only), video was VESA driver (1600x900x32, or 2880x1800x16 (odd), Broadcom 570 network (via thunderbolt adapter), no wireless. Other than temperamental xHCI bus (causing keyboard/mouse/USB disk to die randomly during heavy activity), the laptop was usable with Haiku. Booting into Haiku was via Mac boot selector, and only in BIOS mode. EFI boot via USB stick was 1 in 50 success rate (basically unusable), but legacy BIOS boot worked fine. The laptop had 4 partitions, EFI boot, OSX (latest), Bootcamp Win10 and a spare data partition (sharing due to encrypted volumes when dual booting)
Slight detour due to Ubuntu caused misery. You can skip next 3 paragraphs if you dont care.
So I decided to install Ubuntu 18.04 on USB3 flash drive, thinking I can carry the stick and plug it into any PC. The stupid installer decided to install GRUB on the Windows partition, with a redirect to the USB3 flash drive for the remainder of files. When the USB3 flash drive is disconnected, the laptop can no longer boot into Windows (since the 2nd part required by GRUB is missing). Agony. After many attempts trying to remove GRUB and get Windows 10 booting properly (including installing Refind), I gave up and decided to install Ubuntu 18.04 on the 4th partition (and reconfigure GRUB to use it for it’s remaining files, hence eliminate the USB3 flash device). Linux wasn’t that bad (I develop under Linux at work for embedded hardware). On the plus side, hardware accelerated nVidia GT750 drivers, working Broadcom 4360 wireless, working audio. Actually usable. On the negative side, CPU temperature at 95’C, and laptop CPU fan constantly blowing. Unusable.
In a battle to lower CPU temperatures, I updated to Ubuntu 18.10 (using official Ubuntu upgrade tool), and proprietary nVidia driver wouldn’t boot any more (due to X misconfiguration). Messing with grub command line parameters, booting into run level 3, uninstalling nVidia drivers, installing Noveou (spelling), booting into X, reinstalling nVidia proprietary driver, and finally I fixed my Ubuntu boot issues. Installed alternative display managers, but other than Gnome3.30, they all had major issues in dual monitor configurations with mismatched HiDPI. Still had high CPU temperature. Researching how to lower CPU temperature, disabling ACPI interrupts GPE16 and 17, installing lots of tools to run laptop always in low power battery mode, and slight progress, I dropped the CPU temperature down to 75’c idle, but the fan constantly would come on and off. Annoying, and I’m terrified that prolonged Linux use would cook the laptop, so Ubuntu must go.
Since Windows was kind of hosed, I decided to try to reinstall Windows (hopping to fix the Windows boot problem). I discovered that the 3rd partition had a MBR signature instead of GPT . Huh?!? The Ubuntu installer when it installed GRUB to the windows partition, it modified the signature to get GRUB loading. Some developer struggled to get GRUB loading via EFI on GPT, so they figured they’d convert the signature to MBR and get GRUB booting that way. Crazy. This is probably why I couldn’t fix Windows boot, since Windows will only boot from GPT disks using EFI. Disaster.
Back to installing Haiku.
In one final attempt, I decided to bite the bullet and install Haiku on the SSD (3rd partition, overwrite Windows). Using OSX boot volume selector, it couldn’t find any Haiku parition (and wouldn’t present BIOS boot option either, bummer). However Refind would present EFI Haiku as an option. OK, some progress. Initially none of the icons would light up (using Haiku EFI boot image). Playing with safe mode options and I finally found a working solution:
- Enable on screen debugging (slows down boot, avoids some timing related race condition)
- Disable on screen paging (well, no access to keyboard at this stage)
- fail safe video mode makes on difference.
And we boot into 2880x1800x32 desktop. Yay!!!. Haiku on SSD on MacBookPro 11.3 (late 2014 generation), 4+4 core i7 -4870HQ@2.5GHz, 16Gb RAM.
Interestingly, the only screen resolution available is 2880x1800x32 frame buffer mode (nVidia GT750M - sadly no Intel IRIS available). When I boot from USB2 hard disk in legacy BIOS mode, I get VESA and many screen resolutions (and suprisingly 2880x1800x16 is highest). So I’m stuck in HiDPI Haiku mode (kind of usable, apps which don’t respect system fonts need to be configured individually - including Terminal which should have respected system setting, but easily fixed.).
So there you have it - I was finally able to boot Haikux64 on the built in SSD using EFI boot by enabling on screen debugging and disabling on screen paging. Some people struggling to boot Haiku on newer systems may want to try these options and see the Desktop.
PS> over the weekend, I will remove Ubuntu 18.10 and try to install Windows 10 on the 4th partition (need it for some work tools when travelling).