Jump to content

[Guide] Install macOS Sierra 10.12.5 on GA-Z170X-Gaming 5

* * * * * 4 votes Skylake GA-Z170X-Gaming 5 6700K macOS Sierra Z170X

  • Please log in to reply
274 replies to this topic

#1
cyberdevs

cyberdevs

    InsanelyMac Deity

  • Donators
  • 2,399 posts
  • Gender:Male

Installing macOS® Sierra® on Gigabyte GA-Z170X-Gaming 5 rev 1.0

Intel® Core i7 6700K

nVidia® Graphics Maxwell® or Pascal®

 

 

 

Disclaimer:

 

This guide will assume that you know what you are doing and also assumes that you have already made a backup of your data before making any changes to your hardware or software. If you have not made a backup STOP HERE! and create one.

 

I will not be held responsible for any data loss or any damage you might cause to your computer in the process of installing macOS® on your computer.

 

By following this guide, you acknowledge that installing Mac OS X® and macOS® on any hardware that is not produced by Apple® is illegal and you will be responsible if you break any laws.

All the trademarks and copy rights belong to their respective owners.

 

This guide is only for your personal use and your information, therefore if you break any laws by using this manual you will be responsible for it not me. Any commercial use of the contents of this guide is prohibited.

 

If I forget to mention your name or someone else’s name in the credits section forgive my negligence and feel free to contact me and I will add your name/s.

 

This guide is written specifically for the hardware specifications I’m using, but the principal in general might apply to other hardware with similar specs with the exception of DSDT and SSDT files.

Important Notes:

 

1. Always backup your data before making any changes to your hardware or software.

 

2. Always keep a bootable Clover USB disk with the latest working configurations just in case.

 

3. I suggest you use another bootable USB for testing and not to edit the EFI folder on the hard drive.

 

4. Preferably use the latest BIOS (F21 at the time of writing) version and the latest version of Clover EFI bootloader (4077 at the time of writing).

 

5. There are two main versions of Clover EFI bootloader available in this package. One for the users with a nVidia GPU and the other one is for the users with IntelHD 530 GPU.

 

6. So many parts of this tutorial are universal and they apply to all Hackintosh and Apple computers, like creating the Bootable USB disk drive or mounting the EFI partition. So, you can use them on all the computers that run macOS or even use them for installing macOS on other Hackintosh computers.

 

7. The config.plist, the DSDT.aml file and the SSDT tables are specifically created for the GA-Z170X-Gaming 5 motherboard so do not use them on other hardware because they simply won’t work or even if they do you might experience some problems and errors.

 

8. This tutorial is based on my personal experience. So, you might need to make some extra adjustments.

 

 

Downloading the macOS® Sierra installer from App Store:

 

Download the version of macOS® you want to install on your computer from App Store, macOS® Sierra. For downloading the macOS® installer you’ll need an Apple® computer or a working Hackintosh and a valid Apple ID. Although downloading macOS® Sierra® doesn’t require an Apple ID but if you are going to use your Hackintosh for day to day use you’re going to need a valid Apple ID.

 

You can download the macOS® Sierra® installer by using the link below:

macOS® Sierra® 10.12.5:

https://itunes.apple...7414?mt=12&ls=1

 

You can also use App Store directly for downloading it. The “Install macOS® Sierra.app” will be saved to the following path once downloaded: /Applications/

 

 

Creating bootable USB Disk for macOS®:

 

Plug in a USB flash drive (8Gb or larger) and launch disk utility to format the flash drive.

To create a bootable USB drive for macOS®, everything must be exactly as shown in the picture below.

Once you successfully formatted the flash drive, open Terminal from /Applications/Utilities:

Copy and paste the following command into terminal without the “”:

 

For macOS® Sierra®:

“sudo /Applications/Install\ macOS\ Sierra.app/Contents/Resources/createinstallmedia --volume /Volumes/Untitled --applicationpath /Applications/Install\ macOS\ Sierra.app —nointeraction”

 

 

Press return/enter to run the command. You’ll be asked to give your password and once you type your password press return/enter and the process will start.

Depending on the speed of the USB drive you are using it will take about 5 to 30 minutes to complete the process. It took about 5 minutes on my computer to create the bootable disk on a USB 3.0 flash drive.

 

 

How to mount the EFI partition using command line:

 

Launch the terminal application again if you closed it previously.

Type “diskutil list” and press return/enter

You’ll see list of all the Internal and the external hard drives 

Type “diskutil mount /dev/diskXsX” and press return/enter

First X is the number of the disk and the second X is the number of the partition

In this case the command will be:

 

e.g. diskutil mount /dev/disk2s1

 

Now you can see the EFI partition of disk6 is mounted on the desktop, if you can’t see the partition on the desktop you can find it in finder window’s “Sidebar” under “Devices”

 

 

BIOS Settings:

 

Now it’s time to configure the BIOS before installing macOS®.

First of all, it’s better to “Load Optimized Defaults” settings on the BIOS so we could start from scratch without having any misconfigurations.

You need to make the following changes to get macOS® working on your pc:

 

BIOS:

Fast Boot = Disabled

Windows 8/10 = Windows 8/10 WHQL or Other OS

CSM Support = Disabled

Secure Boot = Not Active

Attempt Secure Boot = Disabled

 

Peripherals

Initial Display Output = PCIe 1 Slot (Only If you are using a nVidia GPU, if you are using an AMD GPU you’ll need to enable IGFX and set it to primary in order to boot into macOS® Sierra®)

Trusted computing, Security Device Support = Disable

Super IO Configuration, Serial IO = Disable

USB Configuration, Legacy USB Support = Enabled

USB Configuration, XHCI Hand-off = Enabled

USB Configuration, USB Mass Storage Drive Support = Enabled

USB Configuration, Port 60/64 Emulation = Enabled

SATS And RST Configuration = AHCI

 

Chipset

VT-d = Disabled (If you need it add “dart=0” flag to config.plist under Boot section)

Internal Graphics = Disabled (Only If you are using a discreet GPU if you are using an AMD GPU you’ll need to enable IGFX and set it to primary in order to boot into macOS® Sierra®)

In Chipset, IOAPIC 24-119 Entries = Disable

 

If you are using Intel Graphics or IGFX

In Chipset, Internal Graphics = Enabled 

In Chipset, DVMT Pre-Allocated = set it to 64 

In Chipset, DVMT Total Gfx Mem = set it to max

 

Save and Exit.

 

 

Installing Clover EFI Bootloader:

 

In order to boot successfully into macOS® you’ll need to install a Bootloader on the drive you are using as the main bootable device whether is a flash drive or a hard disk drive.

There are number of bootloaders that could be used to boot up the macOS® on a PC computer or a Hackintosh but we will only use Clover EFI Bootloader and here is how to properly install and configure Clover EFI Bootloader on your computer.

 

In this section, we will be installing the UEFI version of the Clover so if you are using the Legacy BIOS version for whatever reason this guide is not for you.

 

You can download the latest version of Clover EFI Bootloader from:

https://sourceforge..../cloverefiboot/

 

As I mentioned before in the first page of this manual the latest version of the Clover EFI Bootloader is Clover_v2.4k_4077.

 

Stage 1:

 

Once you have downloaded the bootloader double click the installer package to start the installation process. The process will only take few minutes and after that you need to customize or optimize the contents of the EFI partition which you’ve installed clover into. Please make sure you select the USB drive you created earlier as shown below and not the HDD of the computer you are using.

 

If you see the following dialog after double clicking the installer package, all you need to do is to right click on the Clover_v2.4k_r4077.pkg and from the menu select open and once more click the open button. 

 

Click continue and read the “Important Information” or not and then click continue once more.

You need to select the location that you want to install Clover EFI Bootloader to.

Make sure that you are installing clover to the right location, basically you must choose the drive that you have installed macOS® Sierra® onto unless you want to install the bootloader on another drive, say a flash drive.

 

Now you need to customize which components of the bootloader to be installed, if not you won’t be able to boot into macOS® at all.

 

Check the following items and then click install:

 

1. Install for UEFI booting only (Unified Extensible Firmware Interface)

2. Install Clover in the ESP (EFI System Partition) or (Extensible Firmware Interface System Partition)

3. Install can also choose a theme for your clover bootloader and the CloverThemeManager.app to change or modify the themes later.

4. Install Drivers64UEFI that apply to your system you will need at least these two drivers:

1. EmuVariableUefi-64

2. OsxAptioFix2Drv-64

You can also choose other drivers if they apply to your computer and if you need them, otherwise you’re good to go.

5. You can also install the RC script on the target volume to enable the shell command prompt in clover’s boot screen.

 

Once the installation is started, the EFI partition of the hard disk or USB drive that you are installing clover to will be mounted on the desktop, if you can’t see the partition on the desktop you can find it in the finder window’s “Sidebar” under “Devices”

 

Stage 2:

 

In this stage, you need to configure the config.plist and the other components on the EFI partition either by modifying the config.plist inside the /EFI/Clover/ folder using “TextEdit” or any other text editor application that you like or using “Clover Configurator” (recommended) application which has a GUI for editing the config.plist and it has some other useful built-in apps such as EFI mounter or a Base64 to HEX converter etc. or you can just simply replacing the “Clover” folder with the one that is provided with this guide.

 

At this moment you might not be familiar with all the settings and options inside the config.plist file and Clover Configurator, no need to worry.

You can easily replace the whole “Clover” folder inside the “EFI” folder on the EFI partition of your bootable disk (hard disk drive or USB flash drive) with the folder included with this guide and you’ll be good to go as along as your main components specifically your CPU and GPU are the same as mine.

 

Otherwise you might need some additional settings and flags to be added to the config.plist.

 

For instance, if you are using a NVMe SSD disk drive you’ll need to add proper patches in order to get it to work.

 

You can find more about clover and its settings at:

https://clover-wiki.zetam.org/Home

 

and you can find “Clover Configurator” at:

http://mackie100proj....altervista.org

 

 

How to enable kext using Clover EFI Bootloader:

 

In this section I will briefly explain how to install kexts that are needed to make your macOS® work more properly and efficiently.

 

As you know all the hardware components in a computer need a so called “Driver” to operate correctly in the operating system.

 

The same principle applies to macOS® and Mac OS X®. We call them “Kext” files or “Extension” files.

By default, Apple provides all the required kext files with the operating system to run on a legitimate Apple computer.

 

On the other hand, on a Hackintosh you need to install some extra kext files created by the community to obtain full functionality of your computer. You can either install them directly to “System/Library/Extensions” folder of macOS® Drive or you can place them into the EFI folder on the EFI partition of your bootable drive, which is a better way because if those files are the modified version of an original kext file that Apple is provided after each major update they will be replaced is the OS and you’ll lose the functionality of that particular component or more components.

 

For example, Maxwell and Pascal GPUs have the “Boot to black screen” issue with some SMBIOS settings like iMac17,1, iMac15 and MacPro 6,1 system definitions. It means if you use one of those system definitions your computer will show a black screen after loading macOS® even after installing the nVidiaWebDrivers.

 

So, you’ll need to either change the SMBIOS definition or you need to patch the “AppleGraphicsDevicePolicy.kext” to avoid the black screen.

Once you patch the file with whatever method, if you install macOS® update you’ll need to apply the patch all over again.

Besides changing the system files in macOS® will mix up the file permission of the files and if it’s not properly installed or if you forget to fix the permission of the files you might render the whole operating system useless and you’ll need to either fix the permissions on the /System/Library/Extensions or for short /S/L/E or you might need to reinstall the whole operating system from scratch. 

 

For each version of macOS®, there is a folder inside the following path:

/EFI/Clover/kext/

 

 

So, you can copy the kexts you need inside the folder that correlates with the version of macOS® you are using.

Even if you update the OS, the files inside that path won’t get changed.

 

How to properly adding kext file to /System/Library/Extensions:

 

There are several ways to install additional kexts on macOS, but I will only discuss two methods that are the easiest ways to install kext without having to type any commands in terminal.

 

Using Kext Utility:

 

By using kext utility you can easily install kext files inside /System/Library/Extension.

All you have to do is to open the Kext Utility app, type in your password and drag the kext file you want to install into the app’s window and it will install them in to the path give above. The good thing about this app is that it will automatically repairs the permission of the /System/Library/Extension folder and the kext files inside it.

 

Once the process is done you can reboot the system and see the results.

 

 

Kext Wizard:

 

Kext wizard is another handy tool with more functions built into it, you can select the path for installing the kexts files even to another operating system on another volume.

 

You can repair the permissions and rebuild system kext cache. You can even load kexts files and test them or list the kext that are already loaded in the system.

 

 

Post Installation:

 

To have a fully functional Hackintosh you need to add the following kext files and DSDT/SSDT files and tables.

 

Kexts:

FakeSMC.kext https://bitbucket.or...zlek/downloads/

 

Audio:

AppleALC.kext

https://github.com/t...audio_CloverALC

Lilu.kext

https://github.com/vit9696

CodecCommander.kext v2.4.0 for Audio after sleep

https://bitbucket.or...r-2015-0522.zip

 

Note:

Install CodecCommander.kext v. 2.4.0 inside /System/Library/Extensions/ and set darkwake=8 in config.plist to solve the audio after sleep issue.

I tried installing it inside /EFI/Clover/kexts/10.12 and /EFI/Clover/kexts/Other and it didn’t work.

I also tried other versions of CodecCommander.kext but none of them worked except for the v. 2.4.0.

 

If you don’t want to use Lilu.kext and AppleALC.kext and see the read the “Other methods for activating audio section”.

realtekALC.kext with https://github.com/t...120.command.zip

 

audio_cloverHDMI-120_v1.0d.command for HDMI Audio: https://github.com/t...120.command.zip

 

Ethernet:

AppleIntelE1000e.kext https://sourceforge....xt.zip/download

or

IntelMausiEthernet.kext https://bitbucket.or...2-2017-0321.zip

 

Graphics:

IntelGraphicsFixup.kext https://sourceforge....lgraphicsfixup/ if you are using the Intel Integrated Graphics 

Lilu.kext https://github.com/vit9696

NVidaiGraphicsFixup.kext https://sourceforge....agraphicsfixup/

 

USB 3.0

USBInjectAll.kext

https://bitbucket.or...l-2017-0517.zip

 

Note:

I also tested the system without USBInjectAll.kext and all my USB 2.0 and USB 3.0 ports were fully functional so it’s up to you whether to use it or not.

 

 

VERY IMPORTANT NOTE:

 

Before you start using macOS® Sierra®, you need to change the SMBIOS of the config.plist:

 

You have to change the SMBIOS settings before starting to use macOS® Sierra®, because the config.plist that is included in this guide doesn’t have a serial number for your Hackintosh, so you won’t be able to use any of Apple’s services without a serial number and a hardware UUID. It’s imperative to do so specially if you are going to use your Hackintosh for daily use. If you don’t change the serial number you won’t be able to use App Store, iCloud, iMessage etc. It’s highly recommended that you use iMac 17,1 SMBIOS as your default. iMac 17,1 and iMac 17,2 models use Skylake processors in Apple's original iMacs.

 

For changing the SMBIOS you can use the built-in wizard inside “Clover Configurator” under SMBIOS Section. To open the wizard, click the small magic wand on the right side of the window to use the wizard.

 

 

Audio:

 

By using the EFI folder included with this guide and by using the patched DSDT/SSDT tables, “AppleALC.kext” and “Lilu.kext” you won’t need to do much to make the audio active on your Hackintosh.

Just install the macOS® Sierra®, copy the EFI folder and audio is activated by default, HDMI audio will be active once you install nVidiaWebDrivers and restart the computer.

 

If the audio didn’t work, you can rebuild prelinked kernel and kexts cache by using the following commands in terminal:

 

1. sudo nvram -c

2. sudo purge

3. sudo rm -f /System/Library/Caches/com.apple.kext.caches/Startup/kernelcache && sudo touch /System/Library/Extensions && sudo kextcache -u /

sudo update_dyld_shared_cache -force

 

Or you can use “Kext Utility” to repair permissions on /System/Library/Extensions and /Library/Extensions and also it will also rebuilds the system cache for you.

 

Kext Utility could be found at:

http://www.insanelym...ttach_id=186603

 

 

 

Note:

If you see the following output in terminal it means that you forgot to mount the EFI partition, mount it and run the command again.

 

EFI partition not mounted

Boot/EFI not found

EFI/CLOVER folder not available to install audio

No system files were changed

To save a Copy of this Terminal session: Terminal/Shell/Export Text As ...

logout

Saving session...

...copying shared history...

...saving history...truncating history files...

...completed.

 

 

[Process completed]

 

Other methods for activating the Audio:

 

1. audio_codecdetect.command

 

This command will give you useful information about the audio chipsets and devices that are available on the system, after you run the command, the output will be like this:

 

cdetect_v2.2.command ; exit;

File: audio_codecdetect.command_v2.2

 

HDMI audio codec(s)

Nvidia:   0x10de0083

 

Onboard audio codec

Realtek: 0x10ec0900

Name: Realtek ALC1150

Audio ID: 1

 

Valid audio codec, audio device and Audio ID; audio injection is working

Finished

 

logout

Saving session...

...copying shared history...

...saving history...truncating history files...

...completed.

 

[Process completed]

 

 

This means that the audio chipset is supported and you can go to the next step of installing the audio using Toleda's scripts.

 

2. audio_cloverALC-120_v1.0f3.command

 

Type in the password and press return/enter

Agreement

The audio_cloverALC script is for personal use only. Do not distribute

the patch, any or all of the files or the resulting patched AppleHDA.kext

for any reason without permission. The audio_cloverALC script is

provided as is and without any kind of warranty.

File: audio_cloverALC-120.command_v1.0f3

Release Mode

Password:

EFI partition is mounted

System Integrity Protection status: disabled.

 

OK to patch

Confirm Realtek ALC1150 (y/n): y

Clover Audio ID Injection (y/n): y

Use Audio ID: 1 (y/n): y

 

Download ALC1150 files ...

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

                                 Dload  Upload   Total   Spent    Left  Speed

100 23555  100 23555    0     0  12259      0  0:00:01  0:00:01 --:--:-- 12255

Edit config.plist/Devices/Audio/Inject/1

Edit config.plist/SystemParameters/InjectKexts/YES

Download kext patches

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

                                 Dload  Upload   Total   Spent    Left  Speed

100  1855  100  1855    0     0   3033      0 --:--:-- --:--:-- --:--:--  3031

Download config kext and install ...

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

                                 Dload  Upload   Total   Spent    Left  Speed

100  4223  100  4223    0     0   3383      0  0:00:01  0:00:01 --:--:--  3383

Install /Volumes/EFI/EFI/CLOVER/kexts/10.12/realtekALC.kext

Install System/Library/Extensions/AppleHDA.kext/ALC1150 zml files

Fix permissions ...

Kernel cache...

rebuilding //System/Library/PrelinkedKernels/prelinkedkernel

kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext CodecCommander.kext

kext-dev-mode allowing invalid signature -67013 0xFFFFFFFFFFFEFA3B for kext AppleMobileDevice.kext

kext-dev-mode allowing invalid signature -67054 0xFFFFFFFFFFFEFA12 for kext AppleHDA.kext

kext-dev-mode allowing invalid signature -67030 0xFFFFFFFFFFFEFA2A for kext AppleGraphicsDevicePolicy.kext

KernelCache ID: 4EEE3A25D6E9388FE8F02F8E56A57A1D

kextcache updated critical boot files, requesting launchd reboot

Install finished, restart required.

To save a Copy of this Terminal session: Terminal/Shell/Export Text As ...

logout

Saving session...

...copying shared history...

...saving history...truncating history files...

...completed.

 

[Process completed]

All you need to do now is to reboot the system and you’ll have audio!

 

3. HDMI Audio

 

For activating the HDMI Audio for you need to run audio_cloverHDMI-120.command

This command will detect the audio codec for you integrated graphics and discrete GPU and will add the proper SSDT table to /EFI/Cover/ACPI/patched folder

 

 

Agreement

The audio_cloverHDMI script is for personal use only. Do not distribute

the patch, any or all of the files for any reason without permission.

The audio_cloverHDMI script is provided as is and without any warranty.

 

File: audio_cloverHDMI-120.command_v1.0d

Release Mode

EFI partition is mounted

No HDMI audio codec(s) detected, continue (y/n): y

HDMI audio codec(s)

Integrated Graphics is not installed/enabled

Install AMD/Nvidia HDMI audio (y/n): y

Nvidia discrete graphics card 10de1b81 found on PEG0@1/PEGP@0

Nvidia HDMI audio is not enabled

Install Nvidia HDMI audio ssdt (y/n): y

Download SSDT-HDMI-NVIDIA-PEG0 ...

Password:

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

                                 Dload  Upload   Total   Spent    Left  Speed

100 44888  100 44888    0     0  39094      0  0:00:01  0:00:01 --:--:-- 39101

/Volumes/EFI/EFI/CLOVER/ACPI/patched/SSDT-HDMI-NVIDIA-PEG0.aml installed

 

Install finished, restart required.

To save a Copy of this Terminal session: Terminal/Shell/Export Text As ...

logout

Saving session...

...copying shared history...

...saving history...truncating history files...

...completed.

 

[Process completed]

 

 

Audio Troubleshooting:

 

If after running the audio_cloverHDMI-120_v1.0d.command you see the following statement

 

“Agreement

The audio_cloverHDMI script is for personal use only. Do not distribute

the patch, any or all of the files for any reason without permission.

The audio_cloverHDMI script is provided as is and without any warranty.

 

File: audio_cloverHDMI-120.command_v1.0d

Release Mode

EFI partition is mounted

Error: no IOReg/HDEF; BIOS/audio/disabled or ACPI problem

Continue without HDEF/onboard audio (y/n): y

 

No audio codec detected

No system files were changed

 

 

It means you either don’t have a patched DSDT.aml file or SSDT tables and no patches are present inside the config.plist so you need to either add the DSDT/SSDT tables or add patches yourself.

 

Don’t be alarmed it’s so easy.

 

Open clover configurator and after mounting the EFI partition, open the config.plist and add the following patch :

 

Under ACPI, DSDT patches select “change HDAS to HDEF” from “List of Patches” and this will add the following code in the config.plist

 

</dict>

<key>Comment</key>

<string>change HDAS to HDEF</string>

<key>Disabled</key>

<false/>

<key>Find</key>

<data>

SERBUw==

</data>

<key>Replace</key>

<data>

SERFRg==

</data>

</dict>

 

or

 

Comment: change HDAS to HDEF

Find*[HEX] 48444153

Replace*[HEX]48444546

 

Graphics:

 

This section will be dedicated to nVidia GPUs specially Maxwell and Pascal. If you are using any other nVidia or AMD graphics you can skip this section.

We tested these instructions on an EVGA 1070 Superclocked GPU and a Gigabyte nVidia GeForce GTX960 GAMING-4GB (Please include the brand for reference).

As you might know the 10 series nVidia GPUs or Pascal are not compatible with Mac OS X El Capitan and earlier versions of macOS® but 9 series and Maxwell are compatible and they both need nVidiaWebDrivers to be fully functional.

 

For macOS® Sierra® 10.12.5 you’ll need to download 378.05.05.15f01

https://images.nvidi...05.05.15f01.pkg

 

Solution 1:

 

If you are looking for an easy way to get the GPU working all you have to is to copy the Lilu.kext and nVidaiGraphicsFixup.kext inside the kext folder in clover EFI bootloader.

 

The full path is /EFI/Clover/kext/10.12

Once you finished installing macOS® and nVidiaWebDrivers you’ll need to add the following flags and setting to the config.plist

 

  1. Under “Boot” section add or remove nvda_drv=1 if necessary. I don’t need to use it on my computer.
  2. You don’t need to inject anything in “Graphics” section
  3. Under “System Parameters” check “NvidiaWeb”
  4.  

When installing Clover EFI bootloader under “Drivers64UEFI” install “EMUVariableUefi-64” // I also use OsxAptioFix2Drv.efi, never tested without it.

 

and that’s it!

 

Solution 2:

 

If you don’t want to use nVidaiGraphicsFixup.kext you only have two options:

  1. 1. Run AGDP-fix.app to edit the “AppleGraphicsDevicePolicy.kext” to fix “Boot to Black Screen” issue
  2. 2. Or you can edit the “AppleGraphicsDevicePolicy.kext” manually using terminal.

 

If you choose the second solution for any reason remember after each major update you need to apply the patch all over again.

 

Wi-Fi:

 

TP-Link WDN4800 works out of the box without any hassle.

The only problem that you might encounter with it is "ATHR: unknown locale: 21" error in the verbose boot.

The Atheros patch is to avoid the series of "ATHR: unknown locale: 21" messages in the verbose boot which they will be registered in message console's logs and they will make the log file bigger. The patch will fix the WiFi location and will stop the error and therefore there will be no more logs.

 

Without the patch, the WiFi will work just the same but with lots of messages in the log.

 

If you don’t use the TP-Link WDN4800 you can remove the patch or simply leave it as disabled.

 

USB 3.0:

 

Under Kernel and Kext Patches add the following to “KextsToPatch”:

This patch will raise the limit of the USB ports from 15 to 26.

 

 

For macOS® Sierra

 

Name*: AppleUSBXHCIPCI

Find* [HEX] : 83bd74ff ffff10

Replace [HEX] : 83bd74ff ffff1b

Comment: Raise change 15 port limit to 26 in XHCI kext (100-series)

MatchOS: 10.12.x

 

You also might need to add RehabMan’s “USBInjectAll.kext” to the following path under “/EFI/Clover/kexts/10.12” for macOS® Sierra

 

Note:

If you are using a patched DSDT or SSDT tables you don’t need to use any DSDT patches in clover and the “USBInjectAll.kext” you will have full functional USB 2.0 and USB 3.0 ports. I didn’t test USB 3.1 ports because I have no USB 3.1 device to test it!

The port limit patch must only be temporary, you will need to create your own custom SSDT-UIAC to only inject the ports you use.

 

Custom SSDT-UIAC:

 

A quick rundown on how to create a custom SSDT-UIAC.

Add the following patch to your config.plist if you don’t already have the patch.

 

<dict>

<key>Comment</key>

<string>change 15 port limit to 26 in XHCI kext (100-series)</string>

<key>MatchOS</key>

<string>10.12.x</string>

<key>Name</key>

<string>com.apple.driver.usb.AppleUSBXHCIPCI</string>

<key>Find</key>

<data>g710////EA==</data>

<key>Replace</key>

<data>g710////Gw==</data>

</dict>

 

or

 

Name*: AppleUSBXHCIPCI

Find* [HEX] : 83bd74ff ffff10

Replace [HEX] : 83bd74ff ffff1b

Comment: Raise change 15 port limit to 26 in XHCI kext (100-series)

MatchOS: 10.12.x

 

 

The USBInjectAll.kext provided in this guide needs to be and stay installed.

Download ioregistryexplorer Version 3.0.3 from http://mac.softpedia...yExplorer.shtml

or download IOJones which is an alternative to IORegistryExplorer at: https://sourceforge.net/projects/iojones/

Download MaciASL from https://bitbucket.or...L-2017-0117.zip and extract, drag MaciASL.app into /Applications. (Credit RehabMan)

Download OS-X-USB-Inject-All Master from: (Credit RehabMan)

https://github.com/R...hive/master.zip

and extract the zip file.

Inside the OS-X-USB-Inject-All-master folder you will find SSDT-UIAC-ALL.dsl, copy it to your desktop.

 

Open ioregistryexplorer and find your device id by typing XHC in the search field.

 

Open SSDT-UIAC-ALL.dsl with MaciASL and find your appropriate device id section.

 

 

Remove all other sections in the SSDT-UIAC-ALL.dsl that do not correspond with your device id leaving just the one section. Skylake does not have a EHCI controller so “HUB1”, ”HUB2”, ”EH01”, "EH02" can be removed and in my case I can also remove "8086_1e31", "8086_8xxx", "8086_9xxx", "8086_9cb1", "8086_9d2f" and "8086_a2af".

Compile the file to make sure there are no errors in the code and then save the file with “ACPI Machine Language Binary”. 

 

Now we turn our attention to ioregistryexplorer, while you have ioregistry open go to the XHC section and take note of the HSxx or SSxx locations that have devices attached. Now plug in a USB 2.0 device into all USB 2.0 you NEED and do the same with USB 3.0 ports with USB 2 and 3 devices and take note of them all.

Returning back to the SSDT-UIAC-ALL.dsl you will see all ports listed, you need to remove the ones you did not take note of and you can also add a comment to the ones you keep. 

 

UsbConnector values = USB 2.0 = 0, USB 3.0 = 3. Internal = 255

USB 2.0 devices plugged into USB 3.0 ports HSxx are still marked as USB 3.0 = 3.

Internal devices such as Bluetooth etc are marked as 255

 

 

 

Once you gone through and done this to all the devices you need and removed the ones you don’t you can save your SSDT-UIAC-ALL.dsl in MaciASL. Make sure you rename it to SSDT-UIAC and that the file format is ACPI Machine Language Binary

 

 

Copy and paste the resulting SSDT-UIAC.aml into your EFI/EFI/CLOVER/ACPI/patched folder.

 

Disable the port limit patch in config.plist and add SSDT-UIAC.aml into SortedOrder if needed.

 

Reboot.

 

Open ioregistryexplorer and test the ports you left enabled USB 2 & 3.

The number of ports you should see in ioreg should be significantly reduced as they are not being injected anymore.

 

 

 

Special Thanks to:

 

I would like to thank MaLd0n for providing the patched version of DSDT and SSDT tables and SavageAUS for doing such a great work on helping me to write this tutorial and testing the files and also writing the “Custom SSDT-UIAC” section.

 

 

 

I also would like to thank:

 

Vit9696 for Lilu.kext

RehabMan for CodecCommander.kext FakeSMC.kext, IntelMausiEthernet.kext, USBInjectAll.kext.

Toleda for AppleALC.kext, Audio commands and kexts

netkas for FakeSMC.kext

lvs1974 for IntelGraphicsFixup.kext and NvidiaGraphicsFixup.kext

hnak for AppleIntelE1000e.kext

Mieze for IntelMausiEthernet.kext

apianti, blackosx, blusseau, dmazar, slice2009 for Clover EFI Bootloader

http://mackie100proj....altervista.org for Clover Configurator

Apple Inc. for macOS® and great many other products.

And many other great people whom make Hackintosh possible!

 

 

 

 

The hardware I use in my computer:

Gigabyte GA-Z170X-Gaming 5

Intel Skylake Core i7 6700K @ 4.0 GHz

32 GB (4x8 GB) 2666 GSKILL Ripjaws

EVGA GTX 1070 SC 8 GB

Dual Display 23.5"

Kingston HyperX 240GB SATA III SSD

250 GB Samsun EVO 850 SSD 

TP-Link WDN4800 PCIe Wireless Network Adapter

CoolerMaster Silencio 452 Case

CoolerMaster Nepton 120XL Liquid Cooler

CoolerMaster V750 Watts Power Supply

2x24" Samsung LED Displays + 32" TV

 

SavageAUS's hardware that was used for testing:

Gigabyte GA-Z170X-Gaming 5
Intel Skylake core i7-6700k @ 4Ghz
32Gb (4 x 8Gb) DDR4 3200 G.Skill Ripjaws
Gigabyte GTX960 GV-N960WF2OC-4GD
240Gb Intel SSD
240Gb Kingston HyperX Savage SSD
TP-Link WDN4800 WiFi
Corsair H110i AIO Liquid Cooler
Corsair RM850i PSU
Corsair 760t Case
24" single display Benq GL2450

 

 

Please download the PDF version which includes pictures on this guide.

 

 

I hope you find this tutorial helpful.

 

Best Regards,

Cyberdevs

Attached Files



#2
MaLd0n

MaLd0n

    ...filling veins with juice of chaos...

  • Moderators
  • 15,947 posts
  • Gender:Male
  • Location:Rio de Janeiro
  • Interests:HacksLikeMacs

Fantastic guide, bro!  :thumbsup_anim:



#3
cyberdevs

cyberdevs

    InsanelyMac Deity

  • Donators
  • 2,399 posts
  • Gender:Male

Fantastic guide, bro!  :thumbsup_anim:

Thanks a lot man :)

 

Welcome to the new thread :)


This guide would not happen without the help of MaLd0n and SavageAUS!

 

Thanks a lot guys!

 

:thumbsup_anim:  :thumbsup_anim:  :thumbsup_anim:



#4
john_s

john_s

    InsanelyMac Protégé

  • Members
  • PipPip
  • 60 posts
Although I'm on gaming 3 this guide is essential to all. Good work!!


Sent from my iPhone using Tapatalk

#5
cyberdevs

cyberdevs

    InsanelyMac Deity

  • Donators
  • 2,399 posts
  • Gender:Male

Although I'm on gaming 3 this guide is essential to all. Good work!!


Sent from my iPhone using Tapatalk

Thanks! :)

 

We tried to make it as universal as possible!



#6
SavageAUS

SavageAUS

    What u lookn at?

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,171 posts
  • Gender:Male
My hardware that was used for testing:
Gigabyte GA-Z170X-Gaming 5
Intel Skylake core i7-6700k @ 4Ghz
32Gb (4 x 8Gb) DDR4 3200 G.Skill Ripjaws
Gigabyte GTX960 GV-N960WF2OC-4GD
240Gb Intel SSD
240Gb Kingston HyperX Savage SSD
TP-Link WDN4800 WiFi
Corsair H110i AIO Liquid Cooler
Corsair RM850i PSU
Corsair 760t Case
24" single display Benq GL2450

Sent from my SM-G930F using Tapatalk

#7
cyberdevs

cyberdevs

    InsanelyMac Deity

  • Donators
  • 2,399 posts
  • Gender:Male

Thanks SavagAUS,

 

This is the part we missed in the manual,

 

I will add it to the PDF version ASAP.



#8
Allan

Allan

    V.I.P. Member

  • Supervisors
  • 11,464 posts
  • Gender:Male

Incredible! I've loved your guide.  ^_^  :yes:



#9
cyberdevs

cyberdevs

    InsanelyMac Deity

  • Donators
  • 2,399 posts
  • Gender:Male

Incredible! I've loved your guide. ^_^ :yes:

Thanks a lot man


Sent from my iPhone using Tapatalk

#10
f00b4r

f00b4r

    InsanelyMac Protégé

  • Members
  • Pip
  • 23 posts
  • Gender:Male
  • Location:UK
Great guide and will be testing soon. Have you seen the "USB power property injection for Sierra" stuff that Rehabman has written about recently?

#11
cyberdevs

cyberdevs

    InsanelyMac Deity

  • Donators
  • 2,399 posts
  • Gender:Male

Great guide and will be testing soon. Have you seen the "USB power property injection for Sierra" stuff that Rehabman has written about recently?

Thanks, Yeah I've seen it,

 

The SSDT-UIAC creation of this guide is based on what Rehabman proposes.



#12
f00b4r

f00b4r

    InsanelyMac Protégé

  • Members
  • Pip
  • 23 posts
  • Gender:Male
  • Location:UK

Thanks, Yeah I've seen it,

The SSDT-UIAC creation of this guide is based on what Rehabman proposes.


Fantastic.

#13
cyberdevs

cyberdevs

    InsanelyMac Deity

  • Donators
  • 2,399 posts
  • Gender:Male

Fantastic.

:)



#14
strifecrafter

strifecrafter

    InsanelyMac Protégé

  • Members
  • Pip
  • 20 posts

Well,

Before I do a re-install following this guide, the last time I installed Sierra, I must have did something wrong - since my USB3 drives are no longer recognize, which means I can't back anything up (!)

 

In my EFI partition - I do have:

 

EFI/CLOVER/kexts/10.12/USBInjectAll.kext

 

I have NOT used ioregistryexplorer to reduce my USB ports - since that is supposed to be done after I figure out which ones are working - correct?

 

Note - the above link to ioregistryexplorer takes you to a page w/out a download link.

 

I did find version 3.0.2 via mac.softpedia.com

 

USB Flash drives, mice, keyboards and other USB2 devices seem to work fine - the USB3 drives do not work - either plugged into my USB3 hub or directly into the box.



#15
SavageAUS

SavageAUS

    What u lookn at?

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,171 posts
  • Gender:Male

@strifecrafter

Have you tried installing UBSInjectAll.kext in S/L/E ?
Are you using the raise port limit patch to see all your ports?

@f00b4r

USB power property injection for Sierra was news to me up until the other day and unfortunately the SSDT-UIAC.aml does not fix this. For USB power injection we need to add another SSDT into our EFI/EFI/CLOVER/ACPI/patched folder to get the power properties injected. Without the said SSDT my iPad does not charge on my USB ports but with it, it does.

For this to work you need to use v0.6.0 or later of RehabMans USBInjectAll.kext and this SSDT-USBX.aml.

Note: This is what i use on my system, your mileage may vary.

Credit to RehabMan for discovery and implementation, i just tested this method and it works on my system.

 

IORegistryExplorer



#16
strifecrafter

strifecrafter

    InsanelyMac Protégé

  • Members
  • Pip
  • 20 posts

@strifecrafter

Have you tried installing UBSInjectAll.kext in S/L/E ?
Are you using the raise port limit patch to see all your ports?
 

 

 

 

 

I believe I had only copied it to the EFI partition - but I did see there was a copy in S/L/E - but the file size was different than the one in EFI partition.

 

So - I simply copied it from the EFI partition and overwrote the version in S/L/E

 

I then rebooted.

 

After bootup - my timemachine driver was recognized and all was well for 5 minutes.

Then an error dialogue popped up - and warned that the USB kext I had copied, was installed incorrectly.

 

SO...

 

I fired up kext utility - and allowed it to finish processing things - and then dragged the USB kext over to it - and had it install it properly.

I then rebooted - and now the system again does NOT see the USB drive.

 

As for the port limit patch - I'm pretty sure I am not using it.



#17
SavageAUS

SavageAUS

    What u lookn at?

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,171 posts
  • Gender:Male

I believe I had only copied it to the EFI partition - but I did see there was a copy in S/L/E - but the file size was different than the one in EFI partition.

 

So - I simply copied it from the EFI partition and overwrote the version in S/L/E

 

I then rebooted.

 

After bootup - my timemachine driver was recognized and all was well for 5 minutes.

Then an error dialogue popped up - and warned that the USB kext I had copied, was installed incorrectly.

 

SO...

 

I fired up kext utility - and allowed it to finish processing things - and then dragged the USB kext over to it - and had it install it properly.

I then rebooted - and now the system again does NOT see the USB drive.

 

As for the port limit patch - I'm pretty sure I am not using it.

Can you try a different USB device?

I attached ioreg to previous post please add your ioreg and CLOVER folder minus themes and S/N



#18
f00b4r

f00b4r

    InsanelyMac Protégé

  • Members
  • Pip
  • 23 posts
  • Gender:Male
  • Location:UK

I believe I had only copied it to the EFI partition - but I did see there was a copy in S/L/E - but the file size was different than the one in EFI partition.

So - I simply copied it from the EFI partition and overwrote the version in S/L/E

I then rebooted.

After bootup - my timemachine driver was recognized and all was well for 5 minutes.
Then an error dialogue popped up - and warned that the USB kext I had copied, was installed incorrectly.

SO...

I fired up kext utility - and allowed it to finish processing things - and then dragged the USB kext over to it - and had it install it properly.
I then rebooted - and now the system again does NOT see the USB drive.

As for the port limit patch - I'm pretty sure I am not using it.


It's your USB drive self powered our does it have a separate power supply?

#19
cyberdevs

cyberdevs

    InsanelyMac Deity

  • Donators
  • 2,399 posts
  • Gender:Male

Hey guys,

 

Sorry if i'm not available to answer the questions you posted, I'm currently on a trip which I'll be back from tomorrow. I uploaded the files and the guide using my laptop, the main files are on my other computer at home so please keep me posted on any issues you might find in the guide so I'll update it.

 

We will discuss all the issues you have and will find a proper solution.

 

I Also uploaded the IORegistryExplorer v. 3.0.3 so you can download it directly :)

 

 

 

Cheers!



#20
cyberdevs

cyberdevs

    InsanelyMac Deity

  • Donators
  • 2,399 posts
  • Gender:Male

Ok guys, I'm back :)








2 user(s) are reading this topic

1 members, 1 guests, 0 anonymous users


© 2017 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy