Contribute
Register

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

CaseySJ

Moderator
Joined
Nov 11, 2018
Messages
17,965
Motherboard
Asus Z690 ProArt Creator
CPU
i7-12700K
Graphics
RX 6800 XT
Mac
  1. MacBook Air
  2. MacBook Pro
  3. Mac Pro
Classic Mac
  1. Quadra
Mobile Phone
  1. iOS
Hi @CaseySJ, in post #20,827 there is a small error: my previous motherboard was only "Gigabyte X299 UD4 Pro" not Designate, BIOS tested F7c and F7d Beta.
Unfortunately the method is not stable, because the Alpine Ridge PCIe card is often not detected when using this SSDT. The probable cause is the absence of the GPIO3 Force Power option.

I am now using an X299X Designare 10G with an integrated Titan Ridge controller. Thunderbolt ports already work with hotplug.
I would like to ask you:
1 - I know this method is only for the Alpine Ridge, but is there any possibility of integrating it with the Titan Ridge to get the Thunderbolt BUS?
2 - If I flash the firmware do I get any benefits in terms of link speed and latency with UAD sound cards?
My devices currently connect at 2.5 GT/s.
Hello @LeleTuratti,

Thanks for pointing out the corrections. Changes made.

We spent months trying to activate Thunderbolt Bus on Titan Ridge with SSDT, but the effort failed. The Titan Ridge controller resets to Internal Connection Manager (ICM) mode after 20-30 seconds. Flashing the controller is the solution we're aware of.
 

CaseySJ

Moderator
Joined
Nov 11, 2018
Messages
17,965
Motherboard
Asus Z690 ProArt Creator
CPU
i7-12700K
Graphics
RX 6800 XT
Mac
  1. MacBook Air
  2. MacBook Pro
  3. Mac Pro
Classic Mac
  1. Quadra
Mobile Phone
  1. iOS
I booted with the HackinDrom SSDT and SSDT-DTPG. I didn't find those objects in IORegistryExplorer after I switched on my Thunderbolt device. I attached both IORegistry files. You'll see in z170-Deluxe_Thunderbolt, if you search for RP17 where Universal Audio Apollo Twin - DUO is connected.
Are both IOReg files based on HackinDROM SSDT?
  • z170-Deluxe.ioreg --> booted with HackinDROM SSDT?
  • z170-Deluxe_Thunderbolt.ioreg --> also booted with HackinDROM SSDT?
There are notable differences between the two:

z170-Deluxe.ioreg:
Screen Shot 2021-04-02 at 10.38.06 AM.png

z170-Deluxe_Thunderbolt.ioreg:
Screen Shot 2021-04-02 at 10.36.59 AM.png
Screen Shot 2021-04-02 at 10.36.52 AM.png
 

beelzebozo

Super Moderator
Joined
Mar 31, 2010
Messages
3,805
Motherboard
ASUS z170-Deluxe
CPU
i7 - 6700K
Graphics
RX 5700 XT
Mac
  1. iMac
Classic Mac
  1. Power Mac
Mobile Phone
  1. iOS
Are both IOReg files based on HackinDROM SSDT?
  • z170-Deluxe.ioreg --> booted with HackinDROM SSDT?
  • z170-Deluxe_Thunderbolt.ioreg --> also booted with HackinDROM SSDT?
There are notable differences between the two:

z170-Deluxe.ioreg:
View attachment 514018
z170-Deluxe_Thunderbolt.ioreg:
View attachment 514017View attachment 514016
z170-Deluxe.ioreg is after HackinDROM and DTGP SSDTs were booted with. z170-Deluxe_Thunderboltz.ioreg is with the SSDT that I use which works.
 

CaseySJ

Moderator
Joined
Nov 11, 2018
Messages
17,965
Motherboard
Asus Z690 ProArt Creator
CPU
i7-12700K
Graphics
RX 6800 XT
Mac
  1. MacBook Air
  2. MacBook Pro
  3. Mac Pro
Classic Mac
  1. Quadra
Mobile Phone
  1. iOS
z170-Deluxe.ioreg is after HackinDROM and DTGP SSDTs were booted with. z170-Deluxe_Thunderboltz.ioreg is with the SSDT that I use which works.
This means SSDT-HackinDROM.aml was either (a) not processed or (b) rejected by macOS. We can find out what happened by booting with that SSDT and then grabbing the first few lines of the boot log as follows:
Bash:
log show --last boot | tail -1000 > ~/Documents/bootlog.txt
This will create a file in Documents folder called bootlog.txt. I can then take a closer look.
 
Last edited:

CaseySJ

Moderator
Joined
Nov 11, 2018
Messages
17,965
Motherboard
Asus Z690 ProArt Creator
CPU
i7-12700K
Graphics
RX 6800 XT
Mac
  1. MacBook Air
  2. MacBook Pro
  3. Mac Pro
Classic Mac
  1. Quadra
Mobile Phone
  1. iOS
Hello, Bonjour @CaseySJ,

if someone is interested on a modified BIOS firmware based on F9i version by including new F9j CPU microcodes (05/2020 and 06/2020 instead of 04/2020) [cut]

I just try it by flashing with Q-Flash BIOS feature without issue.
Hello @Elias64Fr,

Bonjour! I would be glad to test the modded F9i firmware if you can post it here publicly.

If you want more details on what I have done, I can explain :).
Yes please!

Otherwise, I have including on another customised BIOS firmware (not on previous one), some DSDT and SSDT modifications previously done on Opencore patching. Result is really nice !
Sounds interesting. What are some of the changes/benefits?
 

beelzebozo

Super Moderator
Joined
Mar 31, 2010
Messages
3,805
Motherboard
ASUS z170-Deluxe
CPU
i7 - 6700K
Graphics
RX 5700 XT
Mac
  1. iMac
Classic Mac
  1. Power Mac
Mobile Phone
  1. iOS
This means SSDT-HackinDROM.aml was either (a) not processed or (b) rejected by macOS. We can find out what happened by booting with that SSDT and then grabbing the first few lines of the boot log as follows:
Bash:
log show --last boot | tail -1000 > ~/Documents/bootlog.txt
This will create a file in Documents folder called bootlog.txt. I can then take a closer look.
I attached two versions. :thumbup:
 

Attachments

  • bootlog_HackinDROM.txt
    208.9 KB · Views: 37
  • bootlog_Thunderbolt_Working.txt
    206.8 KB · Views: 107
Joined
Aug 17, 2017
Messages
294
Motherboard
Gigabyte X299X Designare 10G
CPU
i9-10980XE
Graphics
RX 5700 XT
Mac
  1. MacBook Pro
Mobile Phone
  1. iOS
Hello @LeleTuratti,

Thanks for pointing out the corrections. Changes made.

We spent months trying to activate Thunderbolt Bus on Titan Ridge with SSDT, but the effort failed. The Titan Ridge controller resets to Internal Connection Manager (ICM) mode after 20-30 seconds. Flashing the controller is the solution we're aware of.
So as I understand it, firmware flash does not lead to link speed improvements.
Currently the hotplug in my system works, the only difference is that to connect a device at boot (a Dock TB for example) I have to have the option "Thunderbolt boot support" enabled in the BIOS.
Unfortunately, with this option enabled, if no TB device is connected and powered on at boot, both TB ports will not work.
With "Thunderbolt boot support" disabled, however, to make a device work I have to disconnect and reconnect it.

I took a look at the SSDT for my motherboard on HackinDROM and it appears to contain errors. When I tried it, my system's USB 3 ports stopped working.
In fact in the part of the XHC1 controller (which I have renamed XHC3 to avoid conflicts) some parts were missing.
The "PCIHotplugCapable" methods are also set to "One", from what I know they should be "Zero", right?

But you can make daisy chaining if you flash it
Daisy chaining already work on my system.
 

CaseySJ

Moderator
Joined
Nov 11, 2018
Messages
17,965
Motherboard
Asus Z690 ProArt Creator
CPU
i7-12700K
Graphics
RX 6800 XT
Mac
  1. MacBook Air
  2. MacBook Pro
  3. Mac Pro
Classic Mac
  1. Quadra
Mobile Phone
  1. iOS
I attached two versions. :thumbup:
Arg, I made a careless mistake. The boot log should be generated like this (head, not tail):
Bash:
log show --last boot | head -1000 > ~/Documents/bootlog.txt
 
Joined
Jan 1, 2020
Messages
516
Motherboard
Gigabyte Z390 Designare
CPU
i5-9600K
Graphics
RX 5700 XT
Mac
  1. iMac
  2. MacBook Pro
  3. Mac mini
Hello @Elias64Fr,

Bonjour! I would be glad to test the modded F9i firmware if you can post it here publicly.


Yes please!


Sounds interesting. What are some of the changes/benefits?
You can find attached ZIP file with this firmware.
shasum= b302e2ab90ebfa64a04600276705675f0df57783

Methodology:
1. I only use Hex Fiend tool with UEFITool to result check

2. Replace all volume with GUID : AFDD39F1-19D7-4501-A730-CE5A27E1154B from F9i by F9j one (from 0xA70000 0xD70000 to 0xE3FFFF). This volume include new Microcodes.

3. At the end of volume 61C0F511-A691-4F54-974F-B9A42172CE53 and also the end of file, I change 32bits data from F9i by F9j one at 0xFFFFC0 address. This data is the Fixed Data address of raw file B52282EE-9B66-44B9-B1CF-7E5040F787C1 (moved because of micro codes size is bigger than previous one)

4. Now, to be flashable with Q-Flash, I have done following modifications on freeform with GUID 56E14F88-234B-4C34-B204-299670447247 (found on Win-Raid website forum):
  • at address 0xFCDCEF, one byte replaced from 0x01 to 0x02 (0x63 offset address on freeform body)
  • 32 bits word replaced by 0x00000000
    • address 0xFCDDE8 (0x15C offset address)
    • address 0xFCDDF8 (0x16C offset address)
    • address 0xFCDE08 (0x17C offset address)
    • address 0xFCDE18 (0x18C offset address)
    • address 0xFCDE28 (0x19C offset address)
    • address 0xFCDE38 (0x1AC offset address)
    • address 0xFCDE48 (0x1BC offset address)
All previous 32bits addresses are Firmware file adresses. Green offset address are related address if you want to check with UEFItool or to make modification on another Gigabyte firmware.

About my other customised firmware with included DSDT and SSDT, there are no benefits :lol: except to be independant on Boot loader patching with Clover or Opencore (all Mac devices and methods like MCHC and DTGP are correctly configured :|) ... In fact, this a part of testing... Previously tried including many Mac DXE driver to have macOS Bootpicker (Real Macs Bootpicker) without success .. all of them a correctly loaded but no bootpicker graphically displayed.

Capture d’écran 2021-04-03 à 15.22.34.png
Capture d’écran 2021-04-03 à 15.54.56.png
Capture d’écran 2021-04-03 à 16.11.11.png
 

Attachments

  • Z390DESI_NewMicroCode(byElias64Fr).F9i.zip
    6.8 MB · Views: 260
Last edited:
Top