Contribute
Register

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

Thunderbolt controllers can be operated in two ways:
  • With ICM (Intel Connection Manager) doing all the work of hot-plug, link training, device I/O.
  • Without ICM -- with the operating system drivers doing most of the work.
Windows operates in ICM mode and the firmware (BIOS) contains a simple method called WMI (Windows Management Interface) that allows Windows to handle some basic functions.

MacOS can operate in both modes. The reason Thunderbolt with hot-plug is already working on the Designare Z390 is because it's operating in ICM mode. But this mode cannot be used to enable the more advanced Thunderbolt functionality built into macOS, namely Thunderbolt Bus and Local Node.

To enable the full potential of Thunderbolt on a macOS system, we need to activate Thunderbolt Bus and Local Node, which then puts Apple's Thunderbolt drivers in complete control. Doing this is tricky because it requires us to disable ICM mode ourselves (via SSDT), configure Thunderbolt registers/devices (UPSB, DSB0, NHI0, DSB1, DSB2, DSB4, XHC2), and provide _PS0 (power-on) and _PS3 (power-off) functions for each of the above registers/devices. This also means responding to hot-plug events and handling link training functions via SSDT.

On Alpine Ridge systems it seems that creating the necessary SSDT functions is relatively straightforward. But on Titan Ridge systems the task is much harder. Maybe we haven't yet figured out how to configure all the relevant registers. Maybe there's some hidden interaction with the controller's firmware. It's a good mystery!

Will the benefits outweigh the effort? It all seems like a lot or work, I'm unsure if there is something I am missing?
 
Will the benefits outweigh the effort? It all seems like a lot or work, I'm unsure if there is something I am missing?
Today, with ICM in charge of Thunderbolt on MacOS...
  • We cannot connect an eGPU unless we enable CSM Support and disable the PCI-Thunderbolt property (i.e. we kill hot-plug).
    • And the eGPU safe-disconnect icon will still not appear.
  • Some Thunderbolt devices and/or drivers do not work because they expect the Thunderbolt Bus.
    • My OWC 14-Port dock, for example, comes with an "OWC Ejector" utility. While the dock itself works, the Ejector app does not, because it's looking for that bus.
  • Functions such as Target Disk Mode require Thunderbolt Local Node.
Many users do not need these functions and that's why the Thunderbolt functionality we already have on the Designare Z390 has been sufficient. But every so often we run into a device or a driver that fails.
 
This has literally made my day. I knew there had to be a way to do it!

I'm still having issues with the UHD 630 HDMI after updating my system to 10.15.3. It won't work at all - just a black screen after some jazzy looking horizontal black lines. My USB-C - DP monitor works fine when plugged in on it's own, however, if I pug in the HDMI neither monitor will function....

Dual monitors were working great on Mojave, even audio through HDMI. If I go back to faking the IntelGFX ID and inject intel as per the initial install before "going the extra mile", I can get it to mirror the USBC-DP Monitor but thats the best I can do.

I've tried both framebuffer patches included in the General Framebuffer Patching Guide as well as trying Hackintool which just generates a patch with nothing in it at all (Hackintool version + 3.2.2 CFLv2 patch -> Generate patch produces empty XML <dict/>).

If anyone knows what else to try or can post a working config for OS X 10.15.3/iGPU HDMI I'd be very grateful.
You may post your config.plist with serial numbers removed from SMBIOS and I'll see what might be wrong with the frame buffer patch.
 
Will the benefits outweigh the effort? It all seems like a lot or work, I'm unsure if there is something I am missing?

If you are not a Thunderbolt user then you aren't missing anything. However, if you are then you are missing quite a bit.
 
You may post your config.plist with serial numbers removed from SMBIOS and I'll see what might be wrong with the frame buffer patch.

Thanks Casey. Attached is my config.plist

I've attached the one using the framebuffer patch from this guide as that was my last working config before updating to Catalina.

Further to my testing: if I remove device properties (i.e. framebuffer patch), enable Graphics->Inject Intel, and (as iGPU is fully supported) leave Fake ID IntelGFX blank - then the system works fine with TB-DP monitor, however if I hot plug the HDMI cable the whole system crashes and reboots instantly. With this config the system won't boot at all either. At least if I used the framebuffer hotpluging the HDMI didn't cause a reboot!

In case it matters I'm using WEG 1.3.6 + Lilu 1.4.1
 

Attachments

  • config.plist
    8.9 KB · Views: 86
WOW! I've found the solution!
Just change the shikigva=32 to shikivga=80.
and done!

P E R F E C T!

now everything works like a charm.
Thanks guys, im very happy!
Thanks, my airplay and sidecar never worked. Changing to that value worked!!
 
@CaseySJ, I’m thinking on implementing a way to remote start and login to my hackintosh (used this build guide with same mobo) and I saw you mentioned IPMI somewhere. Is this a possibility? The problem is I usually turn off the computer when I go to class but when I need to access it, it’s always off. I switched to Ethernet recently instead of my spotty WiFi card. I know I can’t use wake for network access too. Not sure a way to get around that besides Raspberry Pi to send keystrokes to wake it up... thoughts?
 
If you are not a Thunderbolt user then you aren't missing anything. However, if you are then you are missing quite a bit.

I've completed my first ever PC build - a Hackintosh! Many thanks to everyone who's contributed to this extensive build guide. My build seems to work perfectly except I'm not sure the Thunderbolt is working. I purchased a USB-C to Lightning cable to connect my iPad/iPhones, but none of those devices show up using the cable in any of the three available USB-C ports. I read through a lot of threads re: Thunderbolt problems, but most were unrelated to my issue, many not even using the Designare board like I'm using. It sounds like it should be working natively according to everyone here. I am getting power through them, but no data. I may be missing something simple perhaps? Any help is appreciated. I was really looking forward to the Thunderbolt/USB-C feature. Thanks in advance.

Specs:

i9 9900K CPU
Radeon RX 580 GPU
64GB 3600Mhz RAM
Zalman CPU Liquid Cooler
Gigabyte Designare Z390 MB
850w EVGA Power Supply
Corsair Carbide Case
Fenvi Wifi/Bluetooth
3 Case Fans/Cables
2TB Pioneer NVMe M.2
4TB HDD
 

Attachments

  • Archive.zip
    521.4 KB · Views: 94
Hello,

I have followed the site for years but just never the right time. I saw this post and success with a focusrite Thunderbolt 2pre. I have the Focusrite 8pre
TB1. Killer latency on my old ass Mb pro but I’ve just about had it w Apple locking us in a cage with limited choices and the gaping void between prosumer and pro in price. My goals are to run Logic X and have a decent 4K editing system for video. Sorry for the blind post CaseyJ can you direct me to your build instructions I’m grabbing up the parts for this build over the weekend. Not concerned about WiFi or anything other than Logic and the 8-pre focusrite at first. I’ll try to work out the 4K edit side on the PC w premier. Anyways sorry for the rambling I just blew 4 hours getting OBS working on a Dell G7 with a horrible conflicts between 630 intel and the GTX. This throttling issue makes this laptop unreliable and frankly a POS joke. Disabled one GPU in the DM and presto. I was like ahh my old girlfriend the PC I had literally left it behind running XP, pro fools and an AMD yes that long ago. Ancient stuff but believe it my old rack DAW still boots and runs 32 tracks of pro tools and waves stuff easy. The kicker though is all AAX 32 bit stuff I paid for light years ago. Can’t justify a MacBook Pro, or an Icrap and frankly the stock logic plug ins and the workflow of Logic tickles my fancy over the clunky pro tools 12 and all of the nightmares that go along with it. So here I go guys I’m back on the wagon after 10 years of no PC but before that I built my first daw in 1998 and literally hundreds after that so my old hands are scared from cheap new egg Lian Li edges and old Intel 865 chipsets with Zalmans. Lol My how time fly’s and we are still needing to do this ultra tweak stuff just to get what we want? Anyways I appreciate all the hard work and effort that goes into a site like this. I’m looking forward to this challenge. 8-Cores w 32g of ram hoping more than enough juice. I can still do 32 tracks full plug ins on the MacBook with 16x inputs low latency but it stalls on the heavier instruments with high sample polyphony.
 
I was reading other pc motherboard users having a bios revision issue. Also deleting the drivers in the device manager booted into windows 10. Reboot it reinstalls the drivers then soft boot into Mac OS. Maybe search the bios updates related to yours. Power w no data can be firmware controller chip. Correct bios and drivers on the Win 10 side. Worth a try to get that stuff tested and working fully as a PC...???
 
Back
Top