Configuration

Preparation

Xcode

N/A

IORegistryExplorer

Sign in to the Apple Developer site using your Apple ID credentials. Once logged in, look for the most relatable version of the Additional Tools for Xcode and download it.

The download will mount itself in Finder as any .dmg file would, look for the IORegistryExplorer and move it to your /Applications directory.

MaciASL

Download the latest version of the MaciASL compiler. Make sure to set the compiler to version 6.x of ACPI.

MaciASL
Compiles .dsl files into .aml files, required for ACPI patches.
MaciASL
Compiler Options
ACPI 4.0
ACPI 6.x

AppleIntelInfo

N/A

Clover Configurator

Download the Clover Configurator application and place it in your /Applications directory.

Clover Configurator
The software that allows us to easily configure our EFI partition

Kext Management

Launch Terminal and execute the following command to create a .bashrc file within the home directory.

Enter edit mode by pressing the key, and then paste the following snippet;

Save and exit by first exiting out of edit mode by pressing . Once out of edit mode, type :wq. As soon as you've exited the vim editor, run the following command to initialise our new bash functions.

Generic Patches

Clover Configuration

Apply the following settings to your /EFI/Clover/config.plist file;

Clover Configurator
Arguments
Verbose (-v)
npci=0x2000
kext-dev-mode=1
dart=0
Miscellaneous
Default Boot Volume:
lpartition
XMPDetection: Yes
Debug
Scan
Auto: Yes
ROM: UseMacAddr0
BooterConfig: 0x28
CsrActiveConfig: 0x3E7
System Definition: MacPro6,1
SmUUID: Run uuidgen in Terminal
Custom UUID:
Inject Kexts: Yes
[Hard Drive] /EFI/Clover/config.plist

Driver Installation

Download the following items and place them within the /EFI/Clover/drivers64UEFI directory.

HFSPlus-64.efi
Support for the HFS+ filesystem.
NTFS-64.efi
Support for the NTFS filesystem.
OsxAptioFix2Drv-free2000.efi
Fixes memory issues, and releases the first 2 GB for Rampage V Extreme motherboards.

Kext Installation

Download the following items and place them within the ~/Downloads directory.

FakePCIID.kext
Enables Fake PCI ID spoofing, requires additional kexts for various reasons.
VoodooTSCSync.kext
Synchronizes the TSC for the LGA2011 CPU socket, and the 6 core version is specifically for X99 motherboards.
FakeSMC.kext & C/O
Emulates SMC in order to monitor hardware through HWMonitor.

Launch the Terminal and execute the following command to install the kexts, remember to change the path relative to your kexts.

Finally, and optionally, move the HWMonitor.app into your /Applications directory.

Injecting USB

Clover Configuration

Apply the following settings to your /EFI/Clover/config.plist file in order to properly inject USB into your system;

Clover Configurator
DSDT Patches
Rename XHCI to XHC 58484349 5848435F
Rename EHC1 to EH01 45484331 45483031
Rename EHC2 to EH02 45484332 45483032
USB
Inject
Add ClockID
FixOwnership
HighCurrent
KextsToPatch
com.apple.driver.usb.AppleUSBXHCI 837D880F0F83A7040000 837D880F909090909090
[Hard Drive] /EFI/Clover/config.plist

Kext Installation

Download the following item and place it within the ~/Downloads directory.

USBInjectAll.kext
USB Port injector for macOS Sierra and higher.

Launch the Terminal and execute the following command to install the kext, remember to change the path relative to your kext.


Additional kexts for x99 motherboards

Download the following item and place it within the ~/Downloads directory.

XHCI-x99-injector.kext
x99 USB Port injector for macOS Sierra and higher. Requires USBInjectAll.kext.

Launch the Terminal and execute the following command to install the kext, remember to change the path relative to your kext.


Rampage V Extreme and Phanteks P400S Port Guides

These values have been picked from IORegistryExplorer by plugging & unplugging all available USB ports on the respective hardware. A reference guide may be found here.

Rampage V Extreme
1
2
3
4
5
6
7
8
9
10
11
12
    Phanteks P400S
    1
    2

      Injecting Audio

      Clover Configuration

      Apply the following settings to your /EFI/Clover/config.plist file in order to properly inject audio into your system;

      Clover Configurator
      DSDT Patches
      Rename AZLA to HDEF 414C5A41 48444546
      Audio
      Inject: 1
      [Hard Drive] /EFI/Clover/config.plist

      Kext Installation

      Download the following item and place it within the ~/Downloads directory.

      VoodooHDA.kext
      Open source audio driver for devices compliant with Intel High Definition Audio.

      Launch the Terminal and execute the following command to install the kext, remember to change the path relative to your kext.

      Injecting Internet

      Kext Installation

      Download the following items and place them within the ~/Downloads directory.

      AppleIntelE1000e.kext
      Ethernet driver.
      FakePCIID_Broadcom_WiFi.kext
      Broadcom WiFi driver.

      Launch the Terminal and execute the following command to install the kexts, remember to change the path relative to your kexts.

      Injecting Bluetooth

      Kext Installation

      Download the following items and place them within the ~/Downloads directory.

      BrcmFirmwareRepo.kext
      Bluetooth driver.
      BrcmPatchRAM2.kext
      Driver which applies PatchRAM updates for Broadcom RAMUSB based devices.

      Launch the Terminal and execute the following command to install the kexts, remember to change the path relative to your kexts.

      Injecting Graphics

      Clover Configuration

      Apply the following settings to your /EFI/Clover/config.plist file in order to properly inject the NVIDIA drivers into your system;

      Clover Configurator
      NvidiaWeb
      [Hard Drive] /EFI/Clover/config.plist

      NVIDIA Web Drivers

      Our safest bet is to rely on the nVidia Update repository.

      Launch the Terminal and execute the following command;

      NVIDIA Cuda Drivers

      Download the latest

      NVIDIA Cuda Drivers
      and run the installer.

      Bootloader

      In order to prevent resolution flickering between the bootloader and the login window, as well as possible "no signal" issues with multiple monitors, we must make a few adjustments to our setup.

      For any "no signal" issues with DisplayPort connections, try moving the connections around if there are free DisplayPort slots on your graphics card.

      Clover Configurator
      KextsToPatch
      AppleGraphicsDevicePolicy 626F6172642D6964 626f6172642d6978
      Load VBios
      [Hard Drive] /EFI/Clover/config.plist

      When these settings are applied, you'll want to make sure that the CsmVideoDxe-64.efi driver isn't installed, as well as disabling CSM in the UEFI.

      NVMe Drives

      As of High Sierra, macOS now supports NVMe natively out of the box. It may however interpret it as an external drive regardless of whether it is internal or external.

      In order to mitigate this, launch

      Clover Configurator
      , load the /EFI/Clover/config.plist file and apply the following patch;

      Clover Configurator
      KextsToPatch
      com.apple.driver.usb.AppleUSBXHCIPCI 837D880F0F83A7040000 837D880F909090909090
      [Hard Drive] /EFI/Clover/config.plist

      If the above kext patch doesn't work, we may instead create a custom ACPI patch. Launch IORegistryExplorer and search for nvme. In the dropdown field just below the search bar, you should see the full path to the NVMe controller.

      IORegistryExplorer
      Search: nvme
      IOService:/AppleACPIPlatformExpert/
      lPCI0
      @0/AppleACPIPCI/
      lBR1B
      @0/IOPP/
      lH000
      @0/IONVMeController
      The numbers behind the @-symbols do not make a difference.

      Launch

      MaciASL
      and press to create a blank canvas. Paste the code snippet below, and Save As using the ACPI Machine Language Binary format (.aml).

      Place the newly created .aml file within the /EFI/Clover/ACPI/patches directory, so as you have /EFI/Clover/ACPI/patches/SSDT-NVMe-extern-icon-patch.aml.

      CPU Power Management

      Intel P & C States

      Launch

      Clover Configurator
      , mount your hard drive's EFI partition and load the /EFI/Clover/config.plist file. Apply the following adjustments, save, and reboot the computer.

      Clover Configurator
      Smart UPS
      SSDT / Generate Options
      PluginType
      Frequency MHz:
      l4200
      Type: 0x0a01
      KernelXCPM
      FakeCPUID: 0x0306F2
      KernelToPatch
      xcpm_cpuid_set_info 723CD077500FB6C0 6F3CD077500FB6C0
      xcpm_bootstrap 89D804C43C227722 89D804C13C227722
      [Hard Drive] /EFI/Clover/config.plist

      Once your computer is back up and running, launch the Terminal and run the folliwng command;

      If everything works as expected, you should see a 1 being returned.

      If you're using the MacPro6,1 system definition, download

      freqVectorsEdit.sh
      and run the following command in the Terminal;

      Follow the on-screen instructions and select the number representing iMac15,1 when asked for a donor file. Reboot when prompted.

      Now, download

      ssdtPRGen.sh
      and run the following command in the Terminal;

      When the above command has finished, navigate over to ~/Library/ssdtPRGen and copy the ssdt.aml file into the /EFI/Clover/ACPI/patches directory of your hard drive's EFI partition. Rename it to SSDT-XCPM.aml. Again, reboot your computer.

      Lastly, it's time to run a few tests to make sure everything went well.

      Should this fail at some stage, please refer to this guide.

      Intel SpeedStep Technology

      Verify that Enhanced Intel SpeedStep Technology (EIST) is enabled in your BIOS. Please note that enabling EIST breaks any hope of sleep/wake functionality.

      PMDrvr.kext
      Enables Enhanced Intel SpeedStep Technology, Haswell-E version.

      You must also make the following changes to the System Preferences.

      System Preferences
      Prevent computer from sleeping automatically when the display is off.
      Put hard disks to sleep when possible
      Wake for network access
      Enable Power Nap

      Launch Terminal and run the following command;