Jump to content

[Guide] Mac OSX 10.12 and 10.13 with X99 Broadwell-E family and Haswell-E family


nmano
 Share

1,954 posts in this topic

Recommended Posts

Greetings all,

 

I have been trying to get CPU frequency (idle, turbo, etc) working properly on my gigabyte X99-UD4 (F23 BIOS) and 5960x CPU.  I have installed Sierra on my machine, and it runs very good thus far.  However, the CPU frequency never hits idle speeds - it always hovers around the 3GHz mark even at idle.  I have read about a thousand forum posts and tried countless tips to make things work.  Among the many things I have tried:

  • Setting the SMBIOS IDs to MacPro5,1  MacPro 6,1 and iMac 17.1
  • Per the first page of this thread, I have disabled EIST, C6/C6, and C1E settings in the BIOS.  I only have C3 enabled
  • Created a fresh ssdt.aml file per the ssdtPRGen.sh tool
  • Tried various config.plist files (per this thread: X99_Gold, X99_Gold_1, etc)

Please see the attached zip file of my current CLOVER configuration as well as the output from the AppleIntelInfo.dat tool.  You can also see from the screenshot the CPU frequency hovering between 3.0 and 4.3GHz. 

 

Hoping someone could help me figure this out.

 

Thanks.

CLOVER.zip

AppleIntelInfo.dat.zip

post-1418810-0-97913300-1508177418_thumb.png

  • Like 1
Link to comment
Share on other sites

Hi nmano,

 

thanks a lot for this giude - great.

 

After a while of trying to do a fresh install of High Sierra with other guides I found yours - it brought me quite far.

 

The USB installation rebootet 3 times (as I remember) including the long about 20 minute installation part.

But the last boot stuck directly after choosing another time new system disc in clover (screenshot), so installation is incomplete. Boot no longer possible with this target.

(Still there is another partition "Prebooter from Preboot...".)

 

I used your EFI exactly as it is, no modification, just  adding SMBIOS serial of course.

During all boots there was repeatly a message "boot endpoint has been activated..." as a easy to see problem.

 

Any sugestion what to do?

post-1621613-0-45539100-1508752646_thumb.jpg

Link to comment
Share on other sites

SSDT_2017_X99

This SSDT patches work with DSDT.

I made 23 SSDT patches for X99.

This SSDT work with DSDT.

I update latest BIOS F22

Don’t use MY DSDT.

#1 Check down Rename DSDT Detail.

#2 After rename you have to patch  to X99_comfile and sleep with tool MaciASL.

#3 you have to modify SSDT for your devices.

#I got 17 PCI SLOT If anybody more then 17 slot I like to see that.

#This SSDT patches fixes my NVMe Yellow Icon.

#Please like or not first test.

 

#Rename info_1

#If you have GPU card in slot BR3C

# 1. Under Device BR3C - Verify IOReg/H000

# 2. Rename device H000 to device H00Y 

# 3. Rename device H001 to device HDA1  (Nvidia/AMD HDMI audio)

# 4. Enter Compile 

# 5. Look Compile summary just click each red line and Insert H00Y and HDA1(SSDT Rename GFX1 and HDAU).

 

#Maintained by: N.Mano

#Rename info_2

#If you have wifi card in slot BR2A

# 1. Under Device BR2A - Verify IOReg/H000

# 2. DSDT_Rename device H000 to device ARP0 

# 3. (SSDT will Rename ARP0 to ARPT)

# 4. Enter Compile 

# 5. Look Compile summary just click each red line and Insert H000 and ARP0(SSDT Rename ARP0 and ARPT).

 

#Maintained by: N.Mano

#Rename info_3

#If you have FireWire IEEE-1394a in slot BR1A

# 1. Under Device BR1A - Verify IOReg/H000

# 2. DSDT_Rename device H000 to device PCIA 

# 3. (SSDT patched to Rename PCIA to PCIB)

# 4. Enter Compile 

# 5. Look Compile summary just click each red line and Insert H000 to PCIA(SSDT Rename PCIA to PCIB).

#Maintained by: N.Mano

#Rename info_4

#if you have NVMe SSD Controller SM961 in BR3A SLOT.

# 1. Under Device BR3A - Verify IOReg/H000

# 2. DSDT_Rename device H000 to device NVM1 

# 3. (SSDT will Rename NVM1 to NVME)

# 4. Enter Compile 

# 5. Look Compile summary just click each red line and Insert H000 and NVM1(SSDT Rename NVM1 to NVME).

 

 

X99_SSDT_2017.zip

post-413859-0-04886500-1508774046_thumb.png

  • Like 2
Link to comment
Share on other sites

Hey guys and interesting question.

 

I've dual E5-2696 V4 cut down to 16 cores per CPU totaling 32 Cores (64 Threads).

 

Why do I have 48 CPU mentions in the IOREG?

Does it means the OS might Get 24 Core CPU support? https://ark.intel.com/products/120504/Intel-Xeon-Platinum-8168-Processor-33M-Cache-2_70-GHz

 

VooDooTS is locked to CPU 32.

 

post-6786-0-30796900-1508802112_thumb.jpeg

  • Like 1
Link to comment
Share on other sites

Off topic;

 

Been waiting for a while for this https://www.asus.com/Commercial-Servers-Workstations/WS-C621E-SAGE/overview/' class='bbc_url' title='External link' rel='nofollow external'> https://www.asus.com/Commercial-Servers-Workstations/WS-C621E-SAGE/overview/

 

Gonna be a beast, highly unlikely that the new Mac Pro that’s supposedly coming next year will have the lga3467 in it, even if it did the 64core limit will killing it for us, imaging dual 28 cores or 112 thread with 1tb of memory and 3x Vega or Titan X with u.2 raid 0.

 

Oh things I can do with it......

 

The dream machine. But hey I guess time to switch back to windows for that....

  • Like 2
Link to comment
Share on other sites

All IN ONE SSDT FOR X99


 


#You have to rename device first.


#you can rename DSDT or Clover config


#After rename devices you have to patched (X99_comfile and sleep) your DSDT.


 


I am so happy to made this SSDT map for X99.Its very smooth an clean boot.


Don’t install  my SSDT and DSDT please make for your own DSDT and SSDT.


Enjoy :thumbsup_anim:


#Rename info_1


#If you have GPU card in slot BR3C


# 1. Under Device BR3C - Verify IOReg/H000


# 2. Rename device H000 to device GFX1 


# 3. Rename device H001 to device HDAU  (Nvidia/AMD HDMI audio)


# 4. Enter Compile 


# 5. Look Compile summary just click each red line and Insert H00Y and HDA1(SSDT Rename GFX1 and HDAU).


 


#Maintained by: N.Mano


#Rename info_2


#If you have wifi card in slot BR2A


# 1. Under Device BR2A - Verify IOReg/H000


# 2. DSDT_Rename device H000 to device ARPT 


 


 


#Maintained by: N.Mano


#Rename info_3


#If you have FireWire IEEE-1394a in slot BR1A


# 1. Under Device BR1A - Verify IOReg/H000


# 2. DSDT_Rename device H000 to device PCIA 


 


#Rename info_4


#if you have NVMe SSD Controller SM961 in BR3A SLOT.


# 1. Under Device BR3A - Verify IOReg/H000


# 2. DSDT_Rename device H000 to device NVME


 


X99_SSDT_ALL IN ONE.zip

post-413859-0-62143500-1508847949_thumb.png

post-413859-0-26002300-1508852364_thumb.png

  • Like 1
Link to comment
Share on other sites

Off topic;

 

Been waiting for a while for this https://www.asus.com/Commercial-Servers-Workstations/WS-C621E-SAGE/overview/' class='bbc_url' title='External link' rel='nofollow external'> https://www.asus.com/Commercial-Servers-Workstations/WS-C621E-SAGE/overview/

 

Gonna be a beast, highly unlikely that the new Mac Pro that’s supposedly coming next year will have the lga3467 in it, even if it did the 64core limit will killing it for us, imaging dual 28 cores or 112 thread with 1tb of memory and 3x Vega or Titan X with u.2 raid 0.

 

Oh things I can do with it......

 

The dream machine. But hey I guess time to switch back to windows for that....

 

 

 

Similar but Gigabyte, you can see how Apple could go modular Mac with a prettier/more elegant solution

 

http://b2b.gigabyte.com/Density-Optimized/H231-G20-rev-100#ov

Link to comment
Share on other sites

Hi guys

X99 AUTO RENAME PATCHES for DSDT/SSDT

Enjoy :thumbsup_anim:

# X99_Maintained and disassembled by:N.Mano
# Credit: RehabMan
#X99_AUTO RENAME DEVICES_Patches.
#X99_Rename_patch_1
#If you have GPU card in slot BR3C
# 1. Under Device BR3C - Verify IOReg/H000
# 2. Rename device H000 to device GFX1 
# 3. Rename device H001 to device HDAU  (Nvidia/AMD HDMI audio)
#Remove device D083 in BR3C
into Device label D083 remove_entry;
into_all all code_regex \_SB.PCI0.BR3C.H000 replaceall_matched begin _SB.PCI0.BR3C.GFX1 end;
into_all all code_regex \_SB.PCI0.BR3C.H001 replaceall_matched begin _SB.PCI0.BR3C.HDAU end;
into device label H000 parent_label BR3C set_label begin GFX1 end;
into device label H001 parent_label BR3C set_label begin HDAU end;
# X99_Maintained and disassembled by:N.Mano
# Credit: RehabMan

#X99_Rename_patch_2
#If you have GPU card in slot BR2A
# 1. Under Device BR2A - Verify IOReg/H000
# 2. Rename device H000 to device GFX1 
# 3. Rename device H001 to device HDAU  (Nvidia/AMD HDMI audio)
into_all all code_regex \_SB.PCI0.BR2A.H000 replaceall_matched begin _SB.PCI0.BR2A.GFX1 end;
into_all all code_regex \_SB.PCI0.BR2A.H001 replaceall_matched begin _SB.PCI0.BR2A.HDAU end;
into device label H000 parent_label BR2A set_label begin GFX1 end;
into device label H001 parent_label BR2A set_label begin HDAU end;
#X99_Rename_patch_3
# X99_Maintained and disassembled by:N.Mano
# Credit: RehabMan
#If you have wifi card in slot BR2A
# 1. Under Device BR2A - Verify IOReg/H000
# 2. DSDT_Rename device H000 to device ARPT
into Device label D07B remove_entry;
into_all all code_regex \_SB.PCI0.BR2A.H000 replaceall_matched begin _SB.PCI0.BR2A.ARPT end;
into device label H000 parent_label BR2A set_label begin ARPT end;
#X99_Rename_patch_4
# X99_Maintained and disassembled by:N.Mano
# Credit: RehabMan
#If you have FireWire IEEE-1394a in slot BR1A
# 1. Under Device BR1A - Verify IOReg/H000
# 2. DSDT_Rename device H000 to device PCIA
into_all all code_regex \_SB.PCI0.BR1A.H000 replaceall_matched begin _SB.PCI0.BR1A.PCIA end;
into device label H000 parent_label BR1A set_label begin PCIA end;
#X99_Rename_patch_5
# X99_Maintained and disassembled by:N.Mano
# Credit: RehabMan
#if you have NVMe SSD Controller SM961 in BR3A SLOT.
# 1. Under Device BR3A - Verify IOReg/H000
# 2. DSDT_Rename device H000 to device NVME
into Device label D081 remove_entry;
into_all all code_regex \_SB.PCI0.BR3A.H000 replaceall_matched begin _SB.PCI0.BR3A.NVME end;
into device label H000 parent_label BR3A set_label begin NVME end;
#X99_REMOVE device_Add Device_Patch_6
#if you have NVMe SSD Controller SM951 in RP01 SLOT.
# 1 Remove device D073 in RP01
# 2.  Insert Device SSD0
into Device label D073 remove_entry;
into device label RP01 insert begin
 Device (SSD0)\n
 {\n
   Name (_ADR, Zero)\n             
 }\n

end;
#X99_REMOVE device_Add Device_Patch_7
# X99_Maintained and disassembled by:N.Mano
# Credit: RehabMan
#if you have USB 3 CARD in  SLOT RP07.
into Device label D079 remove_entry;
into device label RP07 insert begin
 Device (XHC2)\n
 {\n
   Name (_ADR, Zero)\n             
 }\n

end;
# X99_Maintained and disassembled by:N.Mano
# Credit: RehabMan
#X99_REMOVE device_Add Device_Patch_8
#if you have WIFI in  SLOT RP04.
into Device label D076 remove_entry;
into device label RP04 insert begin
 Device (ARP1)\n
 {\n
   Name (_ADR, Zero)\n             
 }\n

end;
  • Like 6
Link to comment
Share on other sites

ALL IN ONE SSDT

# X99_SSDT_Maintained and disassembled by:N.Mano
# Credit: RehabMan
#Worked ALL Sleep/HDMI 

#NO DSDT
#Enjoy

 

 

ALL IN ONE SSDT_Latest.zip

post-413859-0-68753000-1509142929_thumb.png

  • Like 5
Link to comment
Share on other sites

How to Edit this for my PC? what to change for my specifications?

Request

#Ori DSDT

#ioreg

#Clover config

#patched DSDT/SSDT

Link to comment
Share on other sites

X99_All IN ONE_SSDT FOR GIGABYTE & ASUS

#ADD your layout-id

#Check rename detail in config

#Check Your Devices

X99_Gigabyte_ASUS.zip

post-413859-0-55455200-1509239046_thumb.png

  • Like 2
Link to comment
Share on other sites

Is there any chance "nmano" to help me create ssdt for me GPUs. I need this patch to boot osx whiteout black screen. I have first gpu in br2a and second in br3c. 

 GPU1:

Device (GFX1)
                {
                    Name (_ADR, Zero)  // _ADR: Address
                    OperationRegion (PCIB, PCI_Config, Zero, 0x0100)
                    Field (PCIB, AnyAcc, NoLock, Preserve)
                    {
                        Offset (0x10), 
                        BAR0,   32, 
                        BAR1,   32, 
                        BAR2,   64, 
                        BAR4,   32, 
                        BAR5,   32
                    }

                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                    {
                        Store (Package (0x1C)
                            {
                                "AAPL,slot-name", 
                                Buffer (0x07)
                                {
                                    "Slot-4"
                                }, 

                                "@0,name", 
                                Buffer (0x0C)
                                {
                                    "ATY,Guariba"
                                }, 

                                "@1,name", 
                                Buffer (0x0C)
                                {
                                    "ATY,Guariba"
                                }, 

                                "@2,name", 
                                Buffer (0x0C)
                                {
                                    "ATY,Guariba"
                                }, 

                                "@3,name", 
                                Buffer (0x0C)
                                {
                                    "ATY,Guariba"
                                }, 

                                "@4,name", 
                                Buffer (0x0C)
                                {
                                    "ATY,Guariba"
                                }, 

                                "ATY,Card#", 
                                Buffer (0x0C)
                                {
                                    "113-4E3531U"
                                }, 

                                "ATY,Copyright", 
                                Buffer (0x33)
                                {
                                    "(C) 1988-2017, AMD Technologies Inc."
                                }, 

                                "ATY,Rom#", 
                                Buffer (0x1D)
                                {
                                    "GV-RX580GAMING-8GD/F10/058AE"
                                }, 

                                "ATY,VendorID", 
                                Buffer (0x02)
                                {
                                     0x02, 0x10                                     
                                }, 

                                "ATY,DeviceID", 
                                Buffer (0x02)
                                {
                                     0xDF, 0x67                                     
                                }, 

                                "device_type", 
                                Buffer (0x12)
                                {
                                    "ATY,BaladiParent"
                                }, 

                                "model", 
                                Buffer (0x13)
                                {
                                    "RX 580 G1 GIGABYTE"
                                }, 

                                "hda-gfx", 
                                Buffer (0x0A)
                                {
                                    "onboard-1"
                                }
                            }, Local0)
                        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }

                    Method (_INI, 0, NotSerialized)  // _INI: Initialize
                    {
                        If (LEqual (BAR5, Zero))
                        {
                            Store (BAR2, Local0)
                        }
                        Else
                        {
                            Store (BAR5, Local0)
                        }

                        OperationRegion (GREG, SystemMemory, And (Local0, 0xFFFFFFFFFFFFFFF0), 0x8000)
                        Field (GREG, AnyAcc, NoLock, Preserve)
                        {
                            Offset (0x6800), 
                            GENA,   32, 
                            GCTL,   32, 
                            LTBC,   32, 
                            Offset (0x6810), 
                            PSBL,   32, 
                            SSBL,   32, 
                            PTCH,   32, 
                            PSBH,   32, 
                            SSBH,   32, 
                            Offset (0x6848), 
                            FCTL,   32, 
                            Offset (0x6EF8), 
                            MUMD,   32
                        }

                        Store (Zero, FCTL)
                        Store (Zero, PSBH)
                        Store (Zero, SSBH)
                        Store (Zero, LTBC)
                        Store (One, GENA)
                        Store (Zero, MUMD)
                    }
                }

                Device (HDAU)
                {
                    Name (_ADR, One)  // _ADR: Address
                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                    {
                        Store (Package (0x02)
                            {
                                "hda-gfx", 
                                Buffer (0x0A)
                                {
                                    "onboard-1"
                                }
                            }, Local0)
                        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }
                }

GPU2:

Device (GFX2)
                {
                    Name (_ADR, Zero)  // _ADR: Address
                    OperationRegion (PCIB, PCI_Config, Zero, 0x0100)
                    Field (PCIB, AnyAcc, NoLock, Preserve)
                    {
                        Offset (0x10), 
                        BAR0,   32, 
                        BAR1,   32, 
                        BAR2,   64, 
                        BAR4,   32, 
                        BAR5,   32
                    }

                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                    {
                        Store (Package (0x1A)
                            {
                                "AAPL,slot-name", 
                                Buffer (0x07)
                                {
                                    "Slot-1"
                                }, 

                                "@0,name", 
                                Buffer (0x0B)
                                {
                                    "ATY,Baladi"
                                }, 

                                "@1,name", 
                                Buffer (0x0B)
                                {
                                    "ATY,Baladi"
                                }, 

                                "@2,name", 
                                Buffer (0x0B)
                                {
                                    "ATY,Baladi"
                                }, 

                                "@3,name", 
                                Buffer (0x0B)
                                {
                                    "ATY,Baladi"
                                }, 

                                "ATY,Card#", 
                                Buffer (0x11)
                                {
                                    "113-C6710101-100"
                                }, 

                                "ATY,Copyright", 
                                Buffer (0x25)
                                {
                                    "(C) 1988-2017, AMD Technologies Inc."
                                }, 

                                "ATY,Rom#", 
                                Buffer (0x36)
                                {
                                    "C67101 HAWAII XT A0 GDDR5 4GB 64MX32 STILT MLU +37.5M"
                                }, 

                                "ATY,VendorID", 
                                Buffer (0x02)
                                {
                                     0x02, 0x10                                     
                                }, 

                                "ATY,DeviceID", 
                                Buffer (0x02)
                                {
                                     0xB0, 0x67                                     
                                }, 

                                "device_type", 
                                Buffer (0x11)
                                {
                                    "ATY,BaladiParent"
                                }, 

                                "model", 
                                Buffer (0x14)
                                {
                                    "R9 290X Asus MATRIX"
                                }, 

                                "hda-gfx", 
                                Buffer (0x0A)
                                {
                                    "onboard-1"
                                }
                            }, Local0)
                        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }

                    Method (_INI, 0, NotSerialized)  // _INI: Initialize
                    {
                        If (LEqual (BAR5, Zero))
                        {
                            Store (BAR2, Local0)
                        }
                        Else
                        {
                            Store (BAR5, Local0)
                        }

                        OperationRegion (GREG, SystemMemory, And (Local0, 0xFFFFFFFFFFFFFFF0), 0x8000)
                        Field (GREG, AnyAcc, NoLock, Preserve)
                        {
                            Offset (0x6800), 
                            GENA,   32, 
                            GCTL,   32, 
                            LTBC,   32, 
                            Offset (0x6810), 
                            PSBL,   32, 
                            SSBL,   32, 
                            PTCH,   32, 
                            PSBH,   32, 
                            SSBH,   32, 
                            Offset (0x6848), 
                            FCTL,   32, 
                            Offset (0x6EF8), 
                            MUMD,   32
                        }

                        Store (Zero, FCTL)
                        Store (Zero, PSBH)
                        Store (Zero, SSBH)
                        Store (Zero, LTBC)
                        Store (One, GENA)
                        Store (Zero, MUMD)
                    }
                }

                Device (HDAU)
                {
                    Name (_ADR, One)  // _ADR: Address
                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                    {
                        Store (Package (0x02)
                            {
                                "hda-gfx", 
                                Buffer (0x0A)
                                {
                                    "onboard-1"
                                }
                            }, Local0)
                        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }
                }
  • Like 2
Link to comment
Share on other sites

Hi NMano

 

Thanks for your contributions here.

So my question.... do you get full performance with your approach without the PMdriver.kext from Brummbar?

 

Since you did not give very detailed instructions, it is hard for me to fully understand your procedure. It would be helpful if you could explain in more detail.

 

I have a fully running X99 system with 6900k processor. Not kernel patches are applied, all is done with Clover (latest version).

The only drawback.... in order to get full performance I have to use Pmdriver.kext which kills sleep.

Other than that..... rock solid system, no crashes at all.

 

Regards, Mike

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

Hi Guys

This patched for X99_All_SSDT
#You have to patch over ori SSDT
#After patched removed this part

  
  Method (_SB.PCI0.X99._DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
    {
        Store (Package (0x16) {}, Local0)
        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))        Return (Local0)

post-413859-0-34310600-1510154646_thumb.png

post-413859-0-73453600-1510154671_thumb.png

SSDT_patched_X99.zip

  • Like 2
Link to comment
Share on other sites

Energy Saver dual slider for X99

UnifiedSleepSliderPref = No

Replace

/IOPlatformPluginFamily.kext/Contents/PlugIns/X86PlatformPlugin.kext/Contents/Resources

post-413859-0-38189600-1510410954_thumb.png

Mac-F60DEB81FF30ACF6.plist.zip

  • Like 3
Link to comment
Share on other sites

Hi Sygey02

#Remove All DSDT and SSDT and config

#Replace config and SSDT-X99-ALL

#test and report with screen shots.

Enjoy

X99 Gigabyte ultra gaming_SSDT ALL.zip

  • Like 2
Link to comment
Share on other sites

Tank you! it works, but my ssd Samsung its 950 PRO

SPRS missing 

I need ssdt for powermangement? or no?

Hi

#Remove AppleALC

#Install AppleHDA with Easykext Utility

#LayoutID = 9

AppleHDA-1150-10.13.1.zip

Link to comment
Share on other sites

The same state with sound ..no audio devices with audio id 9 in config and applehda.kext!

Can you test sleep work or not?

I change Layout ID 9

Try this

X99 Gigabyte ultra gaming_SSDT ALL.zip

Link to comment
Share on other sites

Not working!

when I press sllep command it go to sleep, but it dozen,t resume my os high Sierra wen I press power button for wake.


No Sound device!


Can you test sleep work or not?


I change Layout ID 9

Try this

No Sound device!

Link to comment
Share on other sites

Not working!

when I press sllep command it go to sleep, but it dozen,t resume my os high Sierra wen I press power button for wake.

No Sound device!

Its normal.

check your sound.

Link to comment
Share on other sites

 Share

×
×
  • Create New...