Contribute
Register

iMac Pro X299 - Live the Future now with macOS 10.14 Mojave [Successful Build/Extended Guide]

Status
Not open for further replies.
Thanks KGP
This is my graphics card

Please ensure, that for the upcoming tests you are using the original EFI-Folder in post #1,864 but AirportBrcmFixup.kext and modified KGP-iMacPro-GA-X299-WU8-XHCI.kext from post #1,950 added and firewire adapter, additional USB adapter as well as SSDT-X299-SL01-FRWR-XHC2.aml removed for testing purposes.

Can you confirm that with such configuration and the current SSDT-X299-SL05-GFX0-HDAU-ARPT.aml implementation, not all ports of your Vega are properly working, display Hotplug and multi-monitor support do not properly work and also system sleep/wake fails to work? If so, we need to change now the GFX0 implementation in SSDT-X299-SL05-GFX0-HDAU-ARPT.aml.

Once we achieve full system functionality within a new GFX0 SSDT implementation, we can start stepwise adding your additional firewire and USB adapters.

I will upload a new SSDT-X299-SL05-GFX0-HDAU-ARPT.aml, once you confirmed all supposed Vega issues with the current system configuration outlined above and you came up with a corresponding IOREG.save and PCI snapshot.
 
Last edited:
Not yet
Can you confirm If any one sleep and wake worked with i9 9980XE?
Thank you.
Sleep works with 7800x -7980xe / X299 Gigabyte Mobo / Mojave 10.14.3 & 10.14.4 beta / RX 580 & VEGA 64. It should work with yours. :)
 
Last edited:
Sleep works with 7980xe / X299 Gigabyte Mobo & Mojave 10.14.4 /RX 580 & VEGA 64. It should work with yours. :)

We are on the way to properly configure his system. Step by step.
 
Please ensure, that for the upcoming tests you are using the original EFI-Folder in post #1,864 but AirportBrcmFixup.kext and modified KGP-iMacPro-GA-X299-WU8-XHCI.kext from post #1,950 added and firewire adapter, additional USB adapter as well as SSDT-X299-SL01-FRWR-XHC2.aml removed for testing purposes.

Can you confirm that with such configuration and the current SSDT-X299-SL05-GFX0-HDAU-ARPT.aml implementation, not all ports of your Vega are properly working, display Hotplug and multi-monitor support do not properly work and also system sleep/wake fails to work? If so, we need to change now the GFX0 implementation in SSDT-X299-SL05-GFX0-HDAU-ARPT.aml.

Once we achieve full system functionality within a new GFX0 SSDT implementation, we can start stepwise adding your additional firewire and USB adapters.

I will upload a new SSDT-X299-SL05-GFX0-HDAU-ARPT.aml, once you confirmed all supposed Vega issues with the current system configuration outlined above.
Hi Kgp
Give me 2 or 3 hours I back to home.I will test All ports are work or not.
 
  • Like
Reactions: kgp
Hi all,

does anybody has a well working SSDT implementation for the Radeon Pro WX 9100?

This is mine at the moment, but I need Whatevergreen to make all 6 MiniDP outputs work.

Code:
Scope (PEGP)
        {
            Device (EGP0)
            {
                Name (_ADR, Zero)  // _ADR: Address
                Device (GFX0)
                {
                    Name (_ADR, Zero)  // _ADR: Address
                    Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
                    {
                        Return (Package (0x02)
                        {
                            0x69,
                            0x03
                        })
                    }

                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                    {
                        Store (Package (0x14)
                            {
                                "built-in",
                                Buffer (One)
                                {
                                     0x00                                         
                                },

                                "AAPL,slot-name",
                                Buffer (0x07)
                                {
                                    "Slot-6"
                                },

                                "model",
                                Buffer (0x14)
                                {
                                    "Radeon Pro WX 9100"
                                },

                                "name",
                                Buffer (0x08)
                                {
                                    "ATY_GPU"
                                },

                                "@0,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00                       
                                },

                                "@1,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00                       
                                },

                                "@2,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00                       
                                },

                                "@3,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00                       
                                },

                                "@4,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00                       
                                },

                                "@5,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00                       
                                }
                            }, Local0)
                        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }
                }

                Device (HDAU)
                {
                    Name (_ADR, One)  // _ADR: Address
                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                    {
                        Store (Package (0x0A)
                            {
                                "built-in",
                                Buffer (One)
                                {
                                     0x00                                         
                                },

                                "AAPL,slot-name",
                                Buffer (0x07)
                                {
                                    "Slot-6"
                                },

                                "name",
                                Buffer (0x15)
                                {
                                    "Radeon Pro HD-Audio"
                                },

                                "model",
                                Buffer (0x15)
                                {
                                    "Radeon Pro HD-Audio"
                                },

                                "hda-gfx",
                                Buffer (0x0A)
                                {
                                    "onboard-2"
                                }
                            }, Local0)
                        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }
                }
            }
        }
    }
 
Last edited:
Hi all,

does anybody has a well working SSDT implementation for the Radeon Pro WX 9100?

This is mine at the moment, but I need Whatevergreen to make all 6 MiniDP outputs work.

Code:
Scope (PEGP)
        {
            Device (EGP0)
            {
                Name (_ADR, Zero)  // _ADR: Address
                Device (GFX0)
                {
                    Name (_ADR, Zero)  // _ADR: Address
                    Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
                    {
                        Return (Package (0x02)
                        {
                            0x69,
                            0x03
                        })
                    }

                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                    {
                        Store (Package (0x14)
                            {
                                "built-in",
                                Buffer (One)
                                {
                                     0x00                               
                                },

                                "AAPL,slot-name",
                                Buffer (0x07)
                                {
                                    "Slot-6"
                                },

                                "model",
                                Buffer (0x14)
                                {
                                    "Radeon Pro WX 9100"
                                },

                                "name",
                                Buffer (0x08)
                                {
                                    "ATY_GPU"
                                },

                                "@0,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00             
                                },

                                "@1,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00             
                                },

                                "@2,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00             
                                },

                                "@3,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00             
                                },

                                "@4,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00             
                                },

                                "@5,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00             
                                }
                            }, Local0)
                        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }
                }

                Device (HDAU)
                {
                    Name (_ADR, One)  // _ADR: Address
                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                    {
                        Store (Package (0x0A)
                            {
                                "built-in",
                                Buffer (One)
                                {
                                     0x00                               
                                },

                                "AAPL,slot-name",
                                Buffer (0x07)
                                {
                                    "Slot-6"
                                },

                                "name",
                                Buffer (0x15)
                                {
                                    "Radeon Pro HD-Audio"
                                },

                                "model",
                                Buffer (0x15)
                                {
                                    "Radeon Pro HD-Audio"
                                },

                                "hda-gfx",
                                Buffer (0x0A)
                                {
                                    "onboard-2"
                                }
                            }, Local0)
                        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }
                }
            }
        }
    }

All 6 ports of your Radeon Pro WX 9100 are DP ports, as currently implemented by yourself in the Frontier-SSDT from the Github repository?

Code:
Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00            
                                }

Whereas HDMI ports need to be configured such:

Code:
Buffer (0x04)
                                {
                                     0x00, 0x08, 0x00, 0x00            
                                }


And what is the problem if using WEG and the SSDT, everything else works as expected?

Anyway you need to find the correct SSDT implementation that enables in line with WEG the proper function of all 6 ports, including Display HotPlug, multi-monitor support and system sleep/wake. You might want to check, in order to achieve the latter, if SSDT-Vega64 might be better suited than SSDT-Frontier, which in particular uses predefined Kamerang frame buffers. The Kamerang frame buffer implementation of SSDT-Frontier e.g. does not work with the new custom Vegas, where I successfully use SSDT-Vega64 + WEG instead.
 
Last edited:
Hi, rolandino

For my FirePro W7100 i just disable AppleGraphicsDeviceControl in AMD9000blabla.kext. I dont use SSDT and Lilu+WEG after that but i dont use sleep and only dual monitors(all DP and hotplug works ok, not tested four display at the same time).

And please share you EFI folder, if posible

Thank You
 
Last edited:
Hi all,

does anybody has a well working SSDT implementation for the Radeon Pro WX 9100?

This is mine at the moment, but I need Whatevergreen to make all 6 MiniDP outputs work.

Code:
Scope (PEGP)
        {
            Device (EGP0)
            {
                Name (_ADR, Zero)  // _ADR: Address
                Device (GFX0)
                {
                    Name (_ADR, Zero)  // _ADR: Address
                    Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
                    {
                        Return (Package (0x02)
                        {
                            0x69,
                            0x03
                        })
                    }

                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                    {
                        Store (Package (0x14)
                            {
                                "built-in",
                                Buffer (One)
                                {
                                     0x00                                        
                                },

                                "AAPL,slot-name",
                                Buffer (0x07)
                                {
                                    "Slot-6"
                                },

                                "model",
                                Buffer (0x14)
                                {
                                    "Radeon Pro WX 9100"
                                },

                                "name",
                                Buffer (0x08)
                                {
                                    "ATY_GPU"
                                },

                                "@0,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00                      
                                },

                                "@1,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00                      
                                },

                                "@2,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00                      
                                },

                                "@3,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00                      
                                },

                                "@4,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00                      
                                },

                                "@5,connector-type",
                                Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00                      
                                }
                            }, Local0)
                        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }
                }

                Device (HDAU)
                {
                    Name (_ADR, One)  // _ADR: Address
                    Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                    {
                        Store (Package (0x0A)
                            {
                                "built-in",
                                Buffer (One)
                                {
                                     0x00                                        
                                },

                                "AAPL,slot-name",
                                Buffer (0x07)
                                {
                                    "Slot-6"
                                },

                                "name",
                                Buffer (0x15)
                                {
                                    "Radeon Pro HD-Audio"
                                },

                                "model",
                                Buffer (0x15)
                                {
                                    "Radeon Pro HD-Audio"
                                },

                                "hda-gfx",
                                Buffer (0x0A)
                                {
                                    "onboard-2"
                                }
                            }, Local0)
                        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }
                }
            }
        }
    }

Jesus... that's such an expensive card!!! Not worth it in macOS anyway (no AMD pro drivers support). just a cherry picked GPU (same as Vega Frontier). Am I missing something a part from 6 mDP ports?
 
All 6 ports of your Radeon Pro WX 9100 are DP ports, as currently implemented by yourself in the Frontier-SSDT from the Github repository?

Code:
Buffer (0x04)
                                {
                                     0x00, 0x04, 0x00, 0x00             
                                }

Whereas HDMI ports need to configured such


Code:
Buffer (0x04)
                                {
                                     0x00, 0x08, 0x00, 0x00             
                                }


And what is the problem if using WEG and the SSDT, everything else works as expected?

Anyway you need to find the correct SSDT implementation that enables in line with WEG the proper function of all 6 ports, including Display HotPlug, multi-monitor support and system sleep/wake. You might want to check, in order to achieve the latter, if SSDT-Vega64 might be better suited than SSDT-Frontier, which in particular uses predefined Kamerang frame buffers. The Kamerang frame buffer implementation of SSDT-Frontier e.g. does not work with the new custom Vegas, where I successfully use SSDT-Vega64 + WEG instead.


Yep, all 6 ports are DP, no HDMI.
So Kamerang (3x DP, 1x HDMI) is the wrong framebuffer.
I tried with Wenamu (6x DP), the only one I found, which shows up properly in IOreg. But then I got hotplug issues.

Actually there is no problem with WEG and my SSDT.
I was just wondering if anybody out there has a smarter solution.
 
Status
Not open for further replies.
Back
Top