mfc88 Posted April 13, 2017 Share Posted April 13, 2017 ssdtGen updated to 0.1.3beta ssdtGen changelog 0.1.3b: ✓ Adjusted GPU IOREG look-up because of varying ACPI paths ✓ Adjusted the NVME prompt inputs to have built in syntax and length checks ✓ Fixed SMBS/SBUS SSDT mistake, where Z170 boards used wrong hardcoded device in notify operators ✓ Added notes to the entire source ✓ Optimized code for less redundancy Man, i think u need open topic here http://www.insanelymac.com/forum/forum/157-new-releases-and-updates/ or here http://www.insanelymac.com/forum/forum/73-developers-corner/ Is it possible for me to post to the Developer's Forum? Appears to be locked from adding new threads. Thanks! 1 Link to comment Share on other sites More sharing options...
PMheart Posted April 13, 2017 Share Posted April 13, 2017 If I remembered correctly, only developers/coders are able to post there... 1 Link to comment Share on other sites More sharing options...
mfc88 Posted April 13, 2017 Share Posted April 13, 2017 If I remembered correctly, only developers/coders are able to post there... Are you saying I'm not a developer/coder!? 2 Link to comment Share on other sites More sharing options...
MaLd0n Posted April 13, 2017 Share Posted April 13, 2017 Post here http://www.insanelymac.com/forum/forum/157-new-releases-and-updates/ if need we move for correct area 2 Link to comment Share on other sites More sharing options...
mfc88 Posted April 14, 2017 Share Posted April 14, 2017 ssdtGen has a new home! Thank you for to those who helped out. 2 Link to comment Share on other sites More sharing options...
MaLd0n Posted April 14, 2017 Share Posted April 14, 2017 Hello there. I need some guidance on how to install Sierra on this: Asus X99 R5E 3504 5960X DDR4 G.SkillDTD EVGA GTX 950 SC Samsung 840 Pro I presume I need patches for the 5960X? How can I provide myself or find a RVE DTD? What sys def I need to use? How to configure Clover? Thanks. Check CLOVER.zip 1 Link to comment Share on other sites More sharing options...
orcaxd Posted April 14, 2017 Share Posted April 14, 2017 Check CLOVER.zip So, this one got me the same problem I'm battling lately: it starts as it works, but as soon as +++++ and the fast loading ends at PCI..., the machine just reboots with no signal from the graphics card. My config is: EVGA GTX 950 SC - stock BIOS in the Slot 1 Asus Xonar Slot 3 BCM943602CS WiFi/BT card Slot 4 128GB 8x16GB G.Skill 5960X CPU at manual settings (4GHz, Votlage 1.15V, BCLK 100, RAM 2600) USB - Smart Auto, Enabled, Enabled, Enabled Virtualization OFF V-t/d OFF CSM OFF What boot flags should I need? I've tried using nv_disable=1 and nvda_drv=1 and cpus=1, but any and both just reboot after the attached screen - the system just reboots. This are the screens after which the system just hangs (keyb and mouse go off (no backlight any more) or reboots - http://imgur.com/a/3Ouzs Thank you. Embraer's patch helped, but stuck at IOConsoleUsers: gIOScreenLockState 3 Link to comment Share on other sites More sharing options...
Anonym323 Posted April 14, 2017 Share Posted April 14, 2017 You need to use the brumbaer patch for this. Link to comment Share on other sites More sharing options...
orcaxd Posted April 14, 2017 Share Posted April 14, 2017 You need to use the brumbaer patch for this. Putting xHCI for usb 3.0 fixed the problem with the usb boot stick going offline. Now progressed further and stuck at: IOConsoleUsers: gIOScreenLockState 3, hs 0, bs 0, now 0, sm 0x0 Link to comment Share on other sites More sharing options...
PMheart Posted April 14, 2017 Share Posted April 14, 2017 Are you saying I'm not a developer/coder!? LOL I mean Coders/Developers user groups here (on InsanelyMac)... 1 Link to comment Share on other sites More sharing options...
mfc88 Posted April 18, 2017 Share Posted April 18, 2017 Revamped the Fixing common x99 DSDT MaciASL errors/warnings post for those who want to remove all errors/warnings for their custom x99 DSDT.aml file. 2 Link to comment Share on other sites More sharing options...
MICKHAEL Posted April 18, 2017 Share Posted April 18, 2017 Revamped the Fixing common x99 DSDT MaciASL errors/warnings post for those who want to remove all errors/warnings for their custom x99 DSDT.aml file.well how about OPTIMIZATIONS? This is my concern... Link to comment Share on other sites More sharing options...
PMheart Posted April 18, 2017 Share Posted April 18, 2017 well how about OPTIMIZATIONS? This is my concern...This is compiler related stuffs, don't really care for that. Sent from my iPhone 7 using Tapatalk 1 Link to comment Share on other sites More sharing options...
MICKHAEL Posted April 18, 2017 Share Posted April 18, 2017 @mfc88 @PMheart need some help to trace strange system freeze/hang. No error, no post, stuck image, no text, just freezing. Any advice? 1 Link to comment Share on other sites More sharing options...
Fergarth Posted April 18, 2017 Share Posted April 18, 2017 #mfc88 #PMheart need some help to trace strange system freeze/hang. No error, no post, stuck image, no text, just freezing. Any advice? Curiously, even with different hardware, the same happened to me under the same conditions in both 12.4 and 12.5. From what I understand it seems to have to do with the NV Web Driver. If I do not have it installed it does not happen. Just happens after installing the driver and have graphics acceleration... Link to comment Share on other sites More sharing options...
MICKHAEL Posted April 18, 2017 Share Posted April 18, 2017 Curiously, even with different hardware, the same happened to me under the same conditions in both 12.4 and 12.5. From what I understand it seems to have to do with the NV Web Driver. If I do not have it installed it does not happen. Just happens after installing the driver and have graphics acceleration... need to try. I thinking, maybe it's a wrong lan driver or ram speed.. it's drive me nuts Curiously, even with different hardware, the same happened to me under the same conditions in both 12.4 and 12.5. From what I understand it seems to have to do with the NV Web Driver. If I do not have it installed it does not happen. Just happens after installing the driver and have graphics acceleration... need to try. I thinking, maybe it's a wrong lan driver or ram speed.. it's drive me nuts Link to comment Share on other sites More sharing options...
MaLd0n Posted April 18, 2017 Share Posted April 18, 2017 Fine here with overclock, 10.12.5 and WebDriver 10.12.4 4 Link to comment Share on other sites More sharing options...
Balamut Posted April 19, 2017 Share Posted April 19, 2017 @MaLd0n How did you get the SPSR to load the drivers? 1 Link to comment Share on other sites More sharing options...
MaLd0n Posted April 19, 2017 Share Posted April 19, 2017 Platform Controller Hub/Power Management Control, work oob in Skylake and Kabylake, but not in x99(as usual) Page 852/3 and many other pages, search SPSR x99-chipset-pch-datasheet.pdf.zip 2 Link to comment Share on other sites More sharing options...
MICKHAEL Posted April 19, 2017 Share Posted April 19, 2017 hmmm 1 Link to comment Share on other sites More sharing options...
MICKHAEL Posted April 19, 2017 Share Posted April 19, 2017 sorry but don't understand exactly, what that means? Link to comment Share on other sites More sharing options...
MICKHAEL Posted April 19, 2017 Share Posted April 19, 2017 could you post a complete output of appleintelinfo kext (piker alpha script, you posted a partial result of it) "HyperX FURY Black 8GB, DDR4, 2400MHz, CL15, 1.2V *2" you have two memory sticks so your system is working in dual channel mode (quad channel is an optimal and exact condition with your specs and this is achieved with 4 sticks of memory) If you can, put also an output result for kextstat (from terminal write kextstat and see the output) I don't know which config.plist you are using and if your msg 0xE2 is unlocked or not this data could be useful to trace your problem Ieșire salvată Terminal.txt config.plist.txt Link to comment Share on other sites More sharing options...
MICKHAEL Posted April 19, 2017 Share Posted April 19, 2017 ok, I don't understand some injection in your config your mb firmware is unlocked so you can use other solutions in kernel patches try to use solution 2 here http://www.insanelymac.com/forum/topic/316516-macos-sierra-on-broadwell-eep-not-a-guide-but-maybe-a-working-in-progress/page-1 if you have a valid way to reverse if your system does not start then you can put here your efi folder to see which kexts you are using and other things well, tested, working, waiting to see dosar fără titlu.zip Link to comment Share on other sites More sharing options...
SavageAUS Posted April 19, 2017 Share Posted April 19, 2017 Just a small update: Currently using Rehabman's USBInjectAll.kext + XHCI-x99-injector.kext with a custom SSDT-UIAC.aml. This way, I no longer need the AppleUSBXHCIPCI 15 to 22/27/31 limit port patch. Instead of injecting all ports spread across EH01/EH02/XHCI, which most of these ports aren't used at all, instead I only have 12 ports injected into XHC. I highly recommend this method as it's more precise to which ports will be in use and whether or not the port is 2.0, 3.0 or internal (since 10.12, USB 3.1 ports should be natively supported). I've included a starter kit: Kexts that you need to install to EFI->CLOVER->Kexts->10.12, a SSDT-UIAC.dsl template, and IORegistry Explorer 2.1, which you can use in conjunction with this brief guide OR Rehabman's in-depth SSDT for USBInjectAll.kext guide Requirements: - Set up your BIOS Under Advanced / USB Configuration: Intel XHCI Mode - Enable EHCI Legacy Support - Disabled XHCI Hand-off - Disabled EHCI Hand-off - Disabled - DSDT.aml => XHCI/XHC1 must be named XHC (for most of you, you'll probably need to use one of the patches below OR if you have a custom DSDT.aml, then rename the device and any references from XHC1/XHCI to XHC by hand)*** Note: If you're curious to know exactly which Clover DSDT patch for your config.plist that you'll need, simply start up your computer, while at the Clover boot screen, press F4 to dump your ACPI tables. Wait 4 seconds, then boot into your OS. Next, mount your primary SSD drive (the one you just booted into) with Clover Configurator then click "Open Partition". Find and open this file with MaciASL: EFI->CLOVER->ACPI->origin->DSDT.aml. In MaciASL, Press ⌘ + F, then type "XHCI" or "XHC1". One of those should returns results (then you'll know which patch to use): Example and corresponding config.plist DSDT patch config.plist DSDT patches: Comment: Change XHCI to XHC Find: 58484349 Replace: 5848435F Comment: Change XHC1 to XHC Find: 58484331 Replace: 5848435F - You will also need an AppleUSBXHCIPCI 15 to xx port limit patch in your config.plist (under KextsToPatch): Note: You can find out which patch you'll need by using MaciASL and searching in your DSDT.aml for "RHUB", then counting the HSxx + SSxx ports: Example Note: Where to add the USB port limit patch to your config.plist: Example Name: AppleUSBXHCIPCI Find: 83BD74FFFFFF10 Replace: 83BD74FFFFFF16 Comment: Change 15 Port Limit To 22 in XHCI 10.12 OR if your board has more than 22: Name: AppleUSBXHCIPCI Find: 83BD74FFFFFF10 Replace: 83BD74FFFFFF1B Comment: Change 15 Port Limit To 27 in XHCI 10.12 OR if your board has more than 27: Name: AppleUSBXHCIPCI Find: 83BD74FFFFFF10 Replace: 83BD74FFFFFF1F Comment: Change 15 Port Limit To 31 in XHCI 10.12 -IORegistry Explorer 2.1 (provided in Starter Kit) Summary: 1.) With USBInjectAll and XHCI-x99-injector.kext loaded in EFI->CLOVER->kexts->10.12 or System/Library/Extensions via Kext Utility, load up IOReg 2.1 2.) Do a search for "usb" 3.) You'll notice you'll have HS01 to SSP6 (or something similar) injected into XHC; however, now comes the task of narrowing down which ones your motherboard/computer case USBs are mapped to. 4.) Plug in a USB 3.0 device into a USB 3.0 port, find that mapped location by looking for the device in IOReg, then eject it. Write down the location (SSxx). Next, plug in a USB 2.0 device and find the other mapped location by looking for that device. Write down the location (HSxx) USB 3.0 ports will have two locations: a SSxx location and a HSxx location AND both locations will also have a connector value of 3 regardless of the device that is plugged in! Note: If you have trouble locating where the device is mapped, click the Apple Icon on the top left, select "About This Mac", click "System Report", click on the "USB" tab, look at the "Location ID" (eg. 0x14400000) and in IOReg look for that same address (in this case, the m9xx device is mapped to HS06 @ 0x14400000): 5.) Rinse and repeat until you've eliminated all possible USB mapped locations Note: USB 2.0 ports will only be mapped to one HSxx location, so no need to test 3.0 devices in a 2.0 port, and will have a connector value of 0 regardless of the device that is plugged in! Note: USB "Hubs" that come packaged with the motherboard should have a connector value of 255. Other devices, like internal blue tooth devices, should also have a 255 connector value. Note: USB "Hubs" external to the motherboard should have a connector value of 0 or 3. 6.) After you've eliminated all possible USB mapped locations, open up the provided SSDT-UIAC.dsl with MaciASL (to set up MaciASL, follow this guide up to step 6). Note: I've included a "USB-Mapped-Ports" text file that gives you a basic idea of my particular USB layout. I'd recommend you do something similar to make your life easier and to keep track of everything 7.) Using the provided SSDT-UIAC.dsl as a template, input XHC's PCI compatible ID, the injected port count, the USB mapped location (for example, HS01), the connector value (connector values will be: 3 = USB 3.0; 0 = USB 2.0; 255 = built-in), and the port number's hex address (it'll correspond to the port in hex). Note: You can find XHC's PCI compatible ID by using IOReg: Example (note that in our SSDT-UIAC.dsl that we remove "pci" and use a _ (underscore) instead of a , (comma). You don't have to use the PCI compatible ID!! You can use "XHC" instead, but I prefer the ID. Note: My injected port count is 21 ports (or 15 hex), which is what I've used in the SSDT-UIAC.dsl's "port-count" (you can count how many you have by counting how many are listed in RHUB + 1). The actual ports in use for my setup is 14 ports (12 in XHC and 2 in RP05 -- RP05 ports are the USB 3.1 ports natively supported by Sierra). If you have more than 21 ports mapped that are in use, you may have to utilize EHCI, and you may have to keep the 22/27/31 port limit patch in use, which is beyond the scope of this brief summary. Note: You can find the port's hex address by using IOReg: Example Here's a port hex list (may or may not apply to your particular board)... HS01 === 0x01 HS02 === 0x02 HS03 === 0x03 HS04 === 0x04 HS05 === 0x05 HS06 === 0x06 HS07 === 0x07 HS08 === 0x08 HS09 === 0x09 HS10 === 0x0A HS11 === 0x0B HS12 === 0x0C HS13 === 0x0D HS14 === 0x0E SSP1 === 0x10 SSP2 === 0x11 SSP3 === 0x12 SSP4 === 0x13 SSP5 === 0x14 SSP6 === 0x15 ------------------ 0x15 = 21 ports (15 in hexadecimal => 21 in decimal -- note: port hex address 0x0F is not used! ) =============================== =============================== =============================== HS01 === 0x01 HS02 === 0x02 HS03 === 0x03 HS04 === 0x04 HS05 === 0x05 HS06 === 0x06 HS07 === 0x07 HS08 === 0x08 HS09 === 0x09 HS10 === 0x0A HS11 === 0x0B HS12 === 0x0C HS13 === 0x0D HS14 === 0x0E SS01 === 0x10 SS02 === 0x11 SS03 === 0x12 SS04 === 0x13 SS05 === 0x14 SS06 === 0x15 SS07 === 0x16 SS08 === 0x17 SS09 === 0x18 SS10 === 0x19 USR1 === 0x1A USR2 === 0x1B ------------------ 0x1B = 27 ports (1B in hexadecimal => 27 in decimal -- note: port hex address 0x0F is not used!) An example of HS01 injected as a 3.0 USB port (notice that the UsbConnector is 3 and the port (in hex) is 0x01): "HS01", Package() { "UsbConnector", 3, "port", Buffer() { 0x01, 0, 0, 0 }, }, An example of HS14 injected as a USB 2.0 port (notice that the UsbConnector is 0 (USB 2.0) and the port (in hex) is 0x0E): "HS14", Package() { "UsbConnector", 0, "port", Buffer() { 0x0E, 0, 0, 0 }, }, An example of SS06 injected as an internal USB port (notice that the UsbConnector is 255 and the port (in hex) is 0x15): "SS06", Package() { "UsbConnector", 255, "port", Buffer() { 0x15, 0, 0, 0 }, }, Here's what my complete SSDT-UAIC.aml looks like: DefinitionBlock ("", "SSDT", 2, "hack", "UIAC", 0x00000000) { Device (UIAC) { Name (_HID, "UIA00000") // _HID: Hardware ID (leave this as-is) Name (RMCF, Package (0x02) { "8086_8d31", // PCI compatible ID Package (0x04) { "port-count", Buffer (0x04) { 0x15, 0x00, 0x00, 0x00 // The amount of ports RHUB+1 has }, "ports", // where we begin to inject our mapped ports Package () { "HS01", Package (0x04) { "UsbConnector", 0x03, "port", Buffer (0x04) { 0x01, 0x00, 0x00, 0x00 } }, "HS02", Package (0x04) { "UsbConnector", 0x03, "port", Buffer (0x04) { 0x02, 0x00, 0x00, 0x00 } }, "HS05", Package (0x04) { "UsbConnector", Zero, "port", Buffer (0x04) { 0x05, 0x00, 0x00, 0x00 } }, "HS06", Package (0x04) { "UsbConnector", 0, "port", Buffer (0x04) { 0x06, 0x00, 0x00, 0x00 } }, "HS09", Package (0x04) { "UsbConnector", 0x03, "port", Buffer (0x04) { 0x09, 0x00, 0x00, 0x00 } }, "HS10", Package (0x04) { "UsbConnector", 255, "port", Buffer (0x04) { 0x0A, 0x00, 0x00, 0x00 } }, "HS11", Package (0x04) { "UsbConnector", 255, "port", Buffer (0x04) { 0x0B, 0x00, 0x00, 0x00 } }, "HS13", Package (0x04) { "UsbConnector", Zero, "port", Buffer (0x04) { 0x0D, 0x00, 0x00, 0x00 } }, "HS14", Package (0x04) { "UsbConnector", Zero, "port", Buffer (0x04) { 0x0E, 0x00, 0x00, 0x00 } }, "SSP1", Package (0x04) { "UsbConnector", 0x03, "port", Buffer (0x04) { 0x10, 0x00, 0x00, 0x00 } }, "SSP2", Package (0x04) { "UsbConnector", 0x03, "port", Buffer (0x04) { 0x11, 0x00, 0x00, 0x00 } }, "SSP5", Package (0x04) { "UsbConnector", 0x03, "port", Buffer (0x04) { 0x14, 0x00, 0x00, 0x00 } }, "SSP6", Package (0x04) { "UsbConnector", 255, "port", Buffer (0x04) { 0x15, 0x00, 0x00, 0x00 } } } } }) } } 8.) Once you've added all mapped ports that are in use (exclude ports that are NOT used) in the .dsl, compile it and make sure you don't have any errors. Now save it: Save as: SSDT-UIAC.aml Where: Desktop File Format: ACPI Machine Language Binary 9.) Add this SSDT into EFI->CLOVER->ACPI->patched (if you're using sorted tables, you'll need to add this SSDT to the sorted list in your config.plist) 10.) Open your config.plist and disable the AppleUSBXHCIPCI 15 to 22/27/31 port limit patch. Now, reboot and boot back into your OS. Open up IOReg 2.1, search for usb, and now your tree should look condensed to the ports you've specified in the SSDT: 11.) Now that you have your USBs mapped and injected, you'll now need to add power options to them, so that you can use them for charging your USB devices. We'll be adding power options via a SSDT-XHC.aml (I've included a SSDT-XHC.dsl for you to compile): Note: If you're not using an x99 motherboard, then you'll need to change the "device-id" (necessary) and you may want rename the "model" to your USB xHC Host Controller (optional as this just for show). Note: You can find XHC's device id by using IOReg: Example Note: For "AAPL,device-internal," make sure you specify how many devices are internal in your SSDT-UIAC.aml DefinitionBlock ("", "SSDT", 2, "mfc88", "XHC", 0x00000000) { External (_SB_.PCI0.XHC_, DeviceObj) // (from opcode) Method (_SB.PCI0.XHC._DSM, 4, NotSerialized) // _DSM: Device-Specific Method { If (LNot (Arg2)) { Return (Buffer (One) { 0x03 }) } Return (Package () { "device-id", Buffer (0x04) { 0x31, 0x8D, 0x00, 0x00 // make sure this matches XHC's device ID }, "name", Buffer () { "Intel XHC Controller" }, "model", Buffer () { "Intel 99 Series Chipset Family USB xHC Host Controller" // optional: rename to your motherboard's xHC Host Controller name }, "AAPL,current-available", 0x0834, "AAPL,current-extra", 0x0A8C, "AAPL,current-in-sleep", 0x0A8C, "AAPL,max-port-current-in-sleep", 0x0834, "AAPL,device-internal", 0x03, Buffer (One) { 0x00 }, "AAPL,clock-id", Buffer (One) { 0x01 } }) } } When done correctly (injected ports with power options): *** Note if you plan on using eHCI locations (in the example above, I'm not), you'll need to rename EHC1 to EH01 and EHC2 to EH02 via DSDT.aml edit or Clover DSDT patches (that way it'll work in conjunction with the UsbInjectAll kext). You'll also need use: Fake_PCIID.kext + FakePCIID_XHCIMux.kext (together these two kexts map HSxx (usb 2.0) ports from XHC to EH01/EH02), which you download together from: here (Important: Only use the two Fake kexts mentioned above in conjunction with USBInjectAll and XHCI-x99-injector!!) Lastly, you may need to need to adjust your BIOS for proper xHCI handoff to eHCI. Check Rehabman's guide for more information. Sorry for the long quote but wanted to make sure it was right. I have used this guide to successfully create a SSDT-UIAC.aml for my machine but i have a NZXT IU01 set internally on my machine and i would like to be able to utilise the usb ports on this for say a bluetooth adapter but it shows up strange in IOREG as shown in image. Please help :-) The DataTraveler is a usb 2.0 drive that was put into one port, pulled and put in the other. Link to comment Share on other sites More sharing options...
mfc88 Posted April 19, 2017 Share Posted April 19, 2017 Sorry for the long quote but wanted to make sure it was right. I have used this guide to successfully create a SSDT-UIAC.aml for my machine but i have a NZXT IU01 set internally on my machine and i would like to be able to utilise the usb ports on this for say a bluetooth adapter but it shows up strange in IOREG as shown in image. Please help :-) The DataTraveler is a usb 2.0 drive that was put into one port, pulled and put in the other. Screen Shot 2017-04-19 at 10.17.04 pm.png Ask Rehabman: Rehabman's in-depth SSDT for USBInjectAll.kext guide Link to comment Share on other sites More sharing options...
Recommended Posts