Contribute
Register

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

I've been carrying on tinkering with the SSDT-only approach to getting a full thunderbolt tree and have got as far as the very simple attached version which works great on built-in Alpine Ridge. It's based on the great work originally done by @Elias64Fr and @CaseySJ (all credit to them) and provides a full tree with working TBT and USB-C hot plug on cold and warm boot, TBT networking and target disk mode in the client computer. I was wondering if maybe we've been over-complicating things, might this work with built-in Titan Ridge as well? If you want to test it then you'll need to do a few things:
  • Adjust the Root Port number and change the GPCB method changed using the (PCI address * 8)+x formula. My thunderbolt RP05 is at 1C,4 so its (1C * 8)+4 = E4. There are no power methods as hot plug seems to be 100% consistent without them.
  • In the bios I have Force Power and ACPI RMV method enabled in the thunderbolt section. These might be hidden and so will need to be enabled using the grub approach. Note that I've removed DSB4 and only have one XHC2 SSP port as the AsRock Z370 itx/ac motherboard only has one thunderbolt port.
  • The GPE._E2C method will also need to be renamed according to the value in your system. Just dump your system DSDT using MacIASL and search for "Method (TINI, 2, Serialized)". Immediately above it you'll find the hot plug event method which will be named "_Exx".
  • The RP05._INI method in your DSDT will need to be renamed RP05.XINI using your OpenCore config.plist
  • The _GPE._Exx method in your DSDT will need to be renamed _GPE.XExx using your config.plist
As far as I can tell functionality is just the same as when I tried patched firmware but with the added bonus of TBT working normally with other operating systems.
I'm excited to try this.

I have an AR AIC in my Aorus Pro. It is flashed and my Apple TB display works properly after booting. But wake doesn't work. (Sometimes the machine freezes about 1 minute after wake, other times it wakes but the display doesn't light up.) I was just about ready to order a Designare but I may not have to!

I assume I will need to restore the original firmware to the AR card.

I use Clover so I will have to make the ._INI change and the _GPE._Exx change by editing my DSDT.

The AR shows up on RP21. So I assume I'll just do a search and replace RP05-->RP21 in your SSDT.

In my BIOS I can access Force Power but not ACPI RMV method. I'm not sure how to select that using grub.

The AR has 2 TB ports. So I will look at the original SSDT (I'll have to find it here on the thread somewhere) and restore DSB4.

Thanks!
 
Last edited:
I'm excited to try this.

I have an AR AIC in my Aorus Pro. it is flashed and my Apple TB display works properly after booting, but wake doesn't work. (Sometimes the machine freezes about 1 minute after wake. Other times it wakes but the display doesn't light up.) I was just about ready to order a Designare but I may not have to!

I assume I will need to restore the original firmware to the AR card.

I use Clover so I will have to make the ._INI change and the _GPE._Exx change by editing my DSDT.

The AR shows up on RP21 so I assume I'll just do a search and replace RP05-->RP21 in your SSDT.

In my BIOS I can access Force Power but not ACPI RMV method. I'm not sure how to select that using grub.

The AR has 2 TB ports so I will look at the original SSDT (I'll have to find it here on the thread somewhere) and restore DSB4.

thanks!
Yes, you will have to restore the original firmware. Unfortunately you don't have the RMV method option hidden in your BIOS (I've checked) but it's still worth trying without. For DSB4 just duplicate the DSB1 device and rename it DSB4 with an _ADR of 0x00040000. You're right as well about the RP05 to RP21 rename. I'm not sure if this approach will work with an AIC but it's worth giving it a go. Good luck and let us know how you get on...
 
I'm excited to try this.

I have an AR AIC in my Aorus Pro. It is flashed and my Apple TB display works properly after booting. But wake doesn't work. (Sometimes the machine freezes about 1 minute after wake, other times it wakes but the display doesn't light up.) I was just about ready to order a Designare but I may not have to!

I assume I will need to restore the original firmware to the AR card.

I use Clover so I will have to make the ._INI change and the _GPE._Exx change by editing my DSDT.

The AR shows up on RP21. So I assume I'll just do a search and replace RP05-->RP21 in your SSDT.

In my BIOS I can access Force Power but not ACPI RMV method. I'm not sure how to select that using grub.

The AR has 2 TB ports. So I will look at the original SSDT (I'll have to find it here on the thread somewhere) and restore DSB4.

Thanks!
Will follow along to learn and hopefully pull enough together to try on the Designare.
 
@CaseySJ ("Lord Designare") :)
Maybe you haven't recognized but your posting was # 20.000 in this awesome thread!
I hadn't noticed that! :)
As a very early adopter of your build I would like to thank you very much for all the passion you've put into this thread and all your patience by answering thousands of questions. Chapeau!
As I recall @NoiseCoalition was #1 to follow the pre-production build guide and you were right there at #2. It was an untested adventure, but the build has come a long way since then due in large part to the contributions of so many.
 
Tried this today on a Dell laptop running Windows 10, and experienced the same behavior. Even selecting the "Detect" button in Windows --> Settings --> Displays does not disconnect the second monitor when it's powered off. Only unplugging the cable achieves an auto-disconnect. Quite a few people prefer this behavior and there are threads in which people were purchasing HDMI EDID plugs to trick the system into maintaining a connection.

Yeah, in Windows 10, you can disable the display from the Display settings without having to unplug it, whereas macOS doesn't have that feature so it auto-disconnects when a monitor is turned off.

I saw quite a bit of people were asking the same question elsewhere. It's something I'd like to possible fix. Could you guide me on what I'd need to understand to solve it? Or do you think it's a more complex issue?
 

Attachments

  • Windows 10.jpg
    Windows 10.jpg
    69 KB · Views: 73
I'm excited to try this.

I have an AR AIC in my Aorus Pro. It is flashed and my Apple TB display works properly after booting. But wake doesn't work. (Sometimes the machine freezes about 1 minute after wake, other times it wakes but the display doesn't light up.) I was just about ready to order a Designare but I may not have to!

I assume I will need to restore the original firmware to the AR card.

I use Clover so I will have to make the ._INI change and the _GPE._Exx change by editing my DSDT.

The AR shows up on RP21. So I assume I'll just do a search and replace RP05-->RP21 in your SSDT.

In my BIOS I can access Force Power but not ACPI RMV method. I'm not sure how to select that using grub.

The AR has 2 TB ports. So I will look at the original SSDT (I'll have to find it here on the thread somewhere) and restore DSB4.

Thanks!
Hello @faithie999
before restoring original firmware, as you have a custom DSDT, you can try removing on RWAK method lines like as the following sample from my laptop :
Code:
            If ((TBTS == One))
            {
                If ((RPN0 == One))
                {
                    Acquire (OSUM, 0xFFFF)
                    \_GPE.TINI (Zero, RPS0, RPT0, Arg0)
                    Release (OSUM)
                }

                If ((RPN1 == One))
                {
                    Acquire (OSUM, 0xFFFF)
                    \_GPE.TINI (Zero, RPS1, RPT1, Arg0)
                    Release (OSUM)
                }
            }
 
Yes, you will have to restore the original firmware. Unfortunately you don't have the RMV method option hidden in your BIOS (I've checked) but it's still worth trying without. For DSB4 just duplicate the DSB1 device and rename it DSB4 with an _ADR of 0x00040000. You're right as well about the RP05 to RP21 rename. I'm not sure if this approach will work with an AIC but it's worth giving it a go. Good luck and let us know how you get on...
more questions.
my DSDT's TINI is "Method (TINI, 4, Serialized)". is the 4 vs 2 of any consequence?

also the _Exx is a couple of items above the Method (TINI. I assume that is of no consequence, either. screen shot of that portion of dsdt is attached.

however, I don't have a GPE.E2c, nor a _GPE.Exx method. I also don't have an RP05._INI (nor an RP21_.INI).

my dsdt extracted (F4 at clover screen) is also attached.

thanks
 

Attachments

  • Screen Shot 2020-05-02 at 11.53.24 AM.png
    Screen Shot 2020-05-02 at 11.53.24 AM.png
    74.1 KB · Views: 74
  • DSDT.aml
    259 KB · Views: 69
Hello @faithie999
before restoring original firmware, as you have a custom DSDT, you can try removing on RWAK method lines like as the following sample from my laptop :
Code:
            If ((TBTS == One))
            {
                If ((RPN0 == One))
                {
                    Acquire (OSUM, 0xFFFF)
                    \_GPE.TINI (Zero, RPS0, RPT0, Arg0)
                    Release (OSUM)
                }

                If ((RPN1 == One))
                {
                    Acquire (OSUM, 0xFFFF)
                    \_GPE.TINI (Zero, RPS1, RPT1, Arg0)
                    Release (OSUM)
                }
            }
ok. I removed those lines.

there is one other If ((tbts right at the end of the RWAK method.

does it stay or should I delete that as well?

thanks

Screen Shot 2020-05-02 at 12.11.23 PM.png
 
Thank you so much for all your help in the process @CaseySJ!

Looking backwards, it makes sense that flashing a naked motherboard is easier, as no current from the programmer is leaked to other components installed in the board.

I've added photos showing LEDs color and brightness on the Designare with the clip attached to my post, hoping this will help others visualize how the LEDs will appear. Feel free to add them to your guides as well.

View attachment 466529
Those photos are very helpful -- will add them to the flashing/attaching guide.
And congratulations on passing both 2000 pages and 20.000 posts in your incredibly successfull build and thread!!! :clap:
mange tak :)
 
ok. I removed those lines.

there is one other If ((tbts right at the end of the RWAK method.

does it stay or should I delete that as well?

thanks

View attachment 466561
You can try not removing this 3 lines, then if you still have some issue after wake from sleep, you should try removing it ! :)
 
Back
Top