Contribute
Register

How to build your own iMac Pro [Successful Build/Extended Guide]

Status
Not open for further replies.
Interesting..
....

hi @kgp, i try my new sandisk usb-c today and result as following:

Bios -> Apline Ridge XHCI WA - Disabled

1 - if boot osx without usb-c, System Information\PCI wont show USB-C info. then plug in usb-c for both ports, nothing change.

2 - if boot osx with usb-c plug in, PCI will show USB-C info. can find the usb-c drive. also RP05\UPSB\DSB2 will have info from IOR report.

3-a - boot with first port plug in and then try the second port, everything is working.
(and then try to plug in first port again, failed...second port again, failed...)

3-b - boot with second port plug in and then try the first port, everything is working.
(and then try to plug in second port again, failed...first port again, failed...)

4 - boot with first port plug in and then put osx into sleep, wakeup osx and system warning 'Disk Not Ejected Properly'

disk ejected.png


5 - boot with first port plug in and then eject USB-C, put osx into sleep, wakeup osx, system power on with black screen. keyboard & mouse no response. have to press the soft reset button.

6 - remove SSDT-13_TB3HP.aml from clover, boot with usb-c plug in, system also can find the usb-c drive. (native support usb-c ?)



so, both TB3 port dont support hotplug right?
attached files with aida64 report and ioreg. pls kindly help to have a look. thanks in advance.



PCI.png
 

Attachments

  • asus deluxe2 tb3.zip
    12.3 MB · Views: 71
Last edited:
Having trouble finding out how to edit my ssd-x299-Nvidia.aml to use 2 graphics cards in slot 1 and 3. And if I do, do I need to change/add any patches? Thanks again!
 
hi @kgp, i try my new sandisk usb-c today and result as following:

Bios -> Apline Ridge XHCI WA - Disabled

1 - if boot osx without usb-c, System Information\PCI wont show USB-C info. then plug in usb-c for both ports, nothing change.

2 - if boot osx with usb-c plug in, PCI will show USB-C info. can find the usb-c drive. also RP05\UPSB\DSB2 will have info from IOR report.

3-a - boot with first port plug in and then try the second port, everything is working.
(and then try to plug in first port again, failed...second port again, failed...)

3-b - boot with second port plug in and then try the first port, everything is working.
(and then try to plug in second port again, failed...first port again, failed...)

4 - boot with first port plug in and then put osx into sleep, wakeup osx and system warning 'Disk Not Ejected Properly'

View attachment 382974

5 - boot with first port plug in and then eject USB-C, put osx into sleep, wakeup osx, system power on with black screen. keyboard & mouse no response. have to press the soft reset button.

6 - remove SSDT-13_TB3HP.aml from clover, boot with usb-c plug in, system also can find the usb-c drive. (native support usb-c ?)



so, both TB3 port dont support hotplug right?
attached files with aida64 report and ioreg. pls kindly help to have a look. thanks in advance.



View attachment 382972

At first place the good news:

a.) The system warning 'Disk Not Ejected Properly' on wake from sleep is a very common and known USB problem not at all TTR USB-C related and also observed on real Macs. In my guide I mention solutions to circumvent this global USB problem on Hackintosh systems and even real Macs. Thus there are indeed solutions.

b.) With your findings above you clearly demonstrated that also onboard TTR USB-C works with USB devices connected at boot. Your recent IOREG save also confirms that the TB-SSDT is properly implemented.

Even the HP property is correctly injected under both DSB0 and DSB2.

Screenshot 2019-01-28 at 19.39.45.png


Screenshot 2019-01-28 at 19.38.32.png


Now the bad news:

Already from your first IOREG.save without any TB-SSDT in your EFI-Folder, I outlined that TBTD (and DSB2 with the TB-SSDT) does not have any XHC properties in its ACPI table and remains unpopulated without connecting any USB-C device at boot. This is a severe difference when compared with the TTR PCIe adapter, where DSB2 is always properly populated, also without any USB device connected at boot. This rather points to some at least macOS related ASUS Prime X299 Deluxe II firmware problem concerning the TTR onboard controller implementation.

I therefore asked you to install the respective TB drivers under Windows and to initialise and test both ports of the ASUS Prime X299 Deluxe II with TB and USB-C devices, before performing directly afterwards any tests under macOS, with the hope that this might remove the TB and USB-C initialisation problems under macOS. No idea though if you really did what I asked for and if the latter would really change anything under macOS.

In conclusion:

In case of the ASUS Prime X299 Deluxe and the TTR PCIe adapter, SSDT-X299-TB3HP.aml properly implements UPSB, DSB0, NHI, DSB1, DSB2, XHCI and DSB4 als well as the NHI and USB-C drivers in Section "PCI" of Apple's system report, even without any TB or USB-C devices connected at boot. Subsequently HotPlug of both TB and USB-C devices work flawless. Only drawback: black screen on wake (KP) and Error 4 on the ASUS Prime X299 Deluxe LED display with TB devices connected during sleep. With USB-C devices connect during sleep or all TB devices disconnected before sleep, the system returns flawless from sleep, at most with the usual USB warning 'Disk Not Ejected Properly', which although has no significance and can be fixed anyway like in case of other USB onboard connectors of state-of-the-art motherboards or even real Macs. The USB-C device is properly mounted though, and HotPlug continues working also after sleep for both TB and USB-C. In case of the ASUS X299 Sage WS 10GB and the TTR PCIe Adapter, @DSM2 confirmed that with the SSDT-X299-TB3HP.aml even wake from sleep properly works with TB devices connection during sleep. Thus, the remaining issue on wake from sleep with TB devices connected during sleep to the TTR PCIe Adapter on the ASUS Prime X299 Deluxe (KP) seems definitely ASUS Prime X299 Deluxe BIOS firmware related. Unfortunately, ASUS refused to fix this issue up to know, although I repeatedly addressed the issue to the ASUS support hotline.

In case of the onboard TTR controller of the ASUS Prime X299 Deluxe II, TBTD or DSB2 only get properly populated with USB-C devices connected during boot. In consequence, also the USB-C driver only shows up in section "PCI" of Apple's system report with USB-C devices connected at boot. There seems to definitely exist some related flaw in the BIOS firmware for the ASUS Prime X299 Deluxe II. TBTD always should be populated, even without any SSDT or TB devices connected during boot. In contrary, at least the NHI driver also seems to be present in section "PCI" of Apple's system report, even without TB devices connected during boot. Why, following your results, neither TB nor USB-C HotPlug is working, although the PCIHotplugCapable feature is properly injected via DSM under both devices DSB0 and DSB2 (with USB-C devices connected at boot), remains unexplained to me. In any case it seems that within the current ASUS Prime X299 Deluxe II BIOS implementation, neither TB nor USB-C HotPlug can be achieved like in case of the GA X299 Designare EX, although the latter features an Apline Ridge onboard controller.

In my opinion, the only way to get TB and USB-C HotPlug working under macOS with the onboard TTR controller of the ASUS Prime X299 Deluxe II seems an unavoidable firmware modification by ASUS. This might imply infinite message exchange between you and ASUS, until ASUS one day reacts and removes related issues.

The other hope is the following: Based on your current IOREG screen shot, it seems that you still do not use SSDT-X299-TB3HP.aml attached below. However, my hope is really minimal that the latter will be able to remove all remaining issues. But maybe it is worth a try.

The other thing is that I am not sure that you really also confirmed TB Hotplug not working under macOS with the onboard TTR controller of the ASUS Prime X299 Deluxe II and SSDT-X299-TB3HP.aml. However, if the ASUS Prime X299 Deluxe II behaves like the GA X299 Designare EX, it won't work definitely.

Don't know what else to say from my side.

Just.. Cheers, man..

KGP
 

Attachments

  • SSDT-X299-TB3HP.aml.zip
    1.8 KB · Views: 96
Having trouble finding out how to edit my ssd-x299-Nvidia.aml to use 2 graphics cards in slot 1 and 3. And if I do, do I need to change/add any patches? Thanks again!

The best is to use two separate SSDT-x299-Nvidia.amls and you have to properly modify ACPI path and ACPI replacements in both SSDTs. You should also use GFX0 in the one and GFX1 in the other SSDT and of your course you have to name the two SSDTs differently, like SSDT-x299-Nvidia-slot1.aml and SSDT-x299-Nvidia-slot4.aml, the same states for their definition blocks.
 
Last edited:
You should also use GFX0 in the one and GFX1 in the other SSDT and of your course you have to name the two SSDTs differently, like SSDT-x299-Nvidia-slot1.aml and SSDT-x299-Nvidia-slot4.aml, the same states for their definition blocks.
You also forgot to say that the name in the Definition block should be different like
SSDT-x299-Nvidia-slot1.aml:
Code:
DefinitionBlock ("", "SSDT", 1, "KGP", "NVIDIA1", 0x00000000)
SSDT-x299-Nvidia-slot4.aml:
Code:
DefinitionBlock ("", "SSDT", 1, "KGP", "NVIDIA4", 0x00000000)


If they have the same name, one, or both may not load.
 
You also forgot to say that the name in the Definition block should be different like
SSDT-x299-Nvidia-slot1.aml:
Code:
DefinitionBlock ("", "SSDT", 1, "KGP", "NVIDIA1", 0x00000000)
SSDT-x299-Nvidia-slot4.aml:
Code:
DefinitionBlock ("", "SSDT", 1, "KGP", "NVIDIA4", 0x00000000)


If they have the same name, one, or both may not load.

That's something I anyway added subsequently to my post. Anyway, many thanks for mentioning it once more explicitly here by also adding further details. :thumbup:
 
Man you guys are the BEST! Thanks you so much. Everything I was finding was for a Mac Pro 6,1 def, and wasn't sure if it would be the same for the iMac Pro. So is is safe to say I can keep the original x299-Nvidia.aml without changes and only modify the 2nd one, to Nvidia-slot4.aml like you suggested?
 
Man you guys are the BEST! Thanks you so much. Everything I was finding was for a Mac Pro 6,1 def, and wasn't sure if it would be the same for the iMac Pro. So is is safe to say I can keep the original x299-Nvidia.aml without changes and only modify the 2nd one, to Nvidia-slot4.aml like you suggested?

Yup
 
Cool, thanks. Looks like I'm on the right track... however, if I have 1 display plugged into each gfx card I get this weird screen glitch and the computer is barely useable. If I have 2 screens in the top card, it works perfect. If I have 1 screen only in the bottom card it works perfect. If I have 2 screens in the bottom card I get black screen at boot up, any thoughts?
0128191336.jpg

0128191336b.jpg
0128191337-jpg.383060
0128191338-jpg.383063

0128191328.jpg
 

Attachments

  • 0128191337.jpg
    0128191337.jpg
    264.8 KB · Views: 266
  • 0128191338.jpg
    0128191338.jpg
    217.1 KB · Views: 267
Status
Not open for further replies.
Back
Top