Contribute
Register

[Guide] HP ProBook/EliteBook/Zbook using Clover UEFI hotpatch

RehabMan

Moderator
Joined
May 3, 2012
Messages
191,134
Motherboard
Intel DH67BL
CPU
Core i7-2600K
Graphics
Intel HD 3000
Mac
MacBook Air
Mobile Phone
iOS
Overview

The purpose of this guide is to provide a step-by-step guide to installing Mojave, High Sierra, Sierra, El Capitan, or Yosemite on the ProBook/EliteBook/Zbook equipped with Intel graphics.

Note: For Broadwell and Skylake hardware, you must install at least 10.11. Broadwell support in 10.10 is not stable (previous versions no Broadwell support). And Skylake support was only introduced in 10.11 (.?), and only stable enough for use in 10.11.4 or later.

I have both a ProBook 4530s, and ProBook 4540s and have been using the hotpatch technique that this guide enables for quite a while. The files and procedures here have been tested on other models, although they may still need tweaks.

Since the ProBook Installer is not being maintained anymore (and neither is the guide), this is meant as a replacement for the guide by nguyenmac: http://www.tonymacx86.com/el-capitan-laptop-guides/168236-guide-install-10-11-hp-elitebook-probook-others-clover-uefi.html


What you need

Compatible laptop:
- 6-series laptop (Sandy Bridge): HP Probook 4x30s, 6x60b, Elitebook 2x60p, 8x60p, 8x60w
- 7-series laptop (Ivy Bridge or Sandy Bridge): HP Probook 4x40s, 4x0 G0, 6x70b, Elitebook 8x70p, 2x70p, 9470m
- 8-series laptop (Haswell): HP Probook 3x0 G1, Probook 4x0 G1/G2, Elitebook 8x0 G1, ZBook G1, Folio 1040 G1
- 9-series laptop (Broadwell): HP Probook 4x0/6x0/8x0/ZBook G2
- 100-series laptop (Skylake): HP ProBook 4x0 G3 is experimental, but reported as working.
- 100-series laptop (Kabylake): HP ProBook 4x0 G4 is experimental, but reported as working. Note that the support in this guide for KabyLake assumes 10.12.6 or later. HP EliteBook 8x0 G4 support is new, not tested.
- 100-series laptop (Kabylake-R): HP ProBook 4x0 G5 is experimental, but also reported as working. Like Kabylake, Kabylake-R requires 10.12.6 or later.
- macOS or OS X downloaded from the Mac App Store
- 8GB USB stick
- compatible WiFi hardware
- BIOS updated to latest as available from hp.com

For HD3000 graphics equipped systems, it is recommended you have 8GB RAM installed. You may have glitches and other instability with only 4GB RAM.

Note: HD3000 not supported on Mojave (Apple removed it).

At the moment, laptops without Intel graphics are not supported. Although many of the procedures and techniques here may be applicable, these laptops require a different graphics configuration (config.plist changes, other kext choices, slightly different ACPI setup).

Note: This guide supports only those laptops with Synaptics PS2 trackpads. Other trackpads will be mouse emulation only and require special code in the model specific SSDT. Refer to SSDT-1020-G1-Broadwell.dsl for an example.


Compatible WiFi

Here is the list of recommended compatible wifi cards:
- HP Probook 4x30s: the laptop has whitelist BIOS, so only usable card is HP-branded Atheros AR5B195 (HP part# 593127-001). You can also use a rebranded AR5BHB92 (AR9280).
- HP Probook 6x60b/5330m, HP Elitebook 8x60p/2x60p: the laptop has whitelist BIOS, so only usable card is HP-branded Broadcom 43224HMS (582564-001/582564-002)
- For laptops with NGFF/M.2 WiFi slot: BCM94352Z or BCM94350ZAE (? not tested/not recommended) or BCM943602BAED (works but may require additional antenna leads to be installed)
- Other laptop:
WIFI ONLY: Atheros AR9280/9285, Broadcom 4322/43224 (better OS X feature support)
WIFI+BT: AR5B195 (not recommended), Broadcom 43225HMB/4352HMB (better OS X feature support)

Note: Atheros WiFi not supported on Mojave (Apple removed it).

Note: Some laptops covered by this guide have a built-in bluetooth controller and do not use the one present on the WiFi card. For those laptops you do not need a WiFi/bluetooth combination card since the bluetooth component on it will not be connected and you can use the onboard bluetooth controller instead (usually Broadcom). It is up to you to investigate properly to discover how your bluetooth hardware is configured.

Further information regarding OS X compatible WiFi is in the FAQ: http://www.tonymacx86.com/el-capitan-laptop-support/164990-faq-read-first-laptop-frequent-questions.html

This guide uses AirportBrcmFixup.kext to enable Broadcom WiFi. By default, it is set for US country code. To set for other country codes, read the README at the AirportBrcmFixup.kext project on github (google can help you find it).

For those laptops with half-mini PCIe, BCM94360HMB is also a good option, but you will likely need to route new/additional antennas as this card uses (3) smaller coax connectors than most half-mini PCIe WiFi cards. The advantage is that it is recognized natively and no 5ghz patch is needed (AirPort branding still provided by FakePCIID).

Note: USB WiFi is not recommended. The user interface is poor, and it causes instability, especially with sleep.


BIOS settings

To start, set BIOS to defaults.

Then insure:
- UEFI boot is enabled (hybrid/with CSM for best result)
- secure boot is disabled
- disable fast boot
- IGPU graphics memory set to 64mb, if available
- disable the serial port via BIOS option, if available
- disable "LAN/WLAN switching", if available
- disable "Extended Idle Power States" if you find it under "Power Management Options"
- disable "Wake on LAN" and "Wake on USB"
- disable Firewire/IEEE 1394, if your laptop has it
- for Skylake and KabyLake laptop, enable "Launch Hotkeys without Fn keypress"

Note: If you have a laptop with switchable graphics, leave it enabled. You can still use it on Windows, although the discrete card will be disabled when running OS X by the ACPI patches provided here. If you want to also disable it in Windows (via BIOS option), make sure you read about the DGPU option in your model specific SSDT (source is in SSDT-HACK.dsl), as in the scenario where the DGPU is disabled by BIOS, DGPU should be set to zero.


Preparing USB and initial Installation

Prior to installing OS X, it is a good idea to create an OEM recovery USB from Windows. If anything goes wrong and you want/need to get back to Windows, you can restore it via the USB. Use the utility provided by HP to accomplish this.

You can also leave Windows intact, but it can get tricky. Read here for more information: http://www.tonymacx86.com/multi-booting/133940-mavericks-windows-8-same-drive-without-erasing.html

This guide for creating USB and installing using Clover UEFI works well for this laptop: http://www.tonymacx86.com/el-capitan-laptop-support/148093-guide-booting-os-x-installer-laptops-clover.html

Special notes:

- Use the latest RehabMan build of Clover (link is provided in the guide)

- Definitely copy RealtekRTL8111.kext and IntelMausiEthernet.kext to Clover/kexts/Other as having network support during post-install is required (the rest of this guide depends on it). An alternative is to use AirportBrcmFixup.kext. This will enable WiFi, provided you have compatible WiFi hardware already installed.

- As per guide, if you have a 100-series chipset, don't forget about SATA-100-series-unsupported.kext.

- GenericUSBXHCI.kext is not necessary with most laptops covered by this guide since AppleUSBXCHI.kext appears to work well natively. The exception is those laptops with 6-series chipsets. For these laptops you should use a USB2 port and USB2 flash drive. There is no support in the BIOS for booting from the NEC/Renesas ports anyway.

- Also copy HPFanReset.efi to EFI/Clover/drivers64UEFI. HPFanReset.efi is available here: https://bitbucket.org/RehabMan/hp-probook-4x30s-fan-reset/downloads

- Use the 'createinstallmedia' approach. It works well, and there is little chance for pilot error. This method also gives you an OS X recovery partition.

- It is best to use a USB2 stick. USB3 on 6-series ProBook/EliteBook will have issues.

- Some laptops will need to use the alternate DropTables as mentioned in the guide. Likely required for Sandy Bridge models with turbo boost enabled CPUs (eg. Core i5-2xxx, Core i7-2xxx, but not Core i3-2xxx).


Post Installation

Install Clover UEFI as described in the guide linked by the previous section (post #2). After installing Clover, and configuring it correctly (config.plist, kexts, etc, just as you did for USB) you should be able to boot from the HDD/SSD. The configuration at this point should be exactly the same as USB. Don't forget both HFSPlus.efi and HPFanReset.efi.

But there are still many issues and devices that won't work correctly. For that, we need to implement power management, configure ACPI, provide a proper config.plist, and install the kexts that are required.

Since you have RealtekRTL8111.kext/IntelMausiEthernet.kext already injected by Clover, you should have internet access simply by using an Ethernet cable to your router. Plug it in and make sure you have internet access before continuing. Or if you're using WiFi, you can connect to your WiFi router before continuing.

Installation of the tools and patching is easy provided the scripts and tools at the ProBook repository: https://github.com/RehabMan/HP-ProBook-4x30s-DSDT-Patch

To start, the developer tools must be installed. Run Terminal, and type:

Code:
xcode-select --install
You will be prompted to install the developer tools. Since you have internet working, you can choose to have it download and install them automatically. Do that before continuing.

After the developer tools are installed, we need to get a couple of projects from my github.

In Terminal:
Code:
mkdir ~/Projects
cd ~/Projects
git clone https://github.com/RehabMan/HP-ProBook-4x30s-DSDT-Patch probook.git
After cloning the github project, it is time to install some more tools and all the kexts that are required...

In Terminal:
Code:
cd ~/Projects/probook.git
./download.sh
./install_downloads.sh
The download.sh script will automatically gather the latest version of all tools (patchmatic, iasl, MaciASL) and all the kexts (FakeSMC.kext, WhateverGreen.kext, Lilu.kext, ACPIBatteryManager.kext, etc) from bitbucket and github. The install_downloads.sh will automatically install them to the proper locations.

Since some of these kexts rely on properly implemented ACPI, do not reboot until you have a proper config.plist and ACPI files in place (as described later in this guide).


Power Management

Be aware that hibernation (suspend to disk or S4 sleep) is not supported on hackintosh.

You should disable it:
Code:
sudo pmset -a hibernatemode 0
sudo rm /var/vm/sleepimage
sudo mkdir /var/vm/sleepimage
Always check your hibernatemode after updates and disable it. System updates tend to re-enable it, although the trick above (making sleepimage a directory) tends to help.

If you have a CPU that is Haswell or later, skip the part that follows for creating SSDT.aml from ssdtPRgen.sh. I repeat... DO NOT generate SSDT.aml for these later CPUs. If you do, you may break the ACPI setup due to duplicate symbols. The power management injections are provided in the model specific SSDT (later in ACPI configuration).

If you have an older CPU (Sandy Bridge or Ivy Bridge), use the ssdtPRGen.sh script by Pike R. Alpha: https://github.com/Piker-Alpha/ssdtPRGen.sh

Instructions for using it are provided in the README.

The generated SSDT.aml should be placed on the EFI partition at /EFI/Clover/ACPI/patched/SSDT.aml.

Based on the current instructions at the README, what follows is a synopsis...

To prepare, you only need to do the first two commands:
Code:
cd ~/Projects/probook.git
curl --fail -o ./ssdtPRGen.sh https://raw.githubusercontent.com/Piker-Alpha/ssdtPRGen.sh/master/ssdtPRGen.sh
chmod +x ./ssdtPRGen.sh
The beta branch sometimes has corrections that the master branch may not:
Code:
cd ~
curl --fail -o ./ssdtPRGen.sh https://raw.githubusercontent.com/Piker-Alpha/ssdtPRGen.sh/Beta/ssdtPRGen.sh
chmod +x ./ssdtPRGen.sh
Then you can run the script:
Code:
./ssdtPRGen.sh
Note: For some Ivy Bridge laptops(for example, HP EliteBook 9470M), with 10.12, you must use the beta branch and the '-c 2' or '-c 3' flag (older versions used '-w' instead of '-c'). I had to use './ssdtPRGen.sh -c 3' for my ProBook 4540s. In fact, I think recent changes to this script to automatically adjust this are flawed.

Note regarding XCPM on Ivy: For certain troublesome Ivy Bridge CPUs, you may need to use config.plist/KernelAndKextPatches/KernelXCPM=true. If you choose to use this option, you can delete ACPI/patched/SSDT.aml and set config.plist/ACPI/SSDT/Generate/PluginType=true.

When it asks if you want to copy to /Extra just respond 'n'. Same for opening ssdt.dsl... respond 'n'.

The results are at ~/Library/ssdtPRGen/SSDT.aml.

Note: For certain Ivy Bridge CPUs (if you find your pstates stuck at x8), you may need to use the "-w 3" flag:
Code:
./ssdtPRGen.sh -w 3
Copy that file to EFI partition, /EFI/Clover/ACPI/patched/SSDT.aml

Code:
cd ~/Projects/probook.git
./mount_efi.sh
cp ~/Library/ssdtPRGen/ssdt.aml /Volumes/EFI/EFI/Clover/ACPI/patched/SSDT.aml
Note: It is common with certain Ivy computers with ULV CPUs and MacBookAir5,x SMBIOS to need kernel flag -xcpm. If you get a panic upon boot, add the -xcpm kernel flag to config.plist/Boot/Arguments.

Note: Pay attention to the output of mount_efi.sh. It prints the mount path of EFI, which may not always be /Volumes/EFI.


ACPI configuration

To finish the setup, we need a correctly patched DSDT/SSDT.

With the current project, no patched DSDT/SSDTs are used. Instead, this guide uses Clover hotpatches and a set of "add-on" SSDTs. The advantage of hotpatching is that hardware and BIOS can be changed without re-extract/re-patch. It is also a bit easier to setup as the normal extract/disassemble/patch/compile process is not needed (that process was formerly automated via the ProBook Installer and patchmatic).

In Terminal:
Code:
cd ~/Projects/probook.git
./build.sh
The build.sh script causes the "add-on" SSDT files to be compiled (with iasl), the results placed in ./build. It also builds the system specific plist files to be used later for Clover's config.plist.

You can see what is there:
Code:
cd ~/Projects/probook.git
ls build
The files that need to be installed depend on personal preferences and your laptop model. The (appropriate set of) SSDTs in ./build must be installed to the EFI partiton at EFI/Clover/ACPI/patched. To insure you have the correct files installed, you should use the install_acpi.sh script as described later in this section.

To mount your EFI partition, use the mount_efi.sh shell script from the project:
Code:
cd ~/Projects/probook.git
./mount_efi.sh
If there is not a USB customization SSDT, do not use one for another model. One can be created if you provide the materials listed in "USB customization".

If there is not a system specific SSDT, you can try to use one that is close, but it is better if you provide the materials requested in "Unsupported laptops", so a correct SSDT can be created.

There are a number of install scripts provided in install_acpi.sh to make it easier to accomplish.

For example, my 4530s with 1366x768 display:
Code:
./install_acpi.sh install_4x30
Or my 4540s with 1080p display:
Code:
./install_acpi.sh install_4x40_hires
You can list the current install scripts available with:
Code:
./install_acpi.sh help
All of the scripts default to copying SSDT-FAN-READ.aml, which provides BIOS fan control and readings only. If you want a different fan patch, you can specify it as the second argument to install_acpi.sh. The possible values are READ, Q, RM, ORIG, and GRAP.

On my 4540s, I like to use the RM variant:
Code:
./install_acpi.sh install_4x40s_hires RM
If your model does not have an install script it is because the model is not directly supported. See "Unsupported laptops" later in this guide.


Final config.plist

Up to now, you've been using the same config.plist we were using for installation. After all the ACPI files are in place (previous two steps), you're ready to use the final config.plist from the probook repo.

First, mount the EFI partition:
Code:
cd ~/Projects/probook.git
./mount_efi.sh
The config.plist you use from the project depends on your hardware. All plist files are located in the ./config folder. You can see what is there:
Code:
cd ~/Projects/probook.git
ls config
As I write this, current content:
Code:
config_1020_G1_Broadwell.plist       config_4x0_G4_Kabylake.plist       config_8x0_G4_Kabylake.plist
config_1030_G1_Skylake.plist       config_4x0_G5_Kabylake-R.plist       config_8x60p.plist
config_1040_G1_Haswell.plist       config_4x30.plist           config_8x70p.plist
config_1040_G3_Skylake.plist       config_4x40.plist           config_9x70m.plist
config_1050_G1_KabyLake-R.plist       config_5x30m.plist           config_9x80m.plist
config_2x60p.plist           config_6x0_G1_Haswell.plist       config_ZBook_G0.plist
config_2x70p.plist           config_6x0_G2_Skylake.plist       config_ZBook_G1_Haswell.plist
config_3x0_G1.plist           config_6x60p.plist           config_ZBook_G2_Broadwell.plist
config_4x0_G0.plist           config_6x70p.plist           config_ZBook_G2_Haswell.plist
config_4x0_G1_Haswell.plist       config_8x0_G1_Haswell.plist       config_ZBook_G2_Haswell_ALC280.plist
config_4x0_G1_Ivy.plist           config_8x0_G1_Ivy.plist           config_ZBook_G3_Skylake.plist
config_4x0_G2_Broadwell.plist       config_8x0_G2_Broadwell.plist       readme.txt
config_4x0_G2_Haswell.plist       config_8x0_G2_Haswell.plist
config_4x0_G3_Skylake.plist       config_8x0_G3_Skylake.plist
Copy the appropriate plist for your hardware to EFI/Clover/config.plist on your EFI partition.

Note: If you needed to use the alternate DropTables during installation, you may also need it in your final config.plist.

For example, my ProBook 4530s:
Code:
cd ~/Projects/probook.git
cp ./config/config_4x30.plist /Volumes/EFI/EFI/Clover/config.plist
You could also copy the file using Finder.

After copying the config.plist from the repo to EFI/Clover/config.plist, you should customize the SMBIOS so you have a unique serial. You can use Clover Configurator to do this (use google to find/download it). DO NOT use Clover Configurator to edit your actual config.plist. Instead edit a "dummy" config.plist to create the SMBIOS data and then use copy/paste with a plist editor (I use Xcode) to copy the SMBIOS section into my active config.plist. Clover Configurator is too buggy and cannot be trusted with edits to your real config.plist. Make sure you use the same SMBIOS model as the original plist used.

Repeat: DO NOT edit your config.plist with Clover Configurator. Clover Configurator will erase important settings from the config.plist, and as a result, it will not work.


Do not stop reading

Although most of the post-install tasks are done, continue to read this guide. It it has important information you should know about.

In the case of a problem, don't bother asking about with without all files requested in "Problem Reporting".


Updates to the patch repositories

From time to time, updates may become available to the project repository. In the event of such updates, you may want to update your copies, and re-patch DSDT/SSDT with the updates.

Since you're using git, it is easy...

In Terminal:
Code:
cd ~/Projects/probook.git
git stash
git pull
./download.sh
./install_downloads.sh
./build.sh
In the case any of the SSDTs are updated, you will need to copy them to your EFI partition (with install_acpi.sh, as when you originally installed). Same goes for updates to the plist files. It is a good idea to update to the latest files before contemplating applying major updates to the system.


What works

I have tested the following features:
- UEFI booting via Clover
- built-in keyboard (with special function keys)
- built-in trackpad (basic gestures)
- HDMI video/audio with hotplug (not on Kaby Lake)
- AirPlay mirroring to AppleTV
- WiFi, provided you have compatible hardware
- Bluetooth (with handoff) using BCM94352HMB
- native USB3 with AppleUSBXHCI (USB2 works also) (except 10.11 with 6-series laptops with NEC/Renesas)
- native audio with AppleHDA, including headphone
- built-in mic
- built-in camera (if you are lucky)
- native power management
- battery status
- backlight controls with smooth transitions, save/restore across restart
- accelerated graphics
- wired Ethernet
- Mac App Store working
- Messages/FaceTime (working on 10.10.3 even though I didn't run through the guide: http://www.tonymacx86.com/general-help/110471-how-fix-imessage.html)
- laptops with JMicron card reader work (ProBook/EliteBook 6-series and 7-series laptops)


Not tested/not working

The following features have issues, or have not been tested:
- you may notice the screen flicker on certain websites/apps with gray gradients
- card reader is not working on some models (would require significant development effort, not important to me)


Known Problems

Fade to black after initial installation: Press your brightness up key.

Find My Mac/Locking: Find My Mac does not work properly. Don't lock your mac because it's difficult (or impossible) to unlock again.

Slow WiFi after sleep/wake cycle: Disable "Wake for network access" in SysPrefs->Energy Saver.

Audio: If your laptop has a "combo jack" (combo headphones, external mic), the external mic will not work. Note: This is except for laptops with ALC280. The needed XML is in the project to enable full headset switching (4 pin) for ALC280 only equipped laptops such as the 8x0 G2, ZBook G2. Tested on the EliteBook 850 G2 Broadwell.

Audio: If your laptop has codec CX20724, there are two possible layout-id values supported. The default is 13, but you can change it to 3 if 13 doesn't work. You will find the layout-id setting in your model specific SSDT.

WiFi not working: Please realize you must install compatible hardware. Most of these laptops do not come with supported WiFi cards. If you have installed a compatible WiFi card, test it on Windows before concluding there is a problem with OS X. Finally, make sure the device is powered on. There is button on your keyboard deck for WiFi radio power. The LED often does not reflect the true state of power to the device, so don't mash it like a maniac. Press it once, and wait for the networks to populate... it is not instant. If it doesn't work, press again, and again... wait for the networks. If it is not working, check antenna connections and test on Windows.

Camera after sleep: On some laptops (4540s, others?) the Camera may intermittently not be detected after sleep (seems longer sleeps more than shorter sleeps). It is alleviated somewhat by portType=4 for the port associated with the camera, but still may happen occasionally. Workaround: sleep the laptop again, wake.

Another work around for camera after sleep was suggested by @kusakata: http://www.tonymacx86.com/threads/strange-powernap-smbios-board-id-airport-behavior.198094/#post-1290781:
Also, for the webcam issues after sleep, mentioned in the post (I didn't have these in Yosemite, but do in El cap), I found a solution that doesn't require resleeping the laptop:
Code:
sudo killall VDCAssistant
sudo killall AppleCameraAssistant
Slow boot and constant fsck with certain SSDs: If you have fsck always running on boot, disable TRIM. The final config.plist used in this guide always enables the TRIM patch. You can easily disable it by setting Disabled=true. You will notice your boot is extremely slow and you will notice the fsck in verbose boot or system.log. I have this issue with my desktop and Mushkin SSDs, and has been reported here with Intel SSDs. I have no issue with Crucial (M4) or Samsung (EVO).

Slow boot with APFS: This also leads to battery status being removed from the menu bar, and SysPrefs->Trackpad not showing the prefpane. With certain SSDs, TRIM patch, plus APFS leads to this problem. Solution: Disable the TRIM patch in config.plist or install on HFS+J instead of APFS.

Slow boot causing battery status issues on APFS and 10.13+: If you have installed APFS (you have SSD), and the laptop seems to boot slower than expected, battery status is affected by this slow boot. Disable the TRIM patch in your config.plist as TRIM often has an issue with APFS on certain hardware.

NVRAM in Skylake models: As is common with Skylake, native NVRAM via UEFI services often does not work. Typically, you will have working NVRAM with AptioMemoryFix*.efi instead of OsxAptioFix*.efi.

USB3 on 6-series laptops with NEC/Renasas XHCI controller: This controller is supported with patches on 10.10.x and earlier. For 10.11.x and later, you can use GenericUSBXHCI.kext for partial support (not very reliable). Since there are detection issues with that kext, it helps to plug the device in prior to booting. For 10.11.x and later, 6-series laptops make a poor choice if you need reliable USB3.

"Automatic restart" after Apple->Shutdown on certain laptops: This has been fixed for Skylake and KabyLake laptops supported by this guide. If the fix is needed for others, it is easy to add.


USB customization

There are several USB SSDT includes (build/SSDT-USB*.dsl) provided for a few models. But you will notice that not all models are accounted for. Since USBInjectAll.kext is being used, all ports will be injected for models which lack a custom USB SSDT, but it is optimal to only inject the ports needed.

To assist in creating a new USB SSDT, the following procedure should be followed:

- enable the port limit patch if necessary (XHC 8086:8xxx and 100-series XHC). You will find the required port limit patch in confg_patches.plist int the USBInjectAll.kext github project.
- run IORegistryExplorer v2.1 (see "Problem Reporting" below for link)
- plug a USB3 device into each USB port (does not need to be all ports simultaneously)
- plug a USB2 device into each USB port (does not need to be all ports simultaneously)
- go back to the running instance of IORegistryExplorer and save the resulting ioreg file

Reply with an a note regarding your laptop hardware details and the resulting ioreg file. From the data in the ioreg a custom SSDT for your USB ports can be created.

The same procedure can be used if your USB ports/devices are not working (or some of them not working) even if you have a custom USB SSDT. Just boot with kernel flag -uia_ignore_rmcf so that the current custom configuration (for USBInjectAll.kext) is not in effect.

Background information is here: https://www.tonymacx86.com/threads/guide-creating-a-custom-ssdt-for-usbinjectall-kext.211311/


Other post-install tasks

Trackpad: Be sure to visit the options in SysPrefs->Trackpad and change them to your liking.

Trackpad three finger support: You can configure three finger swipes in SysPrefs->Keyboard->Shortcuts. Instead of pressing keys for a given function, do the three finger swipe (up/down/left/right).

Disable trackpad when using an external mouse: It allows you to disable the built-in trackpad when a USB mouse is plugged in (or bluetooth mouse in use). Just check the box in SysPrefs->Accessibility->"Mouse & Trackpad".

Bluetooth: If you get the Bluetooth Setup Assistant popup, go to SysPrefs->Bluetooth->Advanced, uncheck the boxes.


System updates


First step should be to update to the latest repository as described in "Updates to the patch repositories".

Also update Clover to the latest using the Clover installer.

Also update config.plist at EFI/Clover/config.plist to the latest content from the repo. Be sure to retain your own SMBIOS data at config.plist/SMBIOS.

Now you can update via the App Store. Just boot the installer/updater upon restart.

After updating, run ./install_downloads.sh again:
Code:
cd ~/Projects/probook.git
./install_downloads.sh
The reason for running ./install_downloads.sh both before and after the update is because the kexts installed by install_downloads.sh may depend on the version of OS X currently running.


Updating to High Sierra

As you probably already know, High Sierra (and later) has a new file system called APFS. Boot drives on SSDs will automatically be converted to APFS if you start the High Sierra installer in the default way (eg. running /Applications/Install macOS High Sierra.app).


To transition from PBI-CE based install

If you used the ProBook Installer-Clover Edition (PBI-CE), you can transition to this hotpatch setup:

- remove all files in EFI/Clover/ACPI/patched except for SSDT.aml (it came from ssdtPRGen.sh)
- then follow all instructions for post-install in the guide (ACPI/patched, config.plist)
- you can skip the SSDT.aml part about "Power Management" unless you accidentally deleted SSDT.aml
- ./downloads.sh and ./install_downloads.sh can be used to update your kexts

If you have a "mixed" system (HD3000 on 7-series), the PBI-CE installed MacBookPro9,2 SMBIOS and two kexts, either AppleGraphicsPowerManagement_MacBookPro9_2.kext and ACPI_SMC_PlatformPlugin_MacBookPro9_2.kext or AppleGraphicsPowerManagement_MacBookPro10_1.kext and ACPI_SMC_PlatformPlugin_MacBookPro10_1.kext. With the new method for USB patching, these hacks are not needed. You should use an SMBIOS appropriate for your CPU (MacBookPro8,2) and delete these kexts.


Unsupported laptops

If you think your laptop might be similar to the ones listed as supported, but needs only small tweaks, please provide the following information:

- native DSDT/SSDT files extracted via Clover F4 (ACPI/origin)
- audio codec dump from Linux
- full hardware details (CPU, chipset, graphics device, screen resolution, etc)
- output from 'lspci -nn' in Linux Terminal


Other Notes

This guide (and recent PBI-CE) does not install the FakeSMC sensor plugins. They are inefficient and waste CPU cycles even when HwMonitor is not running. As a result, various CPU status, heat sink temperatures, fan speeds will not show in HwMonitor.

You are welcome to install the plugins manually: https://github.com/RehabMan/OS-X-FakeSMC-kozlek/

After you install them manually, the ./download.sh and ./install_downloads.sh scripts will continue to update them (if FakeSMC is updated) even though those scripts won't install them initially.


Problem reporting

All problem reports must be accompanied by a detailed description of the problem and various files that allow your progress to be accounted for.

Read FAQ, "Problem Reporting". Carefully. Attach all requested files/output.
https://www.tonymacx86.com/threads/faq-read-first-laptop-frequent-questions.164990/
Use the gen_debug.sh tool mentioned in the FAQ, that way it is less likely you'll omit something.
 
Last edited:
Joined
Jul 21, 2017
Messages
37
Motherboard
HP EliteBook 8770W
CPU
i7-3820QM
Graphics
K4000M, 1920x1080
Mac
MacBook Pro
Mobile Phone
iOS
Fist at me.
 
Joined
Oct 11, 2015
Messages
189
Motherboard
Gigabyte Z270X-Gaming SOC
CPU
I7-7700K
Graphics
2x HD 7870
Mobile Phone
iOS
have you fixed ACPI Battery Manager for my elitebook 8470p ?? I mentioned this problem on previous thread
I Re-Upload it

Thank you
:)
 

Attachments

RehabMan

Moderator
Joined
May 3, 2012
Messages
191,134
Motherboard
Intel DH67BL
CPU
Core i7-2600K
Graphics
Intel HD 3000
Mac
MacBook Air
Mobile Phone
iOS
have you fixed ACPI Battery Manager for my elitebook 8470p ?? I mentioned this problem on previous thread
I Re-Upload it

Thank you
:)
I uploaded a new version to bitbucket/github (only sources, pre-built kext will be uploaded tomorrow) that should fix the crash you had.

But last I checked your files (the files you just attached are much too large), you had an invalid ACPI/config.plist setup.
Follow the guide in post #1.
 
Last edited:
Joined
Sep 19, 2012
Messages
713
CPU
i3
Trying to get 10.13.6 working then saw the guide change to 10.14.x, is 10.14.x stable for daily noobs hackintosh use?

or until enough security updates and bugs have been patched by apple, wait for 10.14.6?

or stay with 10.13.6 and supplementary updates.

thanks


Overview

The purpose of this guide is to provide a step-by-step guide to installing Mojave, High Sierra, Sierra, El Capitan, or Yosemite on the ProBook/EliteBook/Zbook equipped with Intel graphics..
 
Joined
Mar 26, 2014
Messages
89
Motherboard
(Clover) HP Probook 4540s BIOS F.61
CPU
i5-3230m
Graphics
HD 7650m / HD 4000
Mac
MacBook Pro
Mobile Phone
iOS
Note: The current project uses AppleALC.kext. And due to a bug in AppleALC.kext it will not work for the 4x40 series laptops. If you have one of those laptops (with IDT 76d9 codec), you will need to install the special version of AppleALC.kext attached to post#1. This requirement will go away when official AppleALC.kext is built and available with my fix.
Where is the AppleALC kext? my 4x40s audio is broken.

i found
AppleHDA_ProBook.kext
AppleHDAHCD_ProBook.kext
which one is it and install only on clover or /S/L/E or both ?
 
Last edited:
Joined
Mar 11, 2011
Messages
13
Motherboard
HP Elitebook 810 G3
CPU
I7-5600u
Graphics
HD5500, 1366x768
Mac
MacBook Air, Mac mini
I have a HP Elitebook 810 G3
HD 5500
i7-5600U

Everything works except Audio and Battery bar.
I have uploaded my audio DUMP and original and patched DSDT.
Please can you find the correct patch for battery.

It is the same as the Probooks. I also have BAT0, BAT1 and notify BAT0 BAT1 but the Probook patch does not work. Mazbe because there is no BATC.

Please fix the battery and maybe audio for the Elitebook G3 810.

I have patched shutdown fix 2 and brightness.
 

Attachments

RehabMan

Moderator
Joined
May 3, 2012
Messages
191,134
Motherboard
Intel DH67BL
CPU
Core i7-2600K
Graphics
Intel HD 3000
Mac
MacBook Air
Mobile Phone
iOS
Trying to get 10.13.6 working then saw the guide change to 10.14.x, is 10.14.x stable for daily noobs hackintosh use?

or until enough security updates and bugs have been patched by apple, wait for 10.14.6?

or stay with 10.13.6 and supplementary updates.

thanks
Read post #1 and try it.
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
191,134
Motherboard
Intel DH67BL
CPU
Core i7-2600K
Graphics
Intel HD 3000
Mac
MacBook Air
Mobile Phone
iOS
Where is the AppleALC kext? my 4x40s audio is broken.

i found
AppleHDA_ProBook.kext
AppleHDAHCD_ProBook.kext
which one is it and install only on clover or /S/L/E or both ?
Forgot to remove it from the High Sierra guides post and attach to this one.
It is there now (attached to post #1 here).
 
Top