Contribute
Register

[SUCCESS] Gigabyte Designare Z390 (Thunderbolt 3) + i7-9700K + AMD RX 580

Rag

Joined
Jul 5, 2019
Messages
134
Motherboard
Gigabyte Z390 Designare
CPU
i9-9900K
Graphics
RX 5700 XT
Mac
  1. Mac Pro
Mobile Phone
  1. iOS
Hello @CaseySJ

Does slide = 0 have any function on the Open Core ? (EFI)

Thanks
 

CaseySJ

Moderator
Joined
Nov 11, 2018
Messages
17,380
Motherboard
Gigabyte Z490 Vision D
CPU
i5-10400
Graphics
RX 580
Mac
  1. MacBook Air
  2. MacBook Pro
  3. Mac Pro
Classic Mac
  1. Quadra
Mobile Phone
  1. iOS
Hello @CaseySJ

Does slide = 0 have any function on the Open Core ? (EFI)

Thanks
Alas that is a vestige of days gone by and may safely be deleted!
 

CaseySJ

Moderator
Joined
Nov 11, 2018
Messages
17,380
Motherboard
Gigabyte Z490 Vision D
CPU
i5-10400
Graphics
RX 580
Mac
  1. MacBook Air
  2. MacBook Pro
  3. Mac Pro
Classic Mac
  1. Quadra
Mobile Phone
  1. iOS
Hello Casey,

Do you think it is possible to software-enable (i.e. without flashing) the Thunderbolt Bus and Local Node for the Asus ThunderboltEX 3 Alpine Ridge card, but when installed into an Asus Prime Z370A motherboard vs. the Asus X99? The Asus Prime Z370A motherboard also supports the Thunderbolt header cable supplied with the Asus ThunderboltEX 3 card. I currently have the card installed (with cable) and it is working partially via an SSDT patch, but unfortunately the Thunderbolt bus and local node are not activated - i.e. I see "Thunderbolt: No drivers are loaded" under System Information. I have included my DSDT.aml file for the Prime Z370A in case you see a way to achieve the same software-only success as with the X99. Perhaps this has already been solved, but I could not find it. Apologies in advance if you have already posted a solution for this combination of card and motherboard. FYI - looking at my IO registry, the ThunderboltEX 3 card is located at root port 21 (RP21).
Hello @maXterm,

We were indeed able to activate ThunderboltEX 3 on Asus Prime Z370A. It will not be perfect, but the limitations could be worked around. I would encourage you to try the solution presented below, but keep this in mind:
  • First perform a cold boot with no TB devices connected.
  • Check if Thunderbolt Bus is activated (System Information --> Thunderbolt).
  • If so, hot plug a TB device. Does it connect and work?
  • If not, keep the device connected and reboot the system.
  • Does it work now?
  • Try USB-C devices as well. They may or may not need to be connected prior to boot.
  • Also check sleep/wake behavior with TB devices connected.
In other words, the SSDT can enable Thunderbolt Bus, but it's up to you to find the limitations and see if you can work around those limitations.

Screen Shot 2020-09-13 at 8.00.31 AM.png


 
Joined
Mar 9, 2020
Messages
51
Motherboard
Gigabyte Z390 Designare
CPU
i5-9600K
Graphics
RX 580
Some other questions:
  • Have you tried different HDMI and DisplayPort cables?
  • Have you tried the following:
    • Physically remove the RX 580
    • Connect your monitor (one or both) to the on-board video ports
      • Use USB-C to DisplayPort cable
      • Use HDMI to HDMI cable
    • Then test sleep and wake in Windows (macOS will not output anything over those ports unless we change Platform ID to 0x3E9B0007 and enable HDMI framebuffer patches).
      • Because problem is occurring in Windows as well, first test this setup under Windows.
    • This can tell us if the RX 580 is the culprit.
Hi again, Casey. So I followed some of your instructions and here's the result (I know I'm repeating myself, but here's the link to the post that summarizes the issue and steps taken):
  • Have you tried different HDMI and DisplayPort cables?
I tried different HDMI cables, but the result is the same. Unfortunately, I don't have a display port cable.
  • Physically remove the RX 580
    • Use HDMI to HDMI cable
    • Then test sleep and wake in Windows
I was able to go into hibernation and wake up normally, without any issues. Tried several times.
Unfortunately, I wasn't able to test with two monitors, because there's only one HDMI port in the MB, and and mentioned earlier I don't have a DP cable.

I should mention that after reinstalling RX580 I was able to load Windows once, the second time I got BSOD, after that the original problem returned (after trying to wake, fans and LED turn on, but monitors stay dark), so I could no longer wake the machine without pressing the reset button on the case quite a few times (pausing 5-7 seconds between each press). Does that mean the issue is indeed with the graphics card?
 

CaseySJ

Moderator
Joined
Nov 11, 2018
Messages
17,380
Motherboard
Gigabyte Z490 Vision D
CPU
i5-10400
Graphics
RX 580
Mac
  1. MacBook Air
  2. MacBook Pro
  3. Mac Pro
Classic Mac
  1. Quadra
Mobile Phone
  1. iOS
Hi again, Casey. So I followed some of your instructions and here's the result (I know I'm repeating myself, but here's the link to the post that summarizes the issue and steps taken):

I tried different HDMI cables, but the result is the same. Unfortunately, I don't have a display port cable.

I was able to go into hibernation and wake up normally, without any issues. Tried several times.
Unfortunately, I wasn't able to test with two monitors, because there's only one HDMI port in the MB, and and mentioned earlier I don't have a DP cable.

I should mention that after reinstalling RX580 I was able to load Windows once, the second time I got BSOD, after that the original problem returned (after trying to wake, fans and LED turn on, but monitors stay dark), so I could no longer wake the machine without pressing the reset button on the case quite a few times (pausing 5-7 seconds between each press). Does that mean the issue is indeed with the graphics card?
Yes it is sounding like a problem with the RX 580.
  • Is it inserted properly?
  • Are the PCI power cables (8-pin and/or 6-pin) connected?
  • Are there any other discrete GPUs in the system?
  • Are there any other PCIe cards in the system (other than WiFi/BT)?
 
Joined
Mar 9, 2020
Messages
51
Motherboard
Gigabyte Z390 Designare
CPU
i5-9600K
Graphics
RX 580
Yes it is sounding like a problem with the RX 580.
  • Is it inserted properly?
  • Are the PCI power cables (8-pin and/or 6-pin) connected?
  • Are there any other discrete GPUs in the system?
  • Are there any other PCIe cards in the system (other than WiFi/BT)?

  • I took it out and reinstalled, looked like it was inserted properly.
  • 8-pin cable is connected.
  • No other discrete GPUs.
  • Not other PCIe cards, not even WiFi/BT (I use LAN).
What confuses me is I hadn't disassemble the case up until now, so I don't understand why it just stopped working abruptly after about 6 months of consistent work.
Also the machine/video card work normally once booted, so I don't really see how connection or power could be the cause of the problem.
 
Last edited:

CaseySJ

Moderator
Joined
Nov 11, 2018
Messages
17,380
Motherboard
Gigabyte Z490 Vision D
CPU
i5-10400
Graphics
RX 580
Mac
  1. MacBook Air
  2. MacBook Pro
  3. Mac Pro
Classic Mac
  1. Quadra
Mobile Phone
  1. iOS
  • I took it out and reinstalled, looked like it was inserted properly.
  • 8-pin cable is connected.
  • No other discrete GPUs.
  • Not other PCIe cards, not even WiFi/BT (I use LAN).
What confuses me is I hadn't disassemble the case up until now, so I don't understand why it just stopped working abruptly after about 6 months of consistent work.
Oh that's unfortunate. I use CyberPower and APS uninterruptible power supplies on all of my systems. Simply cannot trust the power grid around here...
 
Joined
May 3, 2018
Messages
4
Motherboard
ASUS Prime Z370-A
CPU
i7-8700K
Graphics
RX 580
Mac
  1. iMac
  2. MacBook Pro
  3. Mac mini
Classic Mac
  1. 512K
  2. Power Mac
Mobile Phone
  1. iOS
Hello @maXterm,

We were indeed able to activate ThunderboltEX 3 on Asus Prime Z370A. It will not be perfect, but the limitations could be worked around. I would encourage you to try the solution presented below, but keep this in mind:
  • First perform a cold boot with no TB devices connected.
  • Check if Thunderbolt Bus is activated (System Information --> Thunderbolt).
  • If so, hot plug a TB device. Does it connect and work?
  • If not, keep the device connected and reboot the system.
  • Does it work now?
  • Try USB-C devices as well. They may or may not need to be connected prior to boot.
  • Also check sleep/wake behavior with TB devices connected.
In other words, the SSDT can enable Thunderbolt Bus, but it's up to you to find the limitations and see if you can work around those limitations.

Thanks very much Casey for pointing me in the right direction. I followed the procedures specified in the links for the ASUS Prime Z370A (my motherboard is the original Prime, not the Prime-II) and now have a working software-only TB bus and local node implementation - fantastic result! To improve things a bit, I tweaked the SSDT file SSDT-TbtOnPch-Asus-Z370-A.aml in the following ways:

1. Under device XHC2, added HS and SS support for the USB-C port on the card (note the default SSDT only enabled the Type A port using USB-C properties - I corrected this). I also added model, device_type, and slot naming so the TB USB Controller shows up in System Information under PCI. The names I used are taken from Hackintool patch info. In addition, I added _PRW and _RMV methods in case these were needed for power management of the USB ports for proper sleep and wake-up. I am not sure if these are necessary - perhaps you can comment.

2. Updated the ThunderboltDROM (using HackinDROM) since the default SSDT seemed to have a mismatch between the DROM length bytes and the overall DROM buffer size (ref your post "Thunderbolt ROM Decoded"). I also wanted to match the DROM 9-byte preamble to my SMBIOS choice of the iMac18,3 model. I am not sure if these changes were completely necessary, but I proceeded anyways for consistency. I also updated the Thunderbolt Controller model, device_type, and slot-name to match Hackintool patch info.

With these changes, I get the following very positive result:

1. TB Bus and Local Node are enabled after boot. I can see this under System Information and in the IO Registry.
2. Hot Plug of another Mac in Target Disk Mode works perfectly. I used the Apple TB3 (USB-C) to TB2 adaptor with a TB2 cable connected to a MacBookPro9,2 booted in Target Disk Mode. The MacBook Pro drives show up immediately on the Hack. I can eject them, remove the cable and reattach at will. The drives are remounted.
3. Thunderbolt Bridge shows up as a connection type under System Prefs->Network. I presume if I had an Apple TB to ethernet adaptor I would be able to establish a network connection (not tested).
4. I don't have any DAW hardware, so unfortunately I cannot test any pro audio solutions with my setup.
5. The USB-C and Type A ports work correctly with both HS and SS usb sticks. Mounted thumb drives survive sleep and wake-up without ejection. USB-C and USB Type A drives are remounted automatically on wake-up.
6. Computer sleep and wake-up are working properly (ie. not prevented by this setup).

However, there are two significant failures/limitations:

7. The TB bus and local node do not appear to survive sleep and wake-up. TB-connected drives (i.e. my test Mac in Target Disk Mode) are force-ejected on sleep. After wake-up, I cannot reconnect the drives even by removing and reinserting the TB adaptor and/or cable. Clearly some of the Thunderbolt power management properties of the setup (hardware?, firmware?, SSDT?) are not working.
8. The TB bus and local node do not appear to come up at all if my test drive (i.e. Mac in Target Disk Mode) is attached to the TB card at boot time.

Note that I am using Clover 5107 with an iMac18,3 SMBIOS (very stable) and am running MacOS Mojave 10.14.6 (also very stable).

Do you have any insight or suggestions regarding the final limitations (TB bus sleep/wake problem, TB failure on boot with drive attached) in an otherwise almost-perfect setup. Are these limitations correctable, or are they limitations of the software-only approach? For instance, would flashing the firmware on the card overcome these, or could it possibly introduce other different problems?

I would like to say how impressed I am regarding the progress you and others have made on making very a complex Thunderbolt scenario a real working possibility on Hacks.

I have attached my updated SSDT-TbtOnPch-Asus-Z370-A-v2.aml file below for your comments or in case others may benefit.
 

Attachments

  • SSDT-TbtOnPch-Asus-Z370-A-v2.aml
    5.2 KB · Views: 29
Joined
Mar 9, 2020
Messages
51
Motherboard
Gigabyte Z390 Designare
CPU
i5-9600K
Graphics
RX 580
Oh that's unfortunate. I use CyberPower and APS uninterruptible power supplies on all of my systems. Simply cannot trust the power grid around here...
Does that mean there's nothing I can do except getting a new video card?
 

CaseySJ

Moderator
Joined
Nov 11, 2018
Messages
17,380
Motherboard
Gigabyte Z490 Vision D
CPU
i5-10400
Graphics
RX 580
Mac
  1. MacBook Air
  2. MacBook Pro
  3. Mac Pro
Classic Mac
  1. Quadra
Mobile Phone
  1. iOS
Does that mean there's nothing I can do except getting a new video card?
You can also try using the on-board HDMI port or the two on-board Thunderbolt ports to connect your monitor. In this case we would need to do the following:
  • Try a different video cable. Always preferable to use a certified HDMI 2.0 or DP 1.2/1.4 cable.
  • If that does not help, then we could do the following:
    • Set Platform ID to 0x3E9B0007 and add HDMI black screen patches. It's much easier to use a USB-C to DisplayPort cable or a USB-C to HDMI cable instead of HDMI-to-HDMI.
      • If you want to try this, I can modify your config.plist (but remove serial number from SMBIOS section before sending).
    • In BIOS, we would set Initial Display Output to IGFX.
    • We would physically remove the AMD GPU.
    • Now we can check if graphics look normal.
    • If so, then AMD GPU is bad.
 
Top