nmano Posted July 17, 2016 Share Posted July 17, 2016 (edited) Guide update 26-07-2017 X99 Mac osx 10.13 First of all you'll need to have Install macOS 10.13 Beta.app in your Applications folder. Then, you'll need to right click it and then go to Show Package Contents/Contents/Shared Support and from there mount InstallESD.dmg. Once mounted there you'll find Packages folder and inside Core.pkg. Double click Core.pkg and this will install macOS to desired partition, SSD or HDD. Once done, mount BaseSystem.dmg and then copy System/Library/CoreServices/boot.efi and paste it to the same location System/Library/CoreServices/boot.efi on the installed drive. Boot it with your existing Clover and in few seconds you'll reach desktop screen. Thank you. Clover team and Apple ALC and others naveedamad, Guide update 23-07-2016 Mac OSX 10.12 with X99 Broadwell-E family and Haswell-E family X99Gaming G1 wifi 5960X GTX 970 Samsung SM951 256GB AHCI Corsair 780T Corsair H115i I install Mac OSX 10.12 (16A239j) with X99 LGA2011-V3 platform. It’s fully supported now we don’t need add FakeCPUID anymore. 5960X needs only CloverPatch. The Samsung SM951 AHCI model is fully supported by Mac OSX Pro. OSX 10.12 Installation Notes: Set Mac osx Installer (I updated files) Remove DSDT and SSDT Update Clover to latest (_v2.3k_r3652_Special Edition). Update nvidia latest web drivers. Set patch 1 Change 15 Port Limit To 30 in XHCI Kext 10.12(99-series) Set patch 2 5960XPatch 10.12 by Brumbaer Creative Sound worked with AppleALC.kext Install X99_Injector USB 3.kext and set your DSDT XHC to XHCI You have to set IOCPUNumber to VoodooTSCSync.kext. BIOS Configuration for USB 3 Flash drive with clover Intel USB 3.0 XHCI Mode Enabled CSM Disable XHCI-Hand-off-Enabled EHCI-Hand-off-Enabled BIOS Configuration for USB 2 Flash drive with clover Intel USB 3.0 XHCI Mode Smart Auto CSM Disable XHCI-Hand-off-Enabled EHCI-Hand-off-Enabled BIOS Configuration for XCPM XMP: profile 1 C1E: Disable C6/C7: Disable CPU Thermal Monitor: Disable C3: Enable EIST: Disable After installation you have to set DSDT and SSDT.Now graphics work very well after clover update.We have to set nvda_drv=1 and patched AppleGraphicsControl.kext I get Script to generate a SSDT for Power Management https://github.com/P...ha/ssdtPRGen.sh AppleALC https://github.com/vit9696/AppleALC AppleALC Boot Arguments 10.12 you have to add -alcbeta -v darkwake=0 npci=0x3000 nvda_drv=1 -alcbeta Look My Files Mac osx Installer config.plist kexts (You have set IOCPUNumber to VoodooTSCSync.kext) DSDT patches (Before Devices patch check your devices rename H000) SCALED RESOLUTIONS FOR YOUR MONITORhttps://comsysto.github.io/Display-...or-with-HiDPI-Support-For-Scaled-Resolutions/ Enable HiDPI Modesudo defaults write /Library/Preferences/com.apple.windowserver.plist DisplayResolutionEnabled -bool trueSet your DisplayProductName Set your DisplayProductID Set your DisplayVendorID Set Scale Resolutions Download your file then overrides your display vendorId like this.Example for my Monitor:sudo cp ~/Downloads/DisplayProductID-79f.plist /System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-4c2d/DisplayProductID-79f Auto overclock My system(X99GamingG1) support Auto overclock just press back panel OC button. Not work Automatically Adjust Brightness: No Sleep USB 3 Update usb3 XHC patch its worked 10.11 and 10.12 EHC1 to EH01 EHC2 to EH02 XHC to name_adr 0x00140000 If you update this patch you have to install X99_Injector USB 3.kext in same folder(USB 3 XHC Patch)I updated. AppleUSBXHCIPCI Find 83BD74FFFFFF10 Replace 83BD74FFFFFF16 10.12 DP5 change 15 port limit to 20 in AppleUSBXHCIPCI X99 Series with GC-ALPINE RIDGE rev 2.0 My motherboard is not in this list.(X99 Gaming G1) but Its worked.I thing Mac driver its supported. I just install SSDT.(SSDT-X99-NH0.aml) Unknown CPU Fixed About this Mac unknown cpu error fixed. Thius patched worked Haswell-E CPU and Broadwell CPU 1-Enable in config xcpm_bootstrap_Broadwell or Haswell 2-Enable in config xcpm_cpuid_set_infoBroadwell or Haswell 3-FakeCPUID is Broadwell 0x040674 4.CPU Type is Broadwell 0x0a02 5-FakeCPUID is Haswell 0x0306F2 6.CPU Type is Haswell 0x0a01 XCPM Brodwell and Haswell.zip This config supported haswell-E and Broadwell CPUs bootstrap and cpuid_set_info. New FakeCPUID Credit-Pikeralpha 61 / 0x3D (Broadwell) = 0x0306D0 63 / 0x3F (Haswell E) = 0x0306F2 70 / 0x46 (Chrystalwell) = 0x040660 71 / 0x47 (Broadwell H) = 0x040670 All IN ONE SSDT and DSDT AUTO PATCHES # X99_Maintained and disassembled by:N.Mano # X99_SSDT_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. # Compiler Options:ACPI 6.1 # Features-Allows automatically setting PCI info # X99 Gaming G1 wifi # Bios update F22 # X99_MUT0 warning fix # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. into_all all code_regex (Acquire\s\(MUT0,\s0x)....\) replace_matched begin Acquire (MUT0, 0xFFFF) end; # X99_Fixed_Error_Possible operator timeout is ignored # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. into_all all code_regex (Acquire\s\(....,\s0x)....\) replace_matched begin %1FFFF) end; #X99_SSTS Duplicate value in list (Source is the same as Target) # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. into_all all code_regex Store\s\(SSTS,\sSSTS\) replace_matched begin Store ("SSTS", SSTS) end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. # X99_Device injection for Not all control paths return a value _CRS into method label _CRS parent_label _SB.TPM code_regex (Return\s\(CRST\)) remove_matched; into method label _CRS parent_label _SB.TPM insert begin Return (CRST) end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_ Device injection for Not all control paths return a value OE1X into method label OE1X parent_label _GPE code_regex (Return\s\(Zero\)) remove_matched; into method label OE1X parent_label _GPE insert begin Return (Zero) end; # Device injection for Not all control paths return a value _OSC # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #15367, 3107, Reserved method must return a value (Buffer required for _OSC) into method label _OSC parent_label PCI0 code_regex (Return\s\(Zero\)) remove_matched; into method label _OSC parent_label PCI0 insert begin Return (Zero) end; into method label _OSC parent_label PCI1 code_regex (Return\s\(Zero\)) remove_matched; into method label _OSC parent_label PCI1 insert begin Return (Zero) end; into method label _OSC parent_label PCI2 code_regex (Return\s\(Zero\)) remove_matched; into method label _OSC parent_label PCI2 insert begin Return (Zero) end; into method label _OSC parent_label PCI3 code_regex (Return\s\(Zero\)) remove_matched; into method label _OSC parent_label PCI3 insert begin Return (Zero) end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. into_all method label _OSC set_label begin OSC end; into_all method code_regex _OSC replaceall_matched begin OSC end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. # Darwin_Method (OSFL, 0, NotSerialized) into_all method code_regex If\s+\(_OSI\s+\(\"Windows\s2012\"\)\) replace_matched begin If(LOr(_OSI("Darwin"),_OSI("Windows 2012"))) end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. # sometimes in Scope (_SB)into method label _INI into method label _INI parent_label _SB code_regex If\s+\(_OSI\s+\(\"Windows\s2012\"\)\) replace_matched begin If(LOr(_OSI("Darwin"),_OSI("Windows 2012"))) end; #X99_Rename_patches # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. into device label PIC set_label begin IPIC end; into device label TMR set_label begin TIMR end; into device label _T_0 set_label begin T_0 end; into device label _T_1 set_label begin T_1 end; into_all all code_regex _T_0 replaceall_matched begin T_0 end; into_all all code_regex _T_1 replaceall_matched begin T_1 end; into device label USB0 set_label begin UHC1 end; into device label USB1 set_label begin UHC2 end; into device label USB2 set_label begin UHC3 end; into device label USB3 set_label begin UHC4 end; into device label USB4 set_label begin UHC5 end; into device label USB5 set_label begin UHC6 end; into device label USB6 set_label begin UHC7 end; into device label USB7 set_label begin UHC8 end; into device label XHCI set_label begin XHC1 end; into device label FPU set_label begin MATH end; into_all all code_regex USB0 replaceall_matched begin UHC1 end; into_all all code_regex USB1 replaceall_matched begin UHC2 end; into_all all code_regex USB2 replaceall_matched begin UHC3 end; into_all all code_regex USB3 replaceall_matched begin UHC4 end; into_all all code_regex USB4 replaceall_matched begin UHC5 end; into_all all code_regex USB5 replaceall_matched begin UHC6 end; into_all all code_regex USB6 replaceall_matched begin UHC7 end; into_all all code_regex USB7 replaceall_matched begin UHC8 end; into_all all code_regex XHCI replaceall_matched begin XHC1 end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Rename_patch_GFX1_HDAU #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 #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Rename_patch_ARPT #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_PCIA # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #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_NVME # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #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_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_IRQ_patch_PIC_TMR_HPET_RTC # IRQ fix(Device (PIC),Device (TMR),Device (HPET),Device (RTC) into device name_hid PNP0000 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched; into device name_hid PNP0100 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched; into device name_hid PNP0B00 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched; into device name_hid PNP0103 code_regex IRQNoFlags\s\(\)\n\s+\{.*\} removeall_matched; into device name_hid PNP0103 code_regex Name\s\(([^,]+),\sResourceTemplate\s\(\)\n\s+\{((?:.|\n)*)\}\) replace_matched begin Name (%1, ResourceTemplate()\n {\n IRQNoFlags() { 0, 8, 11, 15 }\n %2 })\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_RTC_patch_1 # RTC into device name_hid PNP0B00 code_regex (IO\s\((?:\s*[^,]+,\s*(?:\/\/\s.*)?\s*\n)+\s*)(\dx\d+)(,\s*(?:\/\/\s.*)?\s*\n\s*\)) replace_matched begin %10x08%3 end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_HPET_patch_2 # HPET fix to avoid AppleIntelCPUPowerManagement panic into method label _STA parent_hid PNP0103 remove_entry; into device name_hid PNP0103 code_regex Name\s\(_STA\,\s+0x0F\) remove_matched; into device name_hid PNP0103 insert begin Name (_STA, 0x0F)\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Min/Max/Length_Errors_Fixed_1 # 15571, 3090, Min/Max/Length/Gran are all zero, but no resource tag into_all all code_regex QWordMemory\s\(ResourceProducer,\sPosDecode,\sMinFixed,\sMaxFixed,\sNonCacheable,\sReadWrite,\n\s+0x0000000000000000,\s+//\sGranularity\n\s+0x0000000000000000,\s+//\sRange\sMinimum\n\s+0x0000000000000000,\s+//\sRange\sMaximum\n\s+0x0000000000000000,\s+//\sTranslation\sOffset\n\s+0x0000000000000000,\s+//\sLength replace_matched begin QWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,\n 0x0000000000000000, // Granularity\n 0x0000000000000000, // Range Minimum\n 0x0000000000000000, // Range Maximum\n 0x0000000000000000, // Translation Offset\n 0x0000000000000001, // Length\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Min/Max/Length_Errors_Fixed_2 # 32186, 3090, Min/Max/Length/Gran are all zero, but no resource tag into_all all code_regex DWordMemory\s\(ResourceProducer,\sPosDecode,\sMinFixed,\sMaxFixed,\sCacheable,\sReadWrite,\n\s+0x00000000,\s+//\sGranularity\n\s+0x00000000,\s+//\sRange\sMinimum\n\s+0x00000000,\s+//\sRange\sMaximum\n\s+0x00000000,\s+//\sTranslation\sOffset\n\s+0x00000000,\s+//\sLength replace_matched begin DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,\n 0x00000000, // Granularity\n 0x00000000, // Range Minimum\n 0x00000000, // Range Maximum\n 0x00000000, // Translation Offset\n 0x00000001, // Length\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Min/Max/Length_Errors_Fixed_3 # 32214, 3090, Min/Max/Length/Gran are all zero, but no resource tag into_all all code_regex QWordMemory\s\(ResourceProducer,\sPosDecode,\sMinFixed,\sMaxFixed,\sNonCacheable,\sReadWrite,\n\s+0x0000000000000000,\s+//\sGranularity\n\s+0x0000000000000000,\s+//\sRange\sMinimum\n\s+0x0000000000000000,\s+//\sRange\sMaximum\n\s+0x0000000000000000,\s+//\sTranslation\sOffset\n\s+0x0000000000000000,\s+//\sLength replace_matched begin QWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,\n 0x0000000000000000, // Granularity\n 0x0000000000000000, // Range Minimum\n 0x0000000000000000, // Range Maximum\n 0x0000000000000000, // Translation Offset\n 0x0000000000000001, // Length\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Min/Max/Length_Errors_Fixed_4 # 32214, 3090, Min/Max/Length/Gran are all zero, but no resource tag into_all all code_regex DWordMemory\s\(ResourceProducer,\sPosDecode,\sMinFixed,\sMaxFixed,\sNonCacheable,\sReadWrite,\n\s+0x00000000,\s+//\sGranularity\n\s+0x00000000,\s+//\sRange\sMinimum\n\s+0x00000000,\s+//\sRange\sMaximum\n\s+0x00000000,\s+//\sTranslation\sOffset\n\s+0x00000000,\s+//\sLength replace_matched begin DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,\n 0x00000000, // Granularity\n 0x00000000, // Range Minimum\n 0x00000000, // Range Maximum\n 0x00000000, // Translation Offset\n 0x00000001, // Length\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Address Min is greater then address max_Fixed_1 #32195, 6051, Address Min is greater than Address Max into_all all code_regex WordIO\s\(ResourceProducer,\sMinFixed,\sMaxFixed,\sPosDecode,\sEntireRange,\n\s+0x0000,\s+//\sGranularity\n\s+0x4158,\s+//\sRange\sMinimum\n\s+0x0000,\s+//\sRange\sMaximum\n\s+0x0000,\s+//\sTranslation\sOffset\n\s+0x0001,\s+//\sLength replace_matched begin WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,\n 0x0000, // Granularity\n 0x4158, // Range Minimum\n 0x4159, // Range Maximum\n 0x0000, // Translation Offset\n 0x0002, // Length\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Address Min is greater then address max_Fixed_2 #32202, 6051, Address Min is greater than Address Max into_all all code_regex WordIO\s\(ResourceProducer,\sMinFixed,\sMaxFixed,\sPosDecode,\sEntireRange,\n\s+0x0000,\s+//\sGranularity\n\s+0x5758,\s+//\sRange\sMinimum\n\s+0x0000,\s+//\sRange\sMaximum\n\s+0x0000,\s+//\sTranslation\sOffset\n\s+0x0000,\s+//\sLength replace_matched begin WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,\n 0x0000, // Granularity\n 0x5758, // Range Minimum\n 0x5759, // Range Maximum\n 0x0000, // Translation Offset\n 0x0002, // Length\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Address Min is greater then address max_Fixed_3 #32202, 6051, Address Min is greater than Address Max into_all all code_regex WordIO\s\(ResourceProducer,\sMinFixed,\sMaxFixed,\sPosDecode,\sEntireRange,\n\s+0x0000,\s+//\sGranularity\n\s+0x5858,\s+//\sRange\sMinimum\n\s+0x0000,\s+//\sRange\sMaximum\n\s+0x0000,\s+//\sTranslation\sOffset\n\s+0x0000,\s+//\sLength replace_matched begin WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,\n 0x0000, // Granularity\n 0x5858, // Range Minimum\n 0x5859, // Range Maximum\n 0x0000, // Translation Offset\n 0x0002, // Length\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Address Min is greater then address max_Fixed_3 #39601, 6051, Address Min is greater than Address Max into_all all code_regex WordIO\s\(ResourceProducer,\sMinFixed,\sMaxFixed,\sPosDecode,\sEntireRange,\n\s+0x0000,\s+//\sGranularity\n\s+0x4558,\s+//\sRange\sMinimum\n\s+0x0000,\s+//\sRange\sMaximum\n\s+0x0000,\s+//\sTranslation\sOffset\n\s+0x0001,\s+//\sLength replace_matched begin WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,\n 0x0000, // Granularity\n 0x4558, // Range Minimum\n 0x4559, // Range Maximum\n 0x0000, // Translation Offset\n 0x0002, // Length\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Address Min is greater then address max_Fixed_4 #39610, 6051, Address Min is greater than Address Max into_all all code_regex WordIO\s\(ResourceProducer,\sMinFixed,\sMaxFixed,\sPosDecode,\sEntireRange,\n\s+0x0000,\s+//\sGranularity\n\s+0x4458,\s+//\sRange\sMinimum\n\s+0x0000,\s+//\sRange\sMaximum\n\s+0x0000,\s+//\sTranslation\sOffset\n\s+0x0000,\s+//\sLength replace_matched begin WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,\n 0x0000, // Granularity\n 0x4458, // Range Minimum\n 0x4459, // Range Maximum\n 0x0000, // Translation Offset\n 0x0002, // Length\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Address Min is greater then address max_Fixed_5 #39615, 6051, Address Min is greater than Address Max into_all all code_regex WordIO\s\(ResourceProducer,\sMinFixed,\sMaxFixed,\sPosDecode,\sEntireRange,\n\s+0x0000,\s+//\sGranularity\n\s+0x4358,\s+//\sRange\sMinimum\n\s+0x0000,\s+//\sRange\sMaximum\n\s+0x0000,\s+//\sTranslation\sOffset\n\s+0x0000,\s+//\sLength replace_matched begin WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,\n 0x0000, // Granularity\n 0x4358, // Range Minimum\n 0x4359, // Range Maximum\n 0x0000, // Translation Offset\n 0x0002, // Length\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Address Min is greater then address max_Fixed_6 #47007, 6051, Address Min is greater than Address Max into_all all code_regex WordIO\s\(ResourceProducer,\sMinFixed,\sMaxFixed,\sPosDecode,\sEntireRange,\n\s+0x0000,\s+//\sGranularity\n\s+0x4958,\s+//\sRange\sMinimum\n\s+0x0000,\s+//\sRange\sMaximum\n\s+0x0000,\s+//\sTranslation\sOffset\n\s+0x0001,\s+//\sLength replace_matched begin WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,\n 0x0000, // Granularity\n 0x4958, // Range Minimum\n 0x4959, // Range Maximum\n 0x0000, // Translation Offset\n 0x0002, // Length\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Address Min is greater then address max_Fixed_7 #47014, 6051, Address Min is greater than Address Max into_all all code_regex WordIO\s\(ResourceProducer,\sMinFixed,\sMaxFixed,\sPosDecode,\sEntireRange,\n\s+0x0000,\s+//\sGranularity\n\s+0x4559,\s+//\sRange\sMinimum\n\s+0x0000,\s+//\sRange\sMaximum\n\s+0x0000,\s+//\sTranslation\sOffset\n\s+0x0000,\s+//\sLength replace_matched begin WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,\n 0x0000, // Granularity\n 0x4558, // Range Minimum\n 0x4559, // Range Maximum\n 0x0000, // Translation Offset\n 0x0002, // Length\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Address Min is greater then address max_Fixed_8 #47021, 6051, Address Min is greater than Address Max into_all all code_regex WordIO\s\(ResourceProducer,\sMinFixed,\sMaxFixed,\sPosDecode,\sEntireRange,\n\s+0x0000,\s+//\sGranularity\n\s+0x4659,\s+//\sRange\sMinimum\n\s+0x0000,\s+//\sRange\sMaximum\n\s+0x0000,\s+//\sTranslation\sOffset\n\s+0x0000,\s+//\sLength replace_matched begin WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,\n 0x0000, // Granularity\n 0x4658, // Range Minimum\n 0x4659, // Range Maximum\n 0x0000, // Translation Offset\n 0x0002, // Length\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Address Min is greater then address max_Fixed_9 #39615, 6051, Address Min is greater than Address Max into_all all code_regex WordIO\s\(ResourceProducer,\sMinFixed,\sMaxFixed,\sPosDecode,\sEntireRange,\n\s+0x0000,\s+//\sGranularity\n\s+0x4259,\s+//\sRange\sMinimum\n\s+0x0000,\s+//\sRange\sMaximum\n\s+0x0000,\s+//\sTranslation\sOffset\n\s+0x0000,\s+//\sLength replace_matched begin WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,\n 0x0000, // Granularity\n 0x4258, // Range Minimum\n 0x4259, // Range Maximum\n 0x0000, // Translation Offset\n 0x0002, // Length\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Address Min is greater then address max_Fixed_10 #39615, 6051, Address Min is greater than Address Max into_all all code_regex WordIO\s\(ResourceProducer,\sMinFixed,\sMaxFixed,\sPosDecode,\sEntireRange,\n\s+0x0000,\s+//\sGranularity\n\s+0x4359,\s+//\sRange\sMinimum\n\s+0x0000,\s+//\sRange\sMaximum\n\s+0x0000,\s+//\sTranslation\sOffset\n\s+0x0000,\s+//\sLength replace_matched begin WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,\n 0x0000, // Granularity\n 0x4358, // Range Minimum\n 0x4359, // Range Maximum\n 0x0000, // Translation Offset\n 0x0002, // Length\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #HDEF_Device_Patch into device name_adr 0x001B0000 set_label begin HDEF end; into_all all code_regex ALZA replaceall_matched begin HDEF end; into method label _DSM parent_adr 0x001B0000 remove_entry; into device name_adr 0x001B0000 insert begin Method (_DSM, 4, NotSerialized)\n {\n Store (Package ()\n {\n "MaximumBootBeepVolume", Buffer() { 0xEF },\n "MaximumBootBeepVolumeAlt", Buffer() { 0xF1 },\n "multiEQDevicePresence", Buffer() { 0x0C, 0x00, 0x01, 0x00 },\n "AAPL,slot-name", Buffer () {"Built In"},\n "model", Buffer () {"Intel C610/X99 Series Chipset HD Audio Controller"},\n "layout-id", Buffer() { 0x09, 0x00, 0x00, 0x00 },\n "hda-gfx", Buffer () {"onboard-1"},\n "built-in", Buffer () {"0x00"},\n "device_type", Buffer () {"High Definition Audio"},\n "name", Buffer () {"Creative CA0132"},\n "PinConfigurations", Buffer () {"0x00"},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n } end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #DTGP_Devices_Patch into method label DTGP remove_entry; into definitionblock code_regex . insert begin Method (DTGP, 5, NotSerialized)\n {\n If (LEqual (Arg0, Buffer (0x10)\n {\n /* 0000 */ 0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44, \n /* 0008 */ 0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B\n }))\n {\n If (LEqual (Arg1, One))\n {\n If (LEqual (Arg2, Zero))\n {\n Store (Buffer (One)\n {\n 0x03\n }, Arg4)\n Return (One)\n }\n If (LEqual (Arg2, One))\n {\n Return (One)\n }\n }\n }\n Store (Buffer (One)\n {\n 0x00\n }, Arg4)\n Return (Zero)\n } end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #GFX_Device_Patch #If you have GFX card in slot BR3C # 1. Under Device BR3C # 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; #Maintained by: N.Mano into device label GFX1 insert begin Method (_DSM, 4, NotSerialized)\n {\n If (LEqual (Arg0, ToUUID ("a0b5b7c6-1318-441c-b0c9-fe695eaf949b")))\n {\n Store (Package ()\n {\n "device-id", Buffer() { 0xc2, 0x13, 0x00, 0x00 },\n "@0,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "@1,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "@2,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "@3,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "@4,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "@5,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "rom-revision", Buffer () { "84.06.2f.00.52" },\n "model", Buffer () {"NVIDIA GeForce GTX 970"},\n "name", Buffer () {"display"},\n "hda-gfx", Buffer () {"onboard-2"},\n "reg-ltrovr", Buffer () {0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n }\n Return (0x00)\n }\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #HDAU_Device_Patch #Auto patch Rename(Rename H001 to HDAU) into device label HDAU insert begin Method (_DSM, 4, NotSerialized)\n {\n If (LEqual (Arg0, ToUUID ("a0b5b7c6-1318-441c-b0c9-fe695eaf949b")))\n {\n Store (Package ()\n {\n "device-id", Buffer() { 0xBB, 0x0F, 0x00, 0x00 },\n "name", Buffer () {"HDAU"},\n "built-in", Buffer () {"0x00"},\n "device_type", Buffer () {"AUDIO"},\n "name", Buffer () {"HDAU"},\n "hda-gfx", Buffer () {"onboard-2"},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n }\n Return (0x00)\n }\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #RP04_ARPT_Device_Patch # 1. Insert ARPT dsdt injection # into device Label RP04 parent_label RP04 set_label begin ARPT end; into Device label D076 remove_entry; into device label RP04 insert begin Device (ARP1)\n {\n Name (_ADR, Zero) // _ADR: Address\n Name (_SUN, 0x04) // _SUN: Slot User Number\n Method (_DSM, 4, NotSerialized)\n {\n If (LEqual (Arg0, ToUUID ("a0b5b7c6-1318-441c-b0c9-fe695eaf949b")))\n {\n Store (Package ()\n {\n "reg-ltrovr", Buffer () {0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},\n "name", Buffer() { "ARP1" },\n "model", Buffer() { "Broadcom BCM943xx 802.11 a/b/g/n Wireless Network Controller" },\n "compatible", Buffer() { "pci14e4,43b1" },\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n }\n Return (0x00)\n }\n }\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #RP07_XHC2_Device_Patch #XHC2-USB3 PCIE card. #with RHU2 #Not all control paths return a value Fixed # 1. Insert RP07 dsdt injection # into device Label RP07 parent_label RP07 set_label begin USB3 Card end; into Device label D079 remove_entry; into device label RP07 insert begin Device (XHC2)\n {\n Name (_ADR, Zero)\n Name (_SUN, 0x07) // _SUN: Slot User Number\n Method (_DSM, 4, NotSerialized)\n {\n If (LEqual (Arg0, ToUUID ("a0b5b7c6-1318-441c-b0c9-fe695eaf949b")))\n {\n Store (Package ()\n {\n "reg-ltrovr", Buffer () {0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},\n "device-id", Buffer() { 0x00, 0x11, 0x00, 0x00 },\n "subsystem-id", Buffer() { 0x00, 0x11, 0x00, 0x00 },\n "subsystem-vendor-id", Buffer() { 0x73, 0x1b, 0x00, 0x00 },\n "AAPL,current-available", 2100,\n "AAPL,current-extra", 2200,\n "AAPL,current-extra-in-sleep", 1600,\n "AAPL,device-internal", 0x02,\n "AAPL,max-port-current-in-sleep", 2100,\n "name", Buffer () {"Intel XHC Controller"},\n "model", Buffer () {"USB xHC Host Controller"},\n "device_type", Buffer () {"USB eXtensible Host Controller"},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n }\n Return (0x00)\n }\n }\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #GLAN_Device_Patch # Insert device GLAN into device with _ADR 0x00190000 into device name_adr Zero parent_adr 0x00190000 remove_entry; into device name_adr 0x00190000 insert begin Name (_SUN, 0x02) // _SUN: Slot User Number\n Method (_DSM, 4, NotSerialized)\n {\n Store (Package ()\n {\n "built-in", Buffer() { "0x00" },\n "model", Buffer() { "Intel i218V" },\n "name", Buffer() { "Ethernet Controller" },\n "device-id", Buffer () {0xa1,0x15,0x00,0x00},\n "subsystem-id", Buffer () {0x00,0xe0,0x00,0x00},\n "subsystem-vendor-id", Buffer () {0x58,0x14,0x00,0x00},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n } end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #RP05_Device_Patch # Insert device RP05 into device with _ADR 0x001C0004 # into device name_adr Zero parent_adr 0x001C0004 remove_entry; into device name_adr 0x001C0004 insert begin Name (_SUN, 0x09) // _SUN: Slot User Number\n Method (_DSM, 4, NotSerialized)\n {\n If (LEqual (Arg0, ToUUID ("a0b5b7c6-1318-441c-b0c9-fe695eaf949b")))\n {\n Store (Package ()\n {\n "reg-ltrovr", Buffer () {0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},\n "reg-ltrovr", Buffer () {0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},\n "built-in", Buffer() { "0x00" },\n "model", Buffer() { "Ethernet Controller" },\n "name", Buffer() { "Qualcomm Atheros Killer E2200 PCI Express Gigabit Ethernet" },\n "device-id", Buffer () {0x91,0xe0,0x00,0x00},\n "subsystem-id", Buffer () {0x00,0xe0,0x00,0x00},\n "subsystem-vendor-id", Buffer () {0x58,0x14,0x00,0x00},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n }\n Return (0x00)\n }\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #RP08_Device_Patch # 1. Insert RP08 dsdt injection # into device Label RP08 parent_label RP08 set_label begin D078 end; into method label _adr parent_adr 0x001C0007 remove_entry; into device name_adr 0x001C0007 insert begin Name (_SUN, 0x05) // _SUN: Slot User Number\n Method (_DSM, 4, NotSerialized)\n {\n If (LEqual (Arg0, ToUUID ("a0b5b7c6-1318-441c-b0c9-fe695eaf949b")))\n {\n Store (Package ()\n {\n "reg-ltrovr", Buffer () {0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},\n "name", Buffer() {"Intensity Pro"},\n "model", Buffer () {"Intensity Pro"},\n "device-id", Buffer () {0x1e,0x8d,0x00,0x00},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n }\n Return (0x00)\n }\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #RP02_Device_Patch # 1. Insert RP02 dsdt injection # into device Label RP02 parent_label RP02 set_label begin D074 end; into method label _adr parent_adr 0x001C0001 remove_entry; into device name_adr 0x001C0001 insert begin Method (_DSM, 4, NotSerialized)\n {\n If (LEqual (Arg0, ToUUID ("a0b5b7c6-1318-441c-b0c9-fe695eaf949b")))\n {\n Store (Package ()\n {\n "reg-ltrovr", Buffer () {0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n }\n Return (0x00)\n }\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #RP03_Device_Patch # 1. Insert RP03 dsdt injection # into device Label RP03 parent_label RP03 set_label begin D075 end; into method label _adr parent_adr 0x001C0002 remove_entry; into device name_adr 0x001C0002 insert begin Method (_DSM, 4, NotSerialized)\n {\n If (LEqual (Arg0, ToUUID ("a0b5b7c6-1318-441c-b0c9-fe695eaf949b")))\n {\n Store (Package ()\n {\n "reg-ltrovr", Buffer () {0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n }\n Return (0x00)\n }\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #RP06_Device_Patch # 1. Insert RP06 dsdt injection # into device Label RP06 parent_label RP06 set_label begin D075 end; into method label _adr parent_adr 0x001C0005 remove_entry; into device name_adr 0x001C0005 insert begin Method (_DSM, 4, NotSerialized)\n {\n If (LEqual (Arg0, ToUUID ("a0b5b7c6-1318-441c-b0c9-fe695eaf949b")))\n {\n Store (Package ()\n {\n "reg-ltrovr", Buffer () {0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n }\n Return (0x00)\n }\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #BR2A_Device_Patch #Auto patch under device BR2A(Rename H000 to ARPT) # 1. Insert ARPT dsdt injection Rename BR2A-H000 to BR2A-ARPT # into device Label BR2A parent_label BR2A set_label begin ARPT end; into method label _DSM parent_label ARPT remove_entry; into device label ARPT insert begin Method (_DSM, 4, NotSerialized)\n {\n Store (Package ()\n {\n "device_type", Buffer() { "AirPort" },\n "model", Buffer() { "Broadcom BCM943xx 802.11 a/b/g/n Wireless Network Controller" },\n "compatible", Buffer() { "pci14e4,43a0" },\n "name", Buffer() { "AirPort Extreme" },\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n } end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #SAT1_Device_Patch # Device injection for the Intel 99 Series SATA into device label SAT1 insert begin Name (_SUN, 0x0A) // _SUN: Slot User Number\n Method (_DSM, 4, NotSerialized)\n {\n Store (Package (0x0A) {\n "name", Buffer() {"Intel AHCI Controller"},\n "model", Buffer () {"Intel 99 Series Chipset Family SATA Controller"},\n "compatible", Buffer() { "pci8086,8d02"},\n "device_type", Buffer () {"AHCI Controller"},\n "device-id", Buffer () {0x02,0x8d,0x00,0x00},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n } end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #EVSS_Device_Patch # Device injection for the Intel 99 Series sSATA into device label EVSS insert begin Name (_SUN, 0x0B) // _SUN: Slot User Number\n Method (_DSM, 4, NotSerialized)\n {\n Store (Package (0x0A) {\n "name", Buffer() {"Intel sSATA Controller"},\n "model", Buffer () {"Intel 99 Series Chipset Family sSATA Controller"},\n "compatible", Buffer() { "pci8086,8d62"},\n "device_type", Buffer () {"AHCI Controller"},\n "device-id", Buffer () {0x62,0x8d,0x00,0x00}\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n } end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #EH01_Device_Patch #Maintained by: N.Mano into device label EHC1 set_label begin EH01 end; into_all all code_regex EHC1 replaceall_matched begin EH01 end; into device label EH01 insert begin Name (_SUN, 0x0C) // _SUN: Slot User Number\n Method (_DSM, 4, NotSerialized)\n {\n Store (Package ()\n {\n "device-id", Buffer() { 0x26, 0x8d, 0x00, 0x00 },\n "subsystem-id", Buffer() { 0x70, 0x72, 0x00, 0x00 },\n "subsystem-vendor-id", Buffer() { 0x86, 0x80, 0x00, 0x00 },\n "AAPL,current-available", 2100,\n "AAPL,current-extra", 2200,\n "AAPL,current-extra-in-sleep", 1600,\n "AAPL,device-internal", 0x02,\n "AAPL,max-port-current-in-sleep", 2100,\n "name", Buffer() {"Intel EHC1 Controller"},\n "model", Buffer () {"Intel C610/X99 Series Chipset USB Enhanced Host Controller #1"},\n "device_type", Buffer () {"USB Controller"},\n "AAPL,clock-id", Buffer () {"0x01"},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n } end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #EH02_Device_Patch into device label EHC2 set_label begin EH02 end; into_all all code_regex EHC2 replaceall_matched begin EH02 end; into device label EH02 insert begin Name (_SUN, 0x0D) // _SUN: Slot User Number\n Method (_DSM, 4, NotSerialized)\n {\n Store (Package ()\n {\n "device-id", Buffer() { 0x2d, 0x8d, 0x00, 0x00 },\n "subsystem-id", Buffer() { 0x70, 0x72, 0x00, 0x00 },\n "subsystem-vendor-id", Buffer() { 0x86, 0x80, 0x00, 0x00 },\n "AAPL,current-available", 2100,\n "AAPL,current-extra", 2200,\n "AAPL,current-extra-in-sleep", 1600,\n "AAPL,device-internal", 0x02,\n "AAPL,max-port-current-in-sleep", 2100,\n "name", Buffer() {"Intel EHC2 Controller"},\n "model", Buffer () {"Intel C610/X99 Series Chipset USB Enhanced Host Controller #2"},\n "device_type", Buffer () {"USB Controller"},\n "AAPL,clock-id", Buffer () {"0x01"},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n } end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #XHC1_Device_Patch # Insert Apple USB properties into USB 3.0 XHCI into method label _DSM parent_adr 0x00140000 remove_entry; into device name_adr 0x00140000 insert begin Name (_SUN, 0x0E) // _SUN: Slot User Number\n Method (_DSM, 4, NotSerialized)\n {\n Store (Package ()\n {\n "device-id", Buffer() { 0x31, 0x8d, 0x00, 0x00 },\n "subsystem-id", Buffer() { 0x70, 0x72, 0x00, 0x00 },\n "subsystem-vendor-id", Buffer() { 0x58, 0x14, 0x00, 0x00 },\n "AAPL,current-available", 2100,\n "AAPL,current-extra", 2200,\n "AAPL,current-extra-in-sleep", 1600,\n "AAPL,device-internal", 0x02,\n "AAPL,max-port-current-in-sleep", 2100,\n "name", Buffer () {"Intel XHC Controller"},\n "model", Buffer () {"Intel 99 Series Chipset Family USB xHC Host Controller"},\n "device_type", Buffer () {"USB eXtensible Host Controller"},\n "AAPL,clock-id", Buffer () {"0x01"},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n } end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #SMBS_Device_Patch # Device injection for the Intel 99 Series SMBS # Fix the SMBUS to allow for loading of the AppleSMBusController.kext into device label BUS0 parent_label SMBS remove_entry; into device label SMBS insert begin Device (BUS0)\n {\n Name (_CID, "smbus") // _CID: Compatible ID\n Name (_ADR, Zero) // _ADR: Address\n Device (MKY0)\n {\n Name (_ADR, Zero) // _ADR: Address\n Name (_CID, "mikey") // _CID: Compatible ID\n Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method\n {\n Store (Package () {\n "refnum",\n Zero,\n "address",\n 0x39,\n "device-id",\n 0x0CCB,\n Buffer (One)\n {\n 0x00\n }\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n }\n Method (H1EN, 1, Serialized)\n {\n If (LLessEqual (Arg0, One))\n {\n If (LEqual (Arg0, One))\n {\n Or (GL04, 0x04, GL04)\n }\n Else\n {\n And (GL04, 0xFB, GL04)\n }\n }\n }\n Method (H1IL, 0, Serialized)\n {\n ShiftRight (And (GL00, 0x02), One, Local0)\n Return (Local0)\n }\n Method (H1IP, 1, Serialized)\n {\n If (LLessEqual (Arg0, One))\n {\n Not (Arg0, Arg0)\n Store (Arg0, GI01)\n }\n }\n Name (H1IN, 0x11)\n Scope (\_GPE)\n {\n Method (_L11, 0, NotSerialized) // _Lxx: Level-Triggered GPE\n {\n Notify (\_SB.PCI0.SMBS.BUS0.MKY0, 0x80)\n }\n }\n Method (P1IL, 0, Serialized)\n {\n ShiftRight (And (GL00, 0x40), 0x06, Local0)\n Return (Local0)\n }\n Method (P1IP, 1, Serialized)\n {\n If (LLessEqual (Arg0, One))\n {\n Not (Arg0, Arg0)\n Store (Arg0, GI06)\n }\n }\n Name (P1IN, 0x16)\n Scope (\_GPE)\n {\n Method (_L16, 0, NotSerialized) // _Lxx: Level-Triggered GPE\n {\n XOr (GI06, One, GI06)\n Notify (\_SB.PCI0.SMBS.BUS0.MKY0, 0x81)\n }\n }\n }\n Device (DVL0)\n {\n Name (_ADR, 0x57) // _ADR: Address\n Name (_CID, "diagsvault") // _CID: Compatible ID\n Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method\n {\n If (LEqual (Arg2, Zero))\n {\n Return (Buffer (One)\n {\n 0x03\n })\n }\n Return (Package (0x03)\n {\n "address",\n 0x57,\n Buffer (One)\n {\n 0x00 \n }\n })\n }\n }\n Device (BLC0)\n {\n Name (_ADR, Zero) // _ADR: Address\n Name (_CID, "smbus-blc") // _CID: Compatible ID\n Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method\n {\n If (LEqual (Arg2, Zero))\n {\n Return (Buffer (One)\n {\n 0x03\n })\n }\n Return (Package (0x10)\n {\n "refnum",\n Zero,\n "version",\n 0x02,\n "fault-off",\n 0x03,\n "fault-len",\n 0x04,\n "skey",\n 0x4C445342,\n "smask", \n 0xFF,\n "type",\n 0x49324300,\n "address",\n 0x2C\n })\n }\n }\n }\n Device (BUS1)\n {\n Name (_CID, "smbus") // _CID: Compatible ID\n Name (_ADR, One) // _ADR: Address\n }\n end; into definitionblock code_regex . insert begin Method (MANO, 0, NotSerialized)\n {\n Return (Package (0x03)\n {\n "X99", \n "olarila.com/forum", \n "insanelymac.com/forum"\n })\n }\n OperationRegion (GPIO, SystemIO, 0x0500, 0x3C)\n Field (GPIO, ByteAcc, NoLock, Preserve)\n {\n Offset (0x0C), \n GL00, 8, \n Offset (0x2C),\n , 1,\n GI01, 1, \n , 1, \n GI06, 1, \n Offset (0x2D),\n GL04, 8\n }\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #BR1A_PCIA_FRWR_Device_Patch # 1. Insert FRWR dsdt injection #Before patch manually Rename(Rename H000 to PCIA) # into device Label H000 parent_label BR1A (Rename-PCIA) into method label _SUN parent_label PCIA remove_entry; into device label PCIA insert begin Device (FRWR)\n {\n Name (_ADR, Zero)\n Name (_SUN, 0x03) // _SUN: Slot User Number\n Method (_DSM, 4, NotSerialized)\n {\n Store (Package ()\n {\n "name", Buffer () {"FireWire IEEE-1394a OHCI Controller"},\n "model", Buffer () {"XIO2200A IEEE-1394a-2000 Controller"},\n "device-id", Buffer() { 0x35, 0x82, 0x00, 0x00 },\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n }\n }\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #LPC0_Device_Patch # 1. Under Device LPC0 - Verify IOReg/LPC0 into method label _adr parent_adr 0x001F0000 remove_entry; into device name_adr 0x001F0000 insert begin Name (_SUN, 0x0F) // _SUN: Slot User Number\n Method (_DSM, 4, NotSerialized)\n {\n Store (Package ()\n {\n "device-id", Buffer() { 0x43, 0x9c, 0, 0 },\n "name", Buffer () {"pci8086,9c43"},\n "compatible", Buffer() { "pci8086,9c43" },\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n }\n end; #Add and remove Device under LPC0 #Credits and thanks for who developed patches, kexts and bootloaders. into device label HPET remove_entry; into device label LPC0 insert begin Device (ALS0)\n {\n Name (_HID, "ACPI0008") // _HID: Hardware ID\n Name (_CID, "smc-als") // _CID: Compatible ID\n Name (BUFF, Buffer (0x02) {})\n CreateByteField (BUFF, Zero, OB0)\n CreateByteField (BUFF, One, OB1)\n CreateWordField (BUFF, Zero, ALSI)\n Method (_STA, 0, NotSerialized) // _STA: Status\n {\n Return (0x0F)\n }\n Method (_ALI, 0, NotSerialized) // _ALI: Ambient Light Illuminance\n {\n Store (0x0A, OB0)\n Store (Zero, OB1)\n Store (ALSI, Local0)\n Return (Local0)\n }\n Name (_ALR, Package (0x05) // _ALR: Ambient Light Response\n {\n Package (0x02)\n {\n 0x0A,\n Zero\n },\n Package (0x02)\n {\n 0x14,\n 0x0A\n },\n Package (0x02)\n {\n 0x32,\n 0x50\n },\n Package (0x02)\n {\n 0x5A,\n 0x012C\n },\n Package (0x02)\n {\n 0x64,\n 0x03E8\n }\n })\n }\n Device (EC)\n {\n Name (_HID, EisaId ("PNP0C09")) // _HID: Hardware ID\n Name (_UID, Zero) // _UID: Unique ID\n Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings\n {\n IO (Decode16,\n 0x0062, // Range Minimum\n 0x0062, // Range Maximum\n 0x00, // Alignment\n 0x01, // Length\n )\n IO (Decode16,\n 0x0066, // Range Minimum\n 0x0066, // Range Maximum\n 0x00, // Alignment\n 0x01, // Length\n )\n })\n Name (ECOK, Zero)\n OperationRegion (ECOR, EmbeddedControl, Zero, 0xFF)\n Field (ECOR, ByteAcc, Lock, Preserve)\n {\n }\n }\n Device (HPET)\n {\n Name (_HID, EisaId ("PNP0103")) // _HID: Hardware ID\n Name (_CID, EisaId ("PNP0C01")) // _CID: Compatible ID\n Name (_STA, 0x0F) // _STA: Status\n Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings\n {\n IRQNoFlags ()\n {0}\n IRQNoFlags ()\n {8}\n IRQNoFlags ()\n {11}\n Memory32Fixed (ReadWrite,\n 0xFED00000, // Address Base\n 0x00000400, // Address Length\n )\n })\n }\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #NVME_Device_Patch # 1. Insert BR3A dsdt injection #Before patch manually Rename(Rename H000 to NVM1 # into device Label BR3A parent_label BR3A set_label begin SM960 end; into device label NVME insert begin Method (_DSM, 4, NotSerialized)\n {\n Store (Package ()\n {\n "AAPL,slot-name", Buffer () {"M.2"},\n "built-in", Buffer () {"0x00"},\n "device-id", Buffer() { 0x01, 0xa8, 0x00, 0x00 },\n "name", Buffer () {"NVMe"},\n "model", Buffer () {"960 PRO MZ-V6P512"},\n "device_type", Buffer () {"NVMe Controller"},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n }\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #IMEI_Device_Patch # 1. Under Device HECI - Verify IOReg/HECI into_all all code_regex HECI replaceall_matched begin IMEI end; into device label HECI set_label begin IMEI end; into device label IMEI insert begin Name (_SUN, 0x0F) // _SUN: Slot User Number\n Method (_DSM, 4, NotSerialized)\n {\n Store (Package ()\n {\n "device-id", Buffer() { 0x3A, 0x1E, 0x00, 0x00 },\n "name", Buffer () {"Intel Management Engine Interface"},\n "model", Buffer () {"Intel Corporation, C610/X99 Series Chipset IMEI Controller"},\n "device_type", Buffer () {"IMEI-Controller"},\n "compatible", Buffer () {"pci8086,1e3a"},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n } end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #EVMR_SPSR_Device_Patch # Name (_ADR, 0x00110000) // _ADR: Address into_all all code_regex EVMR replaceall_matched begin SPSR end; into device label EVMR set_label begin SPSR end; into device label SPSR insert begin Method (_DSM, 4, NotSerialized)\n {\n Store (Package ()\n {\n "AAPL,slot-name", Buffer () {"built-in"},\n "built-in", Buffer() { "0x00" },\n "device-id", Buffer() { 0x21, 0x9D, 0x00, 0x00 },\n "name", Buffer () {"C610/X99 Series Chipset SPSR"},\n "model", Buffer () {"Intel Corporation, C610/X99 Series Chipset SPSR Controller"},\n "compatible", Buffer () {"pci8086,9d21"},\n "device_type", Buffer () {"Intel SPSR Controller"},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n } end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #RP01_SSD0_Device_Patch # 1. Insert SM951 dsdt injection # into device Label RP01 parent_label D073 set_label begin AHC2 end; into Device label D073 remove_entry; into device label RP01 insert begin Device (SSD0)\n {\n Name (_ADR, Zero)\n Method (_DSM, 4, NotSerialized)\n {\n If (LEqual (Arg0, ToUUID ("a0b5b7c6-1318-441c-b0c9-fe695eaf949b")))\n {\n Store (Package ()\n {\n "AAPL,slot-name", Buffer () {"M.2"},\n "built-in", Buffer () {"0x00"},\n "device-id", Buffer() { 0x01, 0xa8, 0x00, 0x00 },\n "reg-ltrovr", Buffer () {0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},\n "name", Buffer() { "SSD0" },\n "model", Buffer() { "SM951" },\n "device_type", Buffer () {"AHCI Controller"},\n }, Local0)\n DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n Return (Local0)\n }\n Return (0x00)\n }\n }\n end; # X99_Maintained and disassembled by:N.Mano #Credits and thanks for who developed patches, kexts and bootloaders. #X99_Sleep_Fixed #usb_prw_0x6d_xhc.txt # remove _PRW methods to prevent instant wake # delete any existing XHC1 device # delete any existing USB2 device into device label USB2 name_adr 0x001D0000 remove_entry; into device label USB2 name_adr 0x001A0000 remove_entry; # if _PRW objects are methods into method label _PRW parent_adr 0x001D0000 remove_entry; into method label _PRW parent_adr 0x001A0000 remove_entry; into method label _PRW parent_adr 0x00140000 remove_entry; into method label _PRW parent_adr 0x001B0000 remove_entry; # some other LAN cards use 0x00190000 into method label _PRW parent_adr 0x00190000 remove_entry; into method label _PRW parent_adr 0x001C0004 remove_entry; # some other cards (RP08Intensity Pro,RP07 USB3 Card,RP04 WIFI card,RP01,RP02,RP03,RP06) into method label _PRW parent_adr 0x001C0007 remove_entry; into method label _PRW parent_adr 0x001C0006 remove_entry; into method label _PRW parent_adr 0x001C0003 remove_entry; into method label _PRW parent_adr 0x001C0000 remove_entry; into method label _PRW parent_adr 0x001C0001 remove_entry; into method label _PRW parent_adr 0x001C0002 remove_entry; into method label _PRW parent_adr 0x001C0005 remove_entry; #If_PRW BR1A,BR1B,BR2A,BR2B,BR2C,BR2D,BR3A,BR3B,BR3C,BR3D into method label _PRW parent_adr 0x00010000 remove_entry; into method label _PRW parent_adr 0x00010001 remove_entry; into method label _PRW parent_adr 0x00020000 remove_entry; into method label _PRW parent_adr 0x00020001 remove_entry; into method label _PRW parent_adr 0x00020002 remove_entry; into method label _PRW parent_adr 0x00020003 remove_entry; into method label _PRW parent_adr 0x00030000 remove_entry; into method label _PRW parent_adr 0x00030001 remove_entry; into method label _PRW parent_adr 0x00030002 remove_entry; into method label _PRW parent_adr 0x00030003 remove_entry; # if _PRW methods are stuffed into a separate scope into method label _PRW parent_label _SB.PCI0.EHC1 remove_entry; into method label _PRW parent_label _SB.PCI0.EHC2 remove_entry; into method label _PRW parent_label _SB.PCI0.XHC remove_entry; into method label _PRW parent_label \_SB.PCI0.EHC1 remove_entry; into method label _PRW parent_label \_SB.PCI0.EHC2 remove_entry; into method label _PRW parent_label \_SB.PCI0.XHC1 remove_entry; # if _PRW objects are names into device name_adr 0x001D0000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001A0000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00140000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001B0000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00190000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001C0004 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001C0007 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001C0006 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001C0003 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001C0000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001C0001 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001C0002 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001C0005 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; #If_PRW BR1A,BR1B,BR2A,BR2B,BR2C,BR2D,BR3A,BR3B,BR3C,BR3D into device name_adr 0x00010000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00010001 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00020000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00020001 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00020002 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00020003 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00030000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00030001 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00030002 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00030003 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\}\) remove_matched; # some _PRW have three entries in the Package into device name_adr 0x001D0000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001A0000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00140000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001B0000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00190000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001C0004 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001C0007 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001C0006 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001C0003 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001C0000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001C0001 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001C0002 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x001C0005 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; #If_PRW BR1A,BR1B,BR2A,BR2B,BR2C,BR2D,BR3A,BR3B,BR3C,BR3D into device name_adr 0x00010000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00010001 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00020000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00020001 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00020002 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00020003 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00030000 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00030001 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00030002 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; into device name_adr 0x00030003 code_regex Name.*_PRW.*\n.*\n.*\n.*\n.*\n.*\}\) remove_matched; # seems to work better if _PRW is present, but returns 0 (original was 3) for sleep state into device name_adr 0x001D0000 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x001A0000 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x00140000 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x001B0000 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x00190000 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x001C0004 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x001C0007 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x001C0006 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x001C0003 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x001C0000 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x001C0001 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x001C0002 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x001C0005 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; #If_PRW BR1A,BR1B,BR2A,BR2B,BR2C,BR2D,BR3A,BR3B,BR3C,BR3D into device name_adr 0x00010000 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x00010001 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x00020000 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x00020001 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x00020002 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x00020003 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x00030000 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x00030001 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x00030002 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; into device name_adr 0x00030003 insert begin Name(_PRW, Package() { 0x6D, 0 }) end; # X99-SSDT-2017 I update some SSDT for X99 system.This update no need DSDT.(ONLY SSDT) X99 Devices with 29 SSDT. #NO DSDT #EH01 #EH02 #XHC1 #XHC2 #NVME #LAN0 #LAN1 #GFX1 #HDAU #ARPT #AHCI #SATA #SAT1 #SAT2 #EVSS #HDEF #SBUS #FRWR #MCEH #DTGP #ALS0 #EC #SPSR #IMEI #PNLF #SSD0 #VSND #MATH #IPIC #TIMR #SLEEP #IRQ #SSDT-X99-2017 #All Credits and thanks to who developed patches, kexts and bootloaders. My susses story X99 platforms, high-end desktops an opportunity to customize the look of First DRAM DDR4 inside their machines. My goal is fixed DSDT errors and warning.All devices are show in PCI SLOT in ABOUT THIS MAC. I found for X99 Haswell-E need FakeCPUID for 10.11.3 (12-11-2015) If anyone want to see that story search on google good news for x99. FakeCPUID 0x0306E0 (Ivy Bridge) to Haswell-E Now 10.12 no need this ID. Credit: PikeRAlpha, RehabMan, chris, vit9696, Brumbaer,Okrasit ACPI.zip config 10.11 and 10.12.plist.zip config.plist.zip drivers64UEFI.zip DSDT patches.zip Kexts.zip Mac osx Installer.zip Resolutions 2.zip USB 3 XHC Patch.zip X99DSDT_Fix.zip X99_Gold.zip X99_Gold_1.0.zip XCPM 10.12 and 10.13 update.zip XCPM Brodwell and Haswell.zip XCPM_enabler.zip AppleIntelPCHPMC.kext 10.13_X99.zip 10.13_X99 Final_EFI.zip X99_SSDT_ALL IN ONE.zip ALL IN ONE SSDT_Latest.zip SSDT-X99-All_Sleep.aml.zip X99_SSDT_Final.zip X99_RenameXXX.aml.zip SSDT-X99-2017.zip SSDT-X99-2018.aml.zip X99_SSDT-IRQ.aml.zip SSDT-X99-NH0.aml.zip Edited April 26, 2018 by nmano 18 1 Link to comment Share on other sites More sharing options...
Allan Posted July 17, 2016 Share Posted July 17, 2016 Nice! Is a guide right? If you want, I can move it to the right section 1 Link to comment Share on other sites More sharing options...
nmano Posted July 18, 2016 Author Share Posted July 18, 2016 Creative sound AppleHDA 10.12 Beta (16A239j) Set LayoutID = 9 This kexts x99 patched and none x99 too. Just HDEF for DSDT. with X99.zip None X99.zip just HDEF.zip 3 Link to comment Share on other sites More sharing options...
nmano Posted July 19, 2016 Author Share Posted July 19, 2016 BIOS Configuration for USB 3 Flash drive with clover Intel USB 3.0 XHCI Mode Enabled CSM Disable BIOS Configuration for USB 2 Flash drive with clover Intel USB 3.0 XHCI Mode Smart Auto CSM Disable 3 Link to comment Share on other sites More sharing options...
AsusFreak Posted July 19, 2016 Share Posted July 19, 2016 Great post, thanks for the info... 2 Link to comment Share on other sites More sharing options...
nmano Posted July 21, 2016 Author Share Posted July 21, 2016 Creative sound AppleHDA 10.12 Beta (16A254g)) Set LayoutID = 9 With X99 patched. DP3 with X99.zip 2 Link to comment Share on other sites More sharing options...
ergot Posted July 22, 2016 Share Posted July 22, 2016 nmano i want to thank you, although i am using 10.11.5 now my BT is working thanks to the kext BrcmBluetoothInjector you have provided here ! Next will try 10.2 Link to comment Share on other sites More sharing options...
ergot Posted July 22, 2016 Share Posted July 22, 2016 can i update 10.11.5 to 10.2? I have cloned my hack and I want to try upgrade to 10.2 or we need a fresh installation? Link to comment Share on other sites More sharing options...
nmano Posted July 22, 2016 Author Share Posted July 22, 2016 patch me this destination is read only Patch Me.zip 1 Link to comment Share on other sites More sharing options...
nmano Posted July 22, 2016 Author Share Posted July 22, 2016 can i update 10.11.5 to 10.2? I have cloned my hack and I want to try upgrade to 10.2 or we need a fresh installation? Try fresh installation make a partition keep 10.11.5 1 Link to comment Share on other sites More sharing options...
ergot Posted August 4, 2016 Share Posted August 4, 2016 when upgrading 10.11 to 10.12 i was able to boot everything was working fine accept GPU, when installing ;test web driver i would not able to fix the problem so i installed a fresh copy but situation are the same...no GPU acceleration tried many things nothing helped. Link to comment Share on other sites More sharing options...
nmano Posted August 4, 2016 Author Share Posted August 4, 2016 Creative sound AppleHDA 10.12 Beta4 (16A270f) Set LayoutID = 9 With X99 patched and without x99 patched. with x99.zip without x99.zip 1 Link to comment Share on other sites More sharing options...
ergot Posted August 8, 2016 Share Posted August 8, 2016 is ur power management working? XCPM loaded? for me it seems not loading and sleep not working...i have SDST and Freqvector generated but not loaded... Link to comment Share on other sites More sharing options...
nmano Posted August 10, 2016 Author Share Posted August 10, 2016 is ur power management working? XCPM loaded? for me it seems not loading and sleep not working...i have SDST and Freqvector generated but not loaded... Auto overclock My system(X99GamingG1) support Auto overclock just press back panel OC button.I don’t use XCPM. Not work Automatically Adjust Brightness: No Sleep 1 Link to comment Share on other sites More sharing options...
nmano Posted August 12, 2016 Author Share Posted August 12, 2016 IMEI patch for x99 This patch rename device name and device ID. HECI to IMEI AppleIntelFramebufferCapri now Loaded. IMEI patch for x99.txt.zip 1 Link to comment Share on other sites More sharing options...
nmano Posted August 14, 2016 Author Share Posted August 14, 2016 XCPM for 10.12 DP5 Its patched just replace file. xxd -s 0x228f50 -l 528 -u /System/Library/Kernels/kernel xxd: /System/Library/Kernels/kerne: No such file or directory navaratnams-Pro:~ navaratnammanoranjan$ xxd -s 0x228f50 -l 528 -u /System/Library/Kernels/kernel 00228f50: 5548 89E5 4157 4156 4155 4154 5350 4189 UH..AWAVAUATSPA. 00228f60: D641 89F7 4889 FB45 85FF 0F84 9400 0000 .A..H..E........ 00228f70: 4883 C328 4C8D 25E5 E855 004C 8D2D F8E8 H..(L.%..U.L.-.. 00228f80: 5500 6666 6666 662E 0F1F 8400 0000 0000 U.fffff......... 00228f90: 8B05 026D 6700 8543 DC74 6045 85F6 7406 ...mg..C.t`E..t. 00228fa0: 4439 73D8 7555 833D 533E 6000 0074 108B D9s.uU.=S>`..t.. 00228fb0: 53D8 31C0 4C89 E74C 89EE E8D1 314F 008B S.1.L..L....1O.. 00228fc0: 4BD8 0F32 48C1 E220 89C0 4809 D048 8943 K..2H.. ..H..H.C 00228fd0: F848 8B53 E848 F7D2 4821 C248 0B53 F08B .H.S.H..H!.H.S.. 00228fe0: 4BD8 89D0 48C1 EA20 0F30 8B4B D80F 3248 K...H.. .0.K..2H 00228ff0: C1E2 2089 C048 09D0 4889 0348 83C3 3041 .. ..H..H..H..0A 00229000: FFCF 758C 4883 C408 5B41 5C41 5D41 5E41 ..u.H...[A\A]A^A 00229010: 5F5D C366 6666 662E 0F1F 8400 0000 0000 _].ffff......... 00229020: 5548 89E5 B9B0 0100 000F 3283 E00F 5DC3 UH........2...]. 00229030: 5548 89E5 5348 83EC 1889 FBC7 45EC 0906 UH..SH......E... 00229040: 0000 83FB 2972 0E8B 05EB 8B66 0085 C00F ....)r.....f.... 00229050: 856E 0100 008B 053D 6C67 0031 C985 05D1 .n.....=lg.1.... 00229060: 3F60 0074 1081 3DC1 3F60 0009 0600 000F ?`.t..=.?`...... 00229070: 840A 0100 00B9 0100 0000 8505 E43F 6000 .............?`. 00229080: 7410 813D D43F 6000 0906 0000 0F84 ED00 t..=.?`......... 00229090: 0000 B902 0000 0085 05F7 3F60 0074 1081 ..........?`.t.. 002290a0: 3DE7 3F60 0009 0600 000F 84D0 0000 00B9 =.?`............ 002290b0: 0300 0000 8505 0A40 6000 7410 813D FA3F .......@`.t..=.? 002290c0: 6000 0906 0000 0F84 B300 0000 B904 0000 `............... 002290d0: 0085 051D 4060 0074 1081 3D0D 4060 0009 ....@`.t..=.@`.. 002290e0: 0600 000F 8496 0000 00B9 0500 0000 8505 ................ 002290f0: 3040 6000 740C 813D 2040 6000 0906 0000 0@`.t..= @`..... 00229100: 747D B906 0000 0085 0547 4060 0074 0C81 t}.......G@`.t.. 00229110: 3D37 4060 0009 0600 0074 64B9 0700 0000 =7@`.....td..... 00229120: 8505 5E40 6000 740C 813D 4E40 6000 0906 ..^@`.t..=N@`... 00229130: 0000 744B B908 0000 0085 0575 4060 0074 ..tK.......u@`.t 00229140: 0C81 3D65 4060 0009 0600 0074 32B9 0900 ..=e@`.....t2... 00229150: 0000 8505 8C40 6000 740C 813D 7C40 6000 .....@`.t..=|@`. navaratnams-Pro:~ navaratnammanoranjan$ I use Hex Fiend Find-554889E5 41574156 41554154 53504189 D641 Replace-C39089E5 41574156 41554154 53504189 D641 XCPM Find-83 C3 C4 83 FB 22 Replace-83 C3 C1 83 FB 22 We don't need CPU iD Fix for Haswell-E family Result Last login: Sun Aug 14 14:20:01 on console manoranjansPro2:~ navaratnammanoranjan$ sysctl -a | grep xcpm machdep.xcpm.io_filtered_reads: 0 machdep.xcpm.io_control_disengages: 1 machdep.xcpm.io_control_engages: 0 machdep.xcpm.io_thermal_level: 0 machdep.xcpm.gpu_thermal_level: 0 machdep.xcpm.cpu_thermal_level: 0 machdep.xcpm.deep_idle_total_stats: n/a machdep.xcpm.deep_idle_last_stats: n/a machdep.xcpm.deep_idle_count: 0 machdep.xcpm.qos_txfr: 1 machdep.xcpm.deep_idle_log: 0 machdep.xcpm.forced_idle_period: 30000000 machdep.xcpm.forced_idle_ratio: 100 machdep.xcpm.mbd_relaxations: 12305 machdep.xcpm.mbd_applications: 12329 machdep.xcpm.mbd_mode: 1 machdep.xcpm.maxintdelay: 0 machdep.xcpm.maxbusdelay: 4294967295 machdep.xcpm.ratio_changes_total: 699153 machdep.xcpm.vectors_loaded_count: 0 machdep.xcpm.tuib_ns: 0 machdep.xcpm.bootpst: 43 machdep.xcpm.bootplim: 0 machdep.xcpm.power_source: 0 machdep.xcpm.tuib_enabled: 0 machdep.xcpm.tuib_plimit_min_100mhz_ratio: 8 machdep.xcpm.tuib_plimit_max_100mhz_ratio: 43 machdep.xcpm.soft_plimit_min_100mhz_ratio: 8 machdep.xcpm.soft_plimit_max_100mhz_ratio: 43 machdep.xcpm.hard_plimit_min_100mhz_ratio: 8 machdep.xcpm.hard_plimit_max_100mhz_ratio: 43 machdep.xcpm.mode: 1 manoranjansPro2:~ navaratnammanoranjan$ Credit-pikeralpha Kernels.zip 1 Link to comment Share on other sites More sharing options...
nmano Posted August 14, 2016 Author Share Posted August 14, 2016 My EFI for XCPM EFI.zip Link to comment Share on other sites More sharing options...
augustopaulo Posted August 15, 2016 Share Posted August 15, 2016 Hi nmano, I'm quite interested in your DSDT patches that you manage to compile and apply to your own system. But, I've bumped into a few problems when I try to apply them to my system: "F22J Comfile.rtf" & "F22J Device patches .rtf" - These files are not properly read by MaciASL, I had to convert them into plain text files (see attached) "F22J Device patches .rtf" - You have repeated several times to do a find/replace all of the H0000 but with different targets each time: IGPU, HDA1, ARP0, H00F & AHC1 (I don't think this is right...) Can please check my plain text files converted from yours and can you also please help me applying your patches to my own clover extracted DSDT.aml (attached). Thanks. Boa sorte, Paulo Arquivo.zip Link to comment Share on other sites More sharing options...
nmano Posted August 15, 2016 Author Share Posted August 15, 2016 Hi nmano, I'm quite interested in your DSDT patches that you manage to compile and apply to your own system. Thats Fake Device names IGPU, HDA1, ARP0, H00F & AHC1(for Rename) After patched changed to GFX0,HDAU,ARPT First check IOREG your Devices names then Rename devices and arrange patch file. I can't check without IOREG. Link to comment Share on other sites More sharing options...
nmano Posted August 15, 2016 Author Share Posted August 15, 2016 Kernel patched for just reboot fix 10.12 DP5 0x228f50© Pike R. Alpha XCPM clover config patched. If you disable clover patched AppleIntelCPUPowerManagement loaded. This way worked xcpm and Apple intel. Just reboot fix .zip Config.zip Link to comment Share on other sites More sharing options...
giacomoleopardo Posted August 15, 2016 Share Posted August 15, 2016 Kernel patched for just reboot fix 10.12 DP5 0x228f50© Pike R. Alpha XCPM clover config patched. If you disable clover patched AppleIntelCPUPowerManagement loaded. This way worked xcpm and Apple intel. Did you try without Brumbaer patch? Link to comment Share on other sites More sharing options...
magnifico Posted August 15, 2016 Share Posted August 15, 2016 My EFI for XCPM Hi nmano , why use you again NullCpu? 1 Link to comment Share on other sites More sharing options...
augustopaulo Posted August 15, 2016 Share Posted August 15, 2016 Thats Fake Device names IGPU, HDA1, ARP0, H00F & AHC1(for Rename) After patched changed to GFX0,HDAU,ARPT First check IOREG your Devices names then Rename devices and arrange patch file. I can't check without IOREG. Hi nmano, Thanks for the clarification. My DSDT knowledge is very rusty and from the X58 platform... And the X99 platform is quite different... I've attached the my system's IOREG as requested, from my current 11.10.6 setup. Boa sorte, Paulo Mac Pro.ioreg.zip Link to comment Share on other sites More sharing options...
nmano Posted August 16, 2016 Author Share Posted August 16, 2016 Hi nmano , why use you again NullCpu? I tested without NullCPU Its worked XCPM and AppleIntelPM. Remove NullCPUPowerManagement.kext - AppleIntelCPUPowerManagementClient Loaded. Did you try without Brumbaer patch? I try without patch not work. Hi nmano, Thanks for the clarification. My DSDT knowledge is very rusty and from the X58 platform... And the X99 platform is quite different... I've attached the my system's IOREG as requested, from my current 11.10.6 setup. Boa sorte, Paulo Mac Pro.ioreg.zip I can't open Its to be corrupted. Try latest version. 1 Link to comment Share on other sites More sharing options...
augustopaulo Posted August 16, 2016 Share Posted August 16, 2016 Hi nmano, Try this one, it was captured with IORegistryExplorer 3.0.2 (14) - I could not find the 3.0.3 (15)... I've attached here (zipped) and here (original). Boa sorte, Paulo Mac Pro.ioreg.zip Link to comment Share on other sites More sharing options...
Recommended Posts