Contribute
Register

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

Status
Not open for further replies.

kgp

Retired
Joined
May 30, 2014
Messages
6,778
Motherboard
ASUS WS X299 Sage 10G
CPU
i9-7980XE
Graphics
Vega 64
Mac
  1. iMac
  2. MacBook Pro
  3. Mac mini
Mobile Phone
  1. iOS
Dear @kgp
I use cpu i-9 7980xe, asus x299 deluxe board and evga 1080ti ftw3 hybrid graphics card.
I started by looking at your High sierra (17G65) article.
I am using dual monitor (two 1920 * 1080 and supports hdmi port)
High sierra (17G65) When I first tried it, the boot screen was correctly displayed.
When I use it later, it is displayed on the black screen at some moment and then the high Sierra screen appears.
I upgraded to Mohave and then I installed it again in a high Sierra.
Hi Sierra is now version 17G5019.
The High Sierra screen still appears after the black screen. (DP to HDMI cable is in use)
The ports on my graphics card are three dp ports and one hdmi port.
Now the situation is only audio is played on one dp port. In the past, all the dp ports were remembered as audio enabled.
Dual monitor is possible with hdmi and dp port, but there is no audio.
So if you connect only one hdmi port, you can sleep, but if you do dual monitor, it wakes up in 5 ~ 10 minutes.

I wonder how I can solve black screen and audio.
Thank you very much for reading this article.

Please see post #12,029 . Thanks for your comprehension.
 
Joined
Dec 31, 2013
Messages
797
Motherboard
Huawei Matebook D
CPU
i5-8250U
Graphics
UHD 620
Mobile Phone
  1. iOS
Hi kgp
I have one question about Nvidia SSDT implementation.

I've used your source SSDT available at Github and modified the address in the SSDT itself.
What I get in IOReg is what you can see from the attached image.
One of the DP also has Audio working.

Is the PCI path correct?
Should I do any modification?
I also add screenshot of SSDT within MaciASL.
I don't see any PEGP in IOReg.

Thanks for your help.
 

Attachments

  • Schermata 2019-02-28 alle 12.29.54.png
    Schermata 2019-02-28 alle 12.29.54.png
    118 KB · Views: 174
  • Schermata 2019-02-28 alle 12.35.03.png
    Schermata 2019-02-28 alle 12.35.03.png
    430.2 KB · Views: 174

kgp

Retired
Joined
May 30, 2014
Messages
6,778
Motherboard
ASUS WS X299 Sage 10G
CPU
i9-7980XE
Graphics
Vega 64
Mac
  1. iMac
  2. MacBook Pro
  3. Mac mini
Mobile Phone
  1. iOS
Hi kgp
I have one question about Nvidia SSDT implementation.

I've used your source SSDT available at Github and modified the address in the SSDT itself.
What I get in IOReg is what you can see from the attached image.
One of the DP also has Audio working.

Is the PCI path correct?
Should I do any modification?
I also add screenshot of SSDT within MaciASL.
I don't see any PEGP in IOReg.

Thanks for your help.

Following your IOREG Screenshot, you obviously did not properly adapt the Nvidia SSDT available on Github to your system.

Please properly adapt the Nvidia SSDT available on Github to your system based on the original GPU ACPI table in your IOREGExplorer after temporally removing any GPU SSDT and WEG.kext from your EFI-Folder.

Else, please see post #12,029 and many thanks in advance for your comprehension.
 
Joined
Dec 31, 2013
Messages
797
Motherboard
Huawei Matebook D
CPU
i5-8250U
Graphics
UHD 620
Mobile Phone
  1. iOS
Following your IOREG Screenshot, you obviously did not properly adapt the Nvidia SSDT available on Github to your system.

Please properly adapt the Nvidia SSDT available on Github to your system based on the original GPU ACPI table in your IOREGExplorer after temporally removing any GPU SSDT and WEG.kext from your EFI-Folder.

Else, please see post #12,029 and many thanks in advance for your comprehension.

Thanks for your reply. I know about post #12,029.

Thing is I'm learning to edit these SSDTs.

For example on the Asus WS X299 Sage (that you suggested and I purchased) Thunderbolt 3 is implemented on PCI0 as on this motherboards there's only one slot in which to install the TB3 card (PCIe 16_2), hence I had to implement it like the Z370 motherboard style and I succeeded. I have all the loaded drivers and within IOReg the path tree is exactly as the one you show on page 1.

But for the Nvidia I seem not to understand. Maybe someone else can help if they know more than I do on the matter.
I've attached the screenshot of the Nvidia path in IOReg without WhateverGreen and any SSDT and after the change I did in the SSDT.
Does the "Nvidia After" screenshot make any sense or is it still wrong? I guess so.

Thanks for your help!!
 

Attachments

  • Nvidia.png
    Nvidia.png
    104.7 KB · Views: 172
  • Nvidia After.png
    Nvidia After.png
    114.7 KB · Views: 172

kgp

Retired
Joined
May 30, 2014
Messages
6,778
Motherboard
ASUS WS X299 Sage 10G
CPU
i9-7980XE
Graphics
Vega 64
Mac
  1. iMac
  2. MacBook Pro
  3. Mac mini
Mobile Phone
  1. iOS
Thanks for your reply. I know about post #12,029.

Thing is I'm learning to edit these SSDTs.

For example on the Asus WS X299 Sage (that you suggested and I purchased) Thunderbolt 3 is implemented on PCI0 as on this motherboards there's only one slot in which to install the TB3 card (PCIe 16_2), hence I had to implement it like the Z370 motherboard style and I succeeded. I have all the loaded drivers and within IOReg the path tree is exactly as the one you show on page 1.

But for the Nvidia I seem not to understand. Maybe someone else can help if they know more than I do on the matter.
I've attached the screenshot of the Nvidia path in IOReg without WhateverGreen and any SSDT and after the change I did in the SSDT.
Does the "Nvidia After" screenshot make any sense or is it still wrong? I guess so.

Thanks for your help!!

I already told you that your current SSDT adaptation is totally wrong. Even if you ask a second time, the answer will still be that your actual SSDT implementation is totally wrong. Yet you have GFX0 and HDAU only implemented thanks to WEG.kext and not thanks to your SSDT implementation! Don't you see that the entire ACPI path in front of GFX0 is not like currently implemented in your SSDT implementation, and that due to your erroneous ACPI path definition within your SSDT, GFX0 is even implemented twice, once by your SSDT and and a second time by the WEG.kext? Don't you see that your current IROEG result after using your SSDT makes no sense at all?

Carefully study this small guideline which anyway provides all information you need to know. I guess I wrote this sentence already several dozens of times along my threads.. ;)

Else, following your IOREG.save above, one would intuitively expect the following necessary SSDT adaptation:

Code:
Scope: PC02.BR2A
Scope: nulling SL05
Scope:  PEGP (implementing existing PEGP device after nulling SL05)
Device: EGPA (implementing new EGPA device substituting "PCI bridge")
            Name (_ADR, 0x00100000)  // _ADR: Address
Device: EGPB (implementing new EGPB device substituting "PCI bridge")
            Name (_ADR, 0x00080000)  // _ADR: Address
Device: GFX0 (implementing new GFX0 device substituting "display")
            Name (_ADR, Zero)  // _ADR: Address


This should be really sufficient information to get your things properly done by yourself.

Good luck, my friend!

KGP
 
Last edited:
Joined
Dec 31, 2013
Messages
797
Motherboard
Huawei Matebook D
CPU
i5-8250U
Graphics
UHD 620
Mobile Phone
  1. iOS
I already told you that your current SSDT adaptation is totally wrong. Even if you ask a second time, the answer will still be that your actual SSDT implementation is totally wrong. Yet you have GFX0 and HDAU only implemented thanks to WEG.kext and not thanks to your SSDT implementation! Don't you see that the entire ACPI path in front of GFX0 is not like currently implemented in your SSDT implementation, and that due to your erroneous ACPI path definition within your SSDT, GFX0 is even implemented twice, once by your SSDT and and a second time by the WEG.kext? Don't you see that your current IROEG result after using your SSDT makes no sense at all?

Carefully study this small guideline which anyway provides all information you need to know. I guess I wrote this sentence already several dozens of times along my threads.. ;)

Else, following your IOREG.save above, one would intuitively expect the following necessary SSDT adaptation:

Code:
Scope: PC02.BR2A
Scope: nulling SL05
Scope:  PEGP (implementing existing PEGP device after nulling SL05)
Device: EGPA (implementing new EGPA device substituting "PCI bridge")
            Name (_ADR, 0x00100000)  // _ADR: Address
Device: EGPB (implementing new EGPB device substituting "PCI bridge")
            Name (_ADR, 0x00080000)  // _ADR: Address
Device: GFX0 (implementing new GFX0 device substituting "display")
            Name (_ADR, Zero)  // _ADR: Address


This should be really sufficient information to get your things properly done by yourself.

Good luck, my friend!

KGP

Holy this Holy that!!!

I've learned something!
Now you can say you helped me KGP! Well..you can say it anyway.

Is what's in the screenshot to be considered progress?
I bet it is some progress...but why EGPA? and not KAKA or PELE or WHAT...?
:D:D:D

Dankyou Dankyou so much!
 

Attachments

  • Schermata 2019-02-28 alle 21.32.52.png
    Schermata 2019-02-28 alle 21.32.52.png
    104 KB · Views: 190
  • Schermata 2019-02-28 alle 21.37.22.png
    Schermata 2019-02-28 alle 21.37.22.png
    115.7 KB · Views: 176
  • Like
Reactions: kgp
Joined
Nov 4, 2018
Messages
13
Motherboard
ASUS X299 DELUXE
CPU
i9-7920X
Graphics
GTX 1080 Ti
@merong
put CSM enabled in your Bios
It worked for me in dual screen with DVI and HDMI.
 

kgp

Retired
Joined
May 30, 2014
Messages
6,778
Motherboard
ASUS WS X299 Sage 10G
CPU
i9-7980XE
Graphics
Vega 64
Mac
  1. iMac
  2. MacBook Pro
  3. Mac mini
Mobile Phone
  1. iOS
Holy this Holy that!!!

I've learned something!
Now you can say you helped me KGP! Well..you can say it anyway.

Is what's in the screenshot to be considered progress?
I bet it is some progress...but why EGPA? and not KAKA or PELE or WHAT...?
:D:D:D

Dankyou Dankyou so much!

You can also use KAKA or PELE or WHAT if not already in use. ;)
 
Joined
Dec 31, 2013
Messages
797
Motherboard
Huawei Matebook D
CPU
i5-8250U
Graphics
UHD 620
Mobile Phone
  1. iOS
You can also use KAKA or PELE or WHAT if not already in use. ;)

Thank you so much...I really learned to think a bit more those PCI paths.
Namaste..:thumbup:
 
  • Like
Reactions: kgp

kgp

Retired
Joined
May 30, 2014
Messages
6,778
Motherboard
ASUS WS X299 Sage 10G
CPU
i9-7980XE
Graphics
Vega 64
Mac
  1. iMac
  2. MacBook Pro
  3. Mac mini
Mobile Phone
  1. iOS
Thank you so much...I really learned to think a bit more those PCI paths.
Namaste..:thumbup:

Good.. now you might be also able to help others here and take some workload.. ;)
 
Status
Not open for further replies.
Top