10.11.0-10.11.3 Skylake Starter Guide

Discussion in 'El Capitan Desktop Guides' started by ammulder, Nov 21, 2015.

  1. ammulder

    ammulder Moderator

    Joined:
    Sep 1, 2014
    Messages:
    3,353
    Motherboard:
    GA-H87N-WIFI
    CPU:
    Core i7-4790S
    Graphics:
    GT 740
    Mac:
    MacBook Pro, Mac mini
    Mobile Phone:
    iOS
    Nov 21, 2015 at 5:06 PM #1
    ammulder

    ammulder Moderator

    Joined:
    Sep 1, 2014
    Messages:
    3,353
    Motherboard:
    GA-H87N-WIFI
    CPU:
    Core i7-4790S
    Graphics:
    GT 740
    Mac:
    MacBook Pro, Mac mini
    Mobile Phone:
    iOS
    All: This will be replaced soon with an updated guide based on 10.11.4 and the current UniBeast/MultiBeast tools.




    The new 170 boards and Skylake CPUs have presented fairly unprecedented complications in OS X support. This guide is an attempt to work through two of the biggest obstacles: widespread hardware problems due to interrupt configuration, and USB failures due to the way the default DSDT interacts with Apple's logic.

    In order to install on a Skylake machine, you can prepare an install USB using UniBeast, but then you should apply the fixes described here to the EFI partition of the USB install drive, before you use it to install. (You can use EFI Mounter v3 if needed to mount the EFI partition, just make sure to pick the one for the USB drive. "diskutil list" in Terminal should show which one that is.)

    0. tl;dr (i.e. the REALLY short version of the rest of the guide)
    You can try this View attachment config.plist with USBInjectAll.kext and if it doesn't work right away apply the port limit patch in section 7.1 to your config.plist and try again.

    Otherwise...

    1. BIOS Settings
    The BIOS settings are fairly typical for modern machines:
    • Load Optimized Defaults
    • If your BIOS has a VT-d setting, disable it
    • If your system has CFG-Lock, disable it
    • If your system has Secure Boot Mode, disable it
    • Set OS Type to Other OS
    • Set XHCI Handoff to Enabled
    • If you have a Serial port, disable it

    2. IOAPIC Fix
    Without this fix, many things don't work, including but not limited to SATA, Ethernet ports, USB, many PCI devices, sound devices, and etc. Basically virtually nothing works.

    Fortunately, the fix is relatively easy: add this <dict> entry to EFI/CLOVER/config.plist in the KextsToPatch array:
    Code (Text):

                    <key>KextsToPatch</key>
                    <array>
    [B]                        <dict>
                                    <key>Comment</key>
                                    <string>Skylake APIC fix, discovered by Pike R. Alpha</string>
                                    <key>Find</key>
                                    <data>
                                    wegQD7bw
                                    </data>
                                    <key>Name</key>
                                    <string>AppleAPIC</string>
                                    <key>Replace</key>
                                    <data>
                                    vhcAAACQ
                                    </data>
                            </dict>[/B]
     
    If you're interested in more background, see this post.

    3. SMBIOS

    You should use a SMBIOS system definition. MacPro3,1 works as always. For instance, if you open your EFI/CLOVER/config.plist with Clover Configurator, choose the SMBIOS screen on the left, hit the Magic Wand button, select Mac Pro and then MacPro3,1 and then hit both shake buttons a few times and close the screen and File/Save.

    If you want to use an official Skylake system definition, the only one available so far is iMac17,1 (though if you use this with an Nvidia card you will need Fix #4 from this thread):
    Code (Text):

        <key>SMBIOS</key>
        <dict>
            <key>BiosReleaseDate</key>
            <string>09/22/2015</string>
            <key>BiosVendor</key>
            <string>Apple Inc.</string>
            <key>BiosVersion</key>
            <string>IM171.88Z.0105.B00.1509221819</string>
            <key>Board-ID</key>
            <string>Mac-65CE76090165799A</string>
            <key>BoardManufacturer</key>
            <string>Apple Inc.</string>
            <key>BoardType</key>
            <integer>10</integer>
            <key>BoardVersion</key>
            <string>iMac17,1</string>
            <key>ChassisAssetTag</key>
            <string></string>
            <key>ChassisManufacturer</key>
            <string>Apple Inc.</string>
            <key>ChassisType</key>
            <string>13</string>
            <key>Family</key>
            <string>iMac</string>
            <key>LocationInChassis</key>
            <string>Part Component</string>
            <key>Manufacturer</key>
            <string>Apple Inc.</string>
            <key>ProductName</key>
            <string>iMac17,1</string>
            <key>SerialNumber</key>
            <string>C02Q0000GG7L</string>
            <key>Trust</key>
            <false/>
            <key>Version</key>
            <string>1.0</string>
        </dict>
     
    If your system only recognizes half your installed memory, you can add your memory settings to the SMBIOS definition in config.plist. Just add a block like this. Note that you should use a SlotCount of 4 with slots 0 and 2 populated even on NUCs or Mini-ITX boards with only 2 slots because it's needed to enable dual-channel memory. You can make up the vendor, part, and serial fields if unsure, but don't leave them out.
    Code (Text):

            <key>Memory</key>
            <dict>
                <key>Channels</key>
                <integer>2</integer>
                <key>SlotCount</key>
                <integer>4</integer>
                <key>Modules</key>
                <array>
                    <dict>
                        <key>Frequency</key>
                        <integer>2133</integer>
                        <key>Part</key>
                        <string>CT2C8G4DFD8213</string>
                        <key>Serial</key>
                        <string>0200020B000C020B</string>
                        <key>Size</key>
                        <string>8192</string>
                        <key>Slot</key>
                        <integer>2</integer>
                        <key>Type</key>
                        <string>DDR4</string>
                        <key>Vendor</key>
                        <string>Crucial</string>
                    </dict>
                    <dict>
                        <key>Frequency</key>
                        <integer>2133</integer>
                        <key>Part</key>
                        <string>CT2C8G4DFD8213</string>
                        <key>Serial</key>
                        <string>0200020B000C020B</string>
                        <key>Size</key>
                        <string>8192</string>
                        <key>Slot</key>
                        <integer>0</integer>
                        <key>Type</key>
                        <string>DDR4</string>
                        <key>Vendor</key>
                        <string>Crucial</string>
                    </dict>
                </array>
            </dict>
     
    4. HD 530 Integrated Graphics
    The HD 530 works, but without HDMI audio and with many graphical artifacts. To get it working as far as it does, you should set your ig-platform-id to 0x19120000 (currently with no settings it defaults to the HD 4600, which gives no acceleration).

    If you're using an HDMI connection to the monitor, also add this <dict> entry to EFI/CLOVER/config.plist in the same KextsToPatch array:
    Code (Text):

                    <key>KextsToPatch</key>
                    <array>
                [B]<dict>
                    <key>Comment</key>
                    <string>10.11-SKL530-Port_0-DP2HDMI</string>
                    <key>Find</key>
                    <data>
                    /wAAAAEAAABAAAAA
                    </data>
                    <key>Name</key>
                    <string>AppleIntelSKLGraphicsFramebuffer</string>
                    <key>Replace</key>
                    <data>
                    AAAIAAAIAACCAAAA
                    </data>
                </dict>[/B]
     

    5. Ethernet
    The i219 Ethernet port commonly included on Skylake boards has not been supported until very recently. Two driver options with i219 support are available among the kext downloads (the latest AppleIntelE1000e -- newer than the one in MultiBeast -- or IntelMausiEthernet). Reportedly the Mausi driver is the better of the two.

    UniBeast installs an older version of AppleIntelE1000e (without i219 support) on your USB install drive, so you can replace that if you want Ethernet support during the installation (in EFI/CLOVER/kexts/10.10/ and EFI/CLOVER/kexts/10.11/). MultiBeast 8.0.1 also uses an older version, so during post-install setup you should not install an Ethernet driver with MultiBeast for the i219; instead download the one you want from the kexts section as above and use KextBeast to install it.

    6. Audio
    Most Skylake boards come with a Realtek ALC1150 audio chip, or another in the Realtek series. These should all be supported by MultiBeast, with the following config.plist patch. Note: this one goes in the ACPI section at the top, not the KextsToPatch section where the ones mentioned previously go:
    Code (Text):

    <key>ACPI</key>
    <dict>
        <key>DSDT</key>
        <dict>
            <key>Patches</key>
            <array>
                [B]<dict>
                    <key>Comment</key>
                    <string>Rename HDAS to HDEF</string>
                    <key>Find</key>
                    <data>
                    SERBUw==
                    </data>
                    <key>Replace</key>
                    <data>
                    SERFRg==
                    </data>
                </dict>[/B]
            </array>
            ...
        </dict>
     
    If your ACPI section does not already have a Patches entry, you may need to add both the key and array, as well as the dict for the patch inside.

    7. USB Fix

    Sadly, this one is not as straightforward. Out of the box, typically some USB ports don't work, or work with only USB2 devices, or etc. This may include ports on the motherboard connector panel, ports on the case (which is to say on motherboard USB headers), and ports for Bluetooth devices (on-board or in PCIe Half-mini or m.2 slots).

    There is a quick-and-dirty method to get through the install process. But that may have side effects and is not recommended long-term. So after the install, there is a more detailed process to "get it right".

    Note: this has been tested on OS X 10.11.1 & 10.11.2. Some parts were known to not work during the 10.11.2 beta series, so be aware if using a beta release.

    7.1 Getting Through the Install

    A quick fix to get through the installation process is to install USBInjectAll.kext and another config.plist patch.

    You can download USBInjectAll.kext (pick the latest distribution here) and copy it to EFI/CLOVER/kexts/... (into both 10.10/ and 10.11/ directories if using numbered directories, and into Other/ otherwise).

    Then add this <dict> entry to EFI/CLOVER/config.plist in the same KextsToPatch array:
    Code (Text):

                    <key>KextsToPatch</key>
                    <array>
    [B]                        <dict>
                                    <key>Comment</key>
                                    <string>change 15 port limit to 30 in AppleUSBXHCIPCI</string>
                                    <key>Find</key>
                                    <data>
                                    g72M/v//EA==
                                    </data>
                                    <key>Name</key>
                                    <string>AppleUSBXHCIPCI</string>
                                    <key>Replace</key>
                                    <data>
                                    g72M/v//Hw==
                                    </data>
                            </dict>[/B]
     
    With those changes, you should be able to install with a USB drive on any USB2 or USB3 port. USB3 Type C ports should work (tested with an adapter to standard USB2/USB3 drives). Not sure about USB3.1 Type C ports.



    Easy Options Are Above Here
    Proceed Only If Dedicated To Getting Things Right!



    7.2 Getting it Right

    Note: if you're unwilling to go through all the effort required in this section, then stick with the setup above and take your chances with the port-limit patch.

    Once you've installed, you can identify the USB ports in use more accurately. For this, you'll need IORegistryExplorer (get the attachment from this post) and MaciASL. You will also need a USB1 or USB2 device (a keyboard or mouse is fine) and a USB3 device (such as a USB flash drive).

    7.2.1. Identifying Ports

    To begin with, open IORegistryExplorer. Look for PCI0@0 then AppleACPIPCI and then way down the list, an entry for XHC. It should look something like this, with all 26 entries underneath:
    find-xhc.png

    If you see fewer than 26 entries (HS01-HS14, SS01-SS10, USR1-USR2), then something is wrong and you need to review the steps above until you can boot and see 26 entries under XHC in IORegistryExplorer.

    Now here's the tedious part. You need to try both the USB2 device and USB3 device on every single port on the machine. This means all the ports on the motherboard backplate, all the case ports, switch the case ports between USB2 and USB3 headers on the motherboard and try again, try Type C ports with both devices using an adapter if necessary, check any on-board Bluetooth device, etc.

    Every time you try one, look for an entry under XHC that just got a wedge next to it. In the screen shot above, you can see that HS05, HS06, and HS08 have wedges (this is my keyboard, mouse, and Bluetooth). For each entry with a wedge, click the wedge to confirm the correct device is shown there, then write down which port on your machine it corresponds to, and then select the HS** or SS** entry and write down the "port" value shown on the right. For instance, if I plug in a USB3 flash drive I get a wedge on SS01. Then if I click on SS01 in the screen shot above, I get this:
    xhc-ss01.png

    My device is "USB 3.0 FD" which is a USB 3 flash drive. The physical port is the lower of 2 ports on my case, currently connected to the USB3 header on the motherboard. The port shown in IORegistryExplorer is <11 00 00 00>. So I'll record this:

    SS01: USB3 device on USB3 mobo header #1, port <11 00 00 00>

    Now if I eject the drive and move it to the other case port, I get this:
    xhc-ss02.png

    So I record:

    SS02: USB3 device on USB3 mobo header #2, port <12 00 00 00>

    And here's an example of a USB1/2 device: the mouse I already have plugged in:
    xhc-hs06.png

    HS06: USB2 device on USB3 port under DVI port, port <06 00 00 00>

    Overall, I get a list like this:

    h170n-wifi-back.png
    HS01: USB2 device on port #1 from USB3 motherboard header, port <01 00 00 00>
    HS02: USB2 device on port #2 from USB3 motherboard header, port <02 00 00 00>
    HS03: USB2 device on USB3 port between type-C and optical out, port <03 00 00 00>
    HS04: USB2 device on USB3 port under i219V Ethernet jack, port <04 00 00 00>
    HS05: USB2 device on USB3 port next to DVI, port <05 00 00 00>
    HS06: USB2 device on USB3 port closest to PS/2, port <06 00 00 00>
    HS07: USB2 device on USB3 Type C port, port <07 00 00 00>
    HS08: USB2 for m.2 wireless Bluetooth features, port <08 00 00 00>
    HS09: USB2 #1 from USB2 motherboard header, port <09 00 00 00>
    HS10: USB2 #2 from USB2 motherboard header, port <0A 00 00 00>

    SS01: USB3 #1 from USB3 motherboard header, port <11 00 00 00>
    SS02: USB3 #2 from USB3 motherboard header, port <12 00 00 00>
    SS03: USB3 between Type C port and optical out, port <13 00 00 00>
    SS04: USB3 under i219V Ethernet jack, port <14 00 00 00>
    SS05: USB3 next to DVI, port <15 00 00 00>
    SS06: USB3 closest to PS/2, port <16 00 00 00>
    SS07: USB3 Type C port, port <17 00 00 00>

    HS11-HS14: unused
    SS08-SS10: unused
    USR1,USR2: unused

    With that information, you can construct a SSDT to activate only the valid ports.

    7.2.2. Constructing SSDT

    Download the starter SSDT source here: View attachment SSDT-USB-Template.dsl

    You should open MaciASL, close the file it creates by default, and select File/Open and point it to that DSL template.

    If this is your first time in MaciASL, go to MaciASL/Preferences..., then the iASL tab, and select ACPI Specification 5.1 and close the preferences.

    You need to make the following modifications to the file in MaciASL:
    1. Add entries for all your HS** and SS** ports that are used. Copy one of the sample entries for each additional entry you need.
    2. For each entry:
      1. Change the name before the Package entry to match the port you're defining here
      2. Change the comment alongside the entry to describe what port it's for
      3. Change the code after "UsbConnector" to be one of the following:
        • 0 if it's a regular USB2 connector ("Type A") or a USB2 motherboard header
        • 3 if it's a regular USB3 connector ("Type A") or a USB3 motherboard header
        • 10 if it's a USB3 Type C connector
        • 255 if it's an internal Bluetooth device or other "proprietary" type of connector
        • There are more values in the ACPI specification, but I'd be surprised if you needed them.
      4. Change the first value in the Buffer after "port" to be "0x" plus the first two digits of the port code you wrote down for this port.
    3. Set the value in the port-limit field above the individual entries to be the same as the highest port value among all the entries you have. Normally this is the one for your highest-numbered SS** port.

    So, by way of example:
    HS06: USB2 device on USB3 port under DVI port, port <06 00 00 00>
    becomes:
    Code (Text):

                        "HS06", Package() // USB2 device on USB3 port closest to PS/2, port <06 00 00 00>
                        {
                            "UsbConnector", 3,
                            "port", Buffer() { 0x06, 0, 0, 0 },
                        },
     
    while
    SS02: USB3 device on USB3 mobo header #2, port <12 00 00 00>
    becomes:
    Code (Text):

                        "SS02", Package() // USB3 device on USB3 mobo header #2, port <12 00 00 00>
                        {
                            "UsbConnector", 255,
                            "port", Buffer() { 0x12, 0, 0, 0 },
                        },
     
    My entry with the highest port value is:
    Code (Text):

                        "SS07", Package() // USB3 Type C port, port <17 00 00 00>
                        {
                            "UsbConnector", 10,
                            "port", Buffer() { 0x17, 0, 0, 0 },
                        },
     
    So my port-count near the top becomes:
    Code (Text):

                    "port-count", Buffer() { 0x17, 0, 0, 0},
     
    Here's the full example of my SSDT source populated for the port list above:
    Code (Text):

    DefinitionBlock ("SSDT-USB.aml", "SSDT", 1, "sample", "USBFix", 0x00003000)
    {
        // "USBInjectAllConfiguration" : override for USBInjectAll.kext
        Device(UIAC)
        {
            Name(_HID, "UIA00000")
            // "RehabManConfiguration"
            Name(RMCF, Package()
            {
                // XHC overrides for 100-series boards
                "8086_a12f", Package()
                {
                    "port-count", Buffer() { 0x17, 0, 0, 0}, // Highest port number is SS07 at 0x17
                    "ports", Package()
                    {
                        "HS01", Package() // USB2 device on port #1 from USB3 motherboard header, port <01 00 00 00>
                        {
                            "UsbConnector", 255,
                            "port", Buffer() { 0x01, 0, 0, 0 },
                        },
                        "HS02", Package() // USB2 device on port #2 from USB3 motherboard header, port <02 00 00 00>
                        {
                            "UsbConnector", 255,
                            "port", Buffer() { 0x02, 0, 0, 0 },
                        },
                        "HS03", Package() // USB2 device on USB3 port between type-C and optical out, port <03 00 00 00>
                        {
                            "UsbConnector", 3,
                            "port", Buffer() { 0x03, 0, 0, 0 },
                        },
                        "HS04", Package() // USB2 device on USB3 port under i219V Ethernet jack, port <04 00 00 00>
                        {
                            "UsbConnector", 3,
                            "port", Buffer() { 0x04, 0, 0, 0 },
                        },
                        "HS05", Package() // USB2 device on USB3 port next to DVI, port <05 00 00 00>
                        {
                            "UsbConnector", 3,
                            "port", Buffer() { 0x05, 0, 0, 0 },
                        },
                        "HS06", Package() // USB2 device on USB3 port closest to PS/2, port <06 00 00 00>
                        {
                            "UsbConnector", 3,
                            "port", Buffer() { 0x06, 0, 0, 0 },
                        },
                        "HS07", Package() // USB2 device on USB3 Type C port, port <07 00 00 00>
                        {
                            "UsbConnector", 10,
                            "port", Buffer() { 0x07, 0, 0, 0 },
                        },
                        "HS08", Package() // USB2 for m.2 wireless Bluetooth features, port <08 00 00 00>
                        {
                            "UsbConnector", 255,
                            "port", Buffer() { 0x08, 0, 0, 0 },
                        },
                        "HS09", Package() // USB2 #1 from USB2 motherboard header, port <09 00 00 00>
                        {
                            "UsbConnector", 255,
                            "port", Buffer() { 0x09, 0, 0, 0 },
                        },
                        "HS10", Package() // USB2 #2 from USB2 motherboard header, port <0a 00 00 00>
                        {
                            "UsbConnector", 255,
                            "port", Buffer() { 0x0a, 0, 0, 0 },
                        },
                        "SS01", Package() // USB3 #1 from USB3 motherboard header, port <11 00 00 00>
                        {
                            "UsbConnector", 255,
                            "port", Buffer() { 0x11, 0, 0, 0 },
                        },
                        "SS02", Package() // USB3 #2 from USB3 motherboard header, port <12 00 00 00>
                        {
                            "UsbConnector", 255,
                            "port", Buffer() { 0x12, 0, 0, 0 },
                        },
                        "SS03", Package() // USB3 between Type C port and optical out, port <13 00 00 00>
                        {
                            "UsbConnector", 3,
                            "port", Buffer() { 0x13, 0, 0, 0 },
                        },
                        "SS04", Package() // USB3 under i219V Ethernet jack, port <14 00 00 00>
                        {
                            "UsbConnector", 3,
                            "port", Buffer() { 0x14, 0, 0, 0 },
                        },
                        "SS05", Package() // USB3 next to DVI, port <15 00 00 00>
                        {
                            "UsbConnector", 3,
                            "port", Buffer() { 0x15, 0, 0, 0 },
                        },
                        "SS06", Package() // USB3 closest to PS/2, port <16 00 00 00>
                        {
                            "UsbConnector", 3,
                            "port", Buffer() { 0x16, 0, 0, 0 },
                        },
                        "SS07", Package() // USB3 Type C port, port <17 00 00 00>
                        {
                            "UsbConnector", 10,
                            "port", Buffer() { 0x17, 0, 0, 0 },
                        },
                    },
                },
            })
        }
    }
     
    When you're done, hit Compile in the toolbar. You should get a popup box saying no errors and no warnings.

    Save the file, then choose File / Save As. This time select ACPI Machine Language Binary as the File Format and it should give the file a .asl extension. You can name it something like SSDT-USB.asl and hit Save.

    Then copy the resulting SSDT-USB.asl file to EFI/CLOVER/ACPI/patched/ and restart your system.

    If you look in IORegistryExplorer after the restart, under XHC it should list only the USB ports you defined in the SSDT. They should all work (for both USB2 and USB3 devices). If any don't, double-check that your port-count is set correctly to the highest "port" value of any of the ports in the file.

    7.2.3. Final Port Configuration

    The last step is to configure the machine so no more than 15 USB IDs are activated at once. For whatever reason, Apple has chosen to limit each USB controller to 15 entries. The port-limit patch installed above defeats that, but as it may have unintended side effects, the best approach is to live within the 15 ID limit.

    First, remove the KextsToPatch entry with the comment "change 15 port limit to 30 in AppleUSBXHCIPCI" in EFI/CLOVER/config.plist. That will revert to the default Apple configuration.

    Second, count the total number of ports defined in your SSDT. For my example it was 17 (HS01-HS10 and SS01-SS07).

    Third, figure out which ports to disable to get the total down to 15. My board in the example above includes both 2 USB2 ports on a motherboard header, and 2 USB3 ports on a different motherboard header. My case only uses one header, and I've cabled it to the USB3 header. Therefore I can do without the 2 ports on the USB2 header. Consulting my list, they are these:

    HS09: USB2 #1 from USB2 motherboard header, port <09 00 00 00>
    HS10: USB2 #2 from USB2 motherboard header, port <0A 00 00 00>

    Therefore, I chose to disable HS09 and HS10 to get my port count down from 17 to 15.

    To disable ports, list them in a boot argument like this: uia_exclude=HS01;HS02;SS03;etc.

    So my final boot argument is:
    Code (Text):
    uia_exclude=HS09;HS10
    Put that boot argument into EFI/CLOVER/config.plist and reboot. Confirm that exactly your desired ports show up in IORegistryExplorer (no more, no less), and they all still work.

    7.3. Settings Review

    In the end, you should have the following:
    • The APIC patch for the beginning in KextsToPatch in EFI/CLOVER/config.plist
    • The USBInjectAll kext in EFI/CLOVER/kexts/...
    • A SSDT-USB.aml in EFI/CLOVER/ACPI/patched/ to configure the correct ports for your motherboard
    • If you have more than 15 total USB entries in the SSDT, a boot argument to disable some of them so the total is 15 or fewer. This should probably be in Boot/Arguments in EFI/CLOVER/config.plist

    Appendix: Working USB SSDTs by Motherboard
     
    Last edited: May 22, 2016
  2. Chilloutsessions

    Chilloutsessions

    Joined:
    Aug 11, 2015
    Messages:
    38
    Motherboard:
    Gigabyte Z170 UD5-TH
    CPU:
    Intel Core i7 6700
    Graphics:
    GTX 980 Ti SC ACX 2.0 6GB
    Mac:
    MacBook Pro
    Mobile Phone:
    iOS
    Nov 22, 2015 at 1:53 AM #2
    Chilloutsessions

    Chilloutsessions

    Joined:
    Aug 11, 2015
    Messages:
    38
    Motherboard:
    Gigabyte Z170 UD5-TH
    CPU:
    Intel Core i7 6700
    Graphics:
    GTX 980 Ti SC ACX 2.0 6GB
    Mac:
    MacBook Pro
    Mobile Phone:
    iOS
    Skylake Starter Guide

    Hi my setup is as follows
    i7 6700
    Gigabyte Z170 UD5-TH
    16GB DDR4
    EVGA GTX 980 Ti SC ACX 2.0 6GB

    I have followed the above mentioned steps and i seem to get what i think is a kernel panic.
    The Unibeast installer boots from the USB to the apple sign loads nearly most of the way and then shows a bunch of writing mentioning kernels (sorry not that tech savvy) and reboots.

    Allow me to show you the entry in then the config.plist file.

    I would really appreciate some help!
    Im sure I have entered it right.
     

    Attached Files:

    • Screen Shot 2015-11-22 at 4.37.40 AM.png  (205 KB, 2,484 views)
    • Screen Shot 2015-11-22 at 4.55.02 AM.png  (160 KB, 2,274 views)
  3. ammulder

    ammulder Moderator

    Joined:
    Sep 1, 2014
    Messages:
    3,353
    Motherboard:
    GA-H87N-WIFI
    CPU:
    Core i7-4790S
    Graphics:
    GT 740
    Mac:
    MacBook Pro, Mac mini
    Mobile Phone:
    iOS
    Nov 22, 2015 at 1:56 AM #3
    ammulder

    ammulder Moderator

    Joined:
    Sep 1, 2014
    Messages:
    3,353
    Motherboard:
    GA-H87N-WIFI
    CPU:
    Core i7-4790S
    Graphics:
    GT 740
    Mac:
    MacBook Pro, Mac mini
    Mobile Phone:
    iOS
    Skylake Starter Guide

    Why don't you post the whole config.plist file and a photo of the text on the screen just before the reboot.

    Edit: also, you shouldn't have only 10.11/ and Other/ -- either you should have 10.10/ and 10.11/ with copies of all kexts in both, or you should have only Other/ with all kexts just in there.

    Edit2: You can remove all three network kexts. I'm pretty sure your board has Intel i219 Ethernet which is not supported yet. Removing the kexts will just eliminate them as a possible cause for any problems.
     
  4. Chilloutsessions

    Chilloutsessions

    Joined:
    Aug 11, 2015
    Messages:
    38
    Motherboard:
    Gigabyte Z170 UD5-TH
    CPU:
    Intel Core i7 6700
    Graphics:
    GTX 980 Ti SC ACX 2.0 6GB
    Mac:
    MacBook Pro
    Mobile Phone:
    iOS
    Nov 22, 2015 at 2:16 AM #4
    Chilloutsessions

    Chilloutsessions

    Joined:
    Aug 11, 2015
    Messages:
    38
    Motherboard:
    Gigabyte Z170 UD5-TH
    CPU:
    Intel Core i7 6700
    Graphics:
    GTX 980 Ti SC ACX 2.0 6GB
    Mac:
    MacBook Pro
    Mobile Phone:
    iOS
    Skylake Starter Guide

    Apologies here below are the config.plist and the screen shot.
     

    Attached Files:

  5. ammulder

    ammulder Moderator

    Joined:
    Sep 1, 2014
    Messages:
    3,353
    Motherboard:
    GA-H87N-WIFI
    CPU:
    Core i7-4790S
    Graphics:
    GT 740
    Mac:
    MacBook Pro, Mac mini
    Mobile Phone:
    iOS
    Nov 22, 2015 at 2:22 AM #5
    ammulder

    ammulder Moderator

    Joined:
    Sep 1, 2014
    Messages:
    3,353
    Motherboard:
    GA-H87N-WIFI
    CPU:
    Core i7-4790S
    Graphics:
    GT 740
    Mac:
    MacBook Pro, Mac mini
    Mobile Phone:
    iOS
    Skylake Starter Guide

    In config.plist you have two <array> blocks after <key>KextsToPatch</key> -- you should combine those into one array containing three dicts.
     
  6. Chilloutsessions

    Chilloutsessions

    Joined:
    Aug 11, 2015
    Messages:
    38
    Motherboard:
    Gigabyte Z170 UD5-TH
    CPU:
    Intel Core i7 6700
    Graphics:
    GTX 980 Ti SC ACX 2.0 6GB
    Mac:
    MacBook Pro
    Mobile Phone:
    iOS
    Nov 22, 2015 at 2:38 AM #6
    Chilloutsessions

    Chilloutsessions

    Joined:
    Aug 11, 2015
    Messages:
    38
    Motherboard:
    Gigabyte Z170 UD5-TH
    CPU:
    Intel Core i7 6700
    Graphics:
    GTX 980 Ti SC ACX 2.0 6GB
    Mac:
    MacBook Pro
    Mobile Phone:
    iOS
    Skylake Starter Guide

    Ok Now i have corrected and deleted the Network Kexts from Both 10.10 and 10.11 Other has been deleted.

    Config.plist has been updated with all 3 dicts. I will update as to how it goes. Thanks

    Update:

    So either I'm entering it incorrectly in the Config.plist or something else is wrong.
    I'm still getting the same screen.
     

    Attached Files:

  7. ammulder

    ammulder Moderator

    Joined:
    Sep 1, 2014
    Messages:
    3,353
    Motherboard:
    GA-H87N-WIFI
    CPU:
    Core i7-4790S
    Graphics:
    GT 740
    Mac:
    MacBook Pro, Mac mini
    Mobile Phone:
    iOS
    Nov 22, 2015 at 3:07 AM #7
    ammulder

    ammulder Moderator

    Joined:
    Sep 1, 2014
    Messages:
    3,353
    Motherboard:
    GA-H87N-WIFI
    CPU:
    Core i7-4790S
    Graphics:
    GT 740
    Mac:
    MacBook Pro, Mac mini
    Mobile Phone:
    iOS
    Skylake Starter Guide

    Now you're missing the start dict tag for the port limit patch.

    Try running "plutil config.plist" after you save it. For instance, on this latest one, I get:
    Code (Text):

    DarkStar:temp ammulder$ plutil ~/Downloads/config.plist
    /Users/ammulder/Downloads/config.plist: Close tag on line 235 does not match open tag array
     
    Whereas you want to see:
    Code (Text):

    config.plist: OK
     
     
  8. Chilloutsessions

    Chilloutsessions

    Joined:
    Aug 11, 2015
    Messages:
    38
    Motherboard:
    Gigabyte Z170 UD5-TH
    CPU:
    Intel Core i7 6700
    Graphics:
    GTX 980 Ti SC ACX 2.0 6GB
    Mac:
    MacBook Pro
    Mobile Phone:
    iOS
    Nov 22, 2015 at 3:32 AM #8
    Chilloutsessions

    Chilloutsessions

    Joined:
    Aug 11, 2015
    Messages:
    38
    Motherboard:
    Gigabyte Z170 UD5-TH
    CPU:
    Intel Core i7 6700
    Graphics:
    GTX 980 Ti SC ACX 2.0 6GB
    Mac:
    MacBook Pro
    Mobile Phone:
    iOS
    Skylake Starter Guide

    It has been adjusted and I ran the Plutil test and I have corrected the Config.plist.
    I really do apologise if I seem completely hopeless as I'm learning about this stuff every day on the forums.

    Config.plist is now OK

    Iv been at this for about 4 hours. Any other ideas I'm well aware that Skylake is still undergoing testing.

    Ran the boot loader again and received the same screen.

    Just to throw it out there the uni beast usb is being created on a Macbook Pro would this affect anything?
     

    Attached Files:

  9. ammulder

    ammulder Moderator

    Joined:
    Sep 1, 2014
    Messages:
    3,353
    Motherboard:
    GA-H87N-WIFI
    CPU:
    Core i7-4790S
    Graphics:
    GT 740
    Mac:
    MacBook Pro, Mac mini
    Mobile Phone:
    iOS
    Nov 22, 2015 at 1:10 PM #9
    ammulder

    ammulder Moderator

    Joined:
    Sep 1, 2014
    Messages:
    3,353
    Motherboard:
    GA-H87N-WIFI
    CPU:
    Core i7-4790S
    Graphics:
    GT 740
    Mac:
    MacBook Pro, Mac mini
    Mobile Phone:
    iOS
    Skylake Starter Guide

    OK, the next thing I'd try is putting a SMBIOS definition into config.plist. You can see mine in the config.plist listed for download here: http://www.tonymacx86.com/el-capitan-desktop-guides/178197-guide-el-capitan-skylake-h170n-wifi.html

    If you use mine, you can either skip the memory part or edit the sizes and speeds to correspond with your installed memory.

    Another option would be to edit the config.plist with Clover Configurator and on the SMBIOS screen, hit the magic wand and then select Mac Pro and then MacPro3,1 and then hit both shake buttons a few times and save. I used iMac17,1 on mine, but MacPro3,1 is known to work on your board.

    By the way, since it's complaining about Bluetooth, do you have a Bluetooth device attached?
     
  10. Chilloutsessions

    Chilloutsessions

    Joined:
    Aug 11, 2015
    Messages:
    38
    Motherboard:
    Gigabyte Z170 UD5-TH
    CPU:
    Intel Core i7 6700
    Graphics:
    GTX 980 Ti SC ACX 2.0 6GB
    Mac:
    MacBook Pro
    Mobile Phone:
    iOS
    Nov 22, 2015 at 8:23 PM #10
    Chilloutsessions

    Chilloutsessions

    Joined:
    Aug 11, 2015
    Messages:
    38
    Motherboard:
    Gigabyte Z170 UD5-TH
    CPU:
    Intel Core i7 6700
    Graphics:
    GTX 980 Ti SC ACX 2.0 6GB
    Mac:
    MacBook Pro
    Mobile Phone:
    iOS
    Skylake Starter Guide

    Hi there.

    So I have been searching all the forums. It is completely strange as I have no bluetooth devices attached nor does the motherboard have the feature.

    I believe this is most likely the major problem and theres nothing else wrong!

    Is there anything i can do about this bluetooth problem? I believe its the only thing stopping it from booting the installer.

    I have also update to MacPro3,1 and followed instructions.
     

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice