Contribute
Register

How to build your own iMac Pro [Successful Build/Extended Guide]

Status
Not open for further replies.
In case someone is interested (I did not see any comments), nvidia Web Driver - 387.10.10.10.30.107 -> buil d17E202 works perfect in my 980ti, no lag or issues.:)
 
  • Like
Reactions: kgp
I had read those instructions on insanelymac, and that was the first thing I tried...
That didn't work for me.

I have no kexts in anything but EFI/Clover/kexts/Other

I even tried with a smaller subset of kexts/efi using the original EFI folder from the USB install disk, didn't change a thing :(
Found the issue.

Ran disk utility on my boot disks, thousands of errors. Corrupted directory entries etc..
Likely the result of me playing with thunderbolt hotplug and having the system hang very often.
After a backup and reformat. It upgraded fine
 
  • Like
Reactions: kgp
Found the issue.

Ran disk utility on my boot disks, thousands of errors. Corrupted directory entries etc..
Likely the result of me playing with thunderbolt hotplug and having the system hang very often.
After a backup and reformat. It upgraded fine

you see... I was not that wrong with my former comment ;)
 
@ppffffpp
On my new build gpu never reached temps above 65 degrees so no overheating at all, but if I use 10.13.4 or 10.13.5 I get as well same reboots as you and still max temp 65 degrees. Interesting and glad that you fixed your issues.
I am as well on 10.13.3 since on this version it works without any issues.

EDIT: I don't know how it works on your build but on my it breaks GPU...

View attachment 328062

EDIT 2 : Ok I've repaired the rights with Kext wizard and now it works, thanks will do some testing now.

Turns out it didn't fix my freezing issues. I have been trying to figure out a way to install 10.13.3 again (I no longer have that install). Anyone have any suggestions how I can do it? I still have a 10.13.1 installer, but I haven't been able to figure out how to get it to convert to the iMac pro build when updating etc.
 
Turns out it didn't fix my freezing issues. I have been trying to figure out a way to install 10.13.3 again (I no longer have that install). Anyone have any suggestions how I can do it? I still have a 10.13.1 installer, but I haven't been able to figure out how to get it to convert to the iMac pro build when updating etc.

That a Vega only works with 10.3.3 is absolute nonsense, sorry! I was configuring a dual boot Skylake-X/X299 system with a Vega Frontier for @Lexus1234 and apart from the boot screen resolution issue with DP and the 30 Hz issue with HDMI under OSX in combinations with the LG 38UC99-W, the macOS system including the GPU performed absolutely flawless and stable even under 10.13.4 (17E199)!

Good luck,

KGP
 
Last edited:
That a Vega only works with 10.3.3 is absolute nonsense, sorry! I was configuring a dual boot Skylake-X/X299 system with a Vega Frontier for @Lexus1234 and apart from the boot screen resolution issue with DP and the 30 Hz issue with HDMI under OSX, the macOS system including the GPU performed absolutely flawless and stable even under 10.13.4 (17E199)!

Good luck,

KGP

This is correct. My Vega 64 Frontier runs as described above under 10.13.4 (17E199). Just wish I could run it at 60hz using HDMI...I know it's possible ;-)
 
Here is my SSDT.aml for my two graphics cards. I do not like patching system-relevant kernel extensions. Do not forget to adjust the paths in the SSDT to your hardware.
 

Attachments

  • bla.png
    bla.png
    92.5 KB · Views: 118
  • SSDT-02.aml
    2.3 KB · Views: 117
Here is my SSDT.aml for my two graphics cards. I do not like patching system-relevant kernel extensions. Do not forget to adjust the paths in the SSDT to your hardware.

Thanks Nico! This SSDT fixes the 30Hz issue with the Vega Frontier and 4K monitors under OSX?

I still use your old Vega SSDT implementation. Is the latter totally obsolete under 10.13.4?

Code:
    Scope (\_SB.PC02.BR2A.GFX0)
    {
        OperationRegion (PCIS, PCI_Config, Zero, 0x0100)
        Field (PCIS, AnyAcc, NoLock, Preserve)
        {
            PVID,   16,
            PDID,   16
        }

        Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
        {
            Return (GPRW (0x69, 0x04))
        }

        Device (GFXA)
        {
            Name (_ADR, Zero)  // _ADR: Address
            Device (GFX0)
            {
                Name (_ADR, Zero)  // _ADR: Address
                OperationRegion (PCIB, PCI_Config, Zero, 0x0100)
                Field (PCIB, AnyAcc, NoLock, Preserve)
                {
                    Offset (0x10),
                    BAR0,   32,
                    BAR1,   32,
                    BAR2,   64,
                    BAR4,   32,
                    BAR5,   32
                }

                Method (_INI, 0, NotSerialized)  // _INI: Initialize
                {
                    If (LEqual (BAR5, Zero))
                    {
                        Store (BAR2, Local0)
                    }
                    Else
                    {
                        Store (BAR5, Local0)
                    }

                    OperationRegion (GREG, SystemMemory, And (Local0, 0xFFFFFFF0), 0x8000)
                    Field (GREG, AnyAcc, NoLock, Preserve)
                    {
                        Offset (0x6800),
                        GENA,   32,
                        GCTL,   32,
                        LTBC,   32,
                        Offset (0x6810),
                        PSBL,   32,
                        SSBL,   32,
                        PTCH,   32,
                        PSBH,   32,
                        SSBH,   32,
                        Offset (0x6848),
                        FCTL,   32,
                        Offset (0x6EF8),
                        MUMD,   32
                    }

                    Store (Zero, FCTL)
                    Store (Zero, PSBH)
                    Store (Zero, SSBH)
                    Store (Zero, LTBC)
                    Store (One, GENA)
                    Store (Zero, MUMD)
                }

                Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
                {
                    Store (Package (0x16)
                        {
                            "AAPL,slot-name",
                            Buffer (0x07)
                            {
                                "Slot-1"
                            },

                            "CFG,CFG_USE_AGDC",
                            Buffer (One)
                            {
                                 0x00                                          
                            },

                            "PP,PP_DisableAutoWattman",
                            Buffer (One)
                            {
                                 0x00                                          
                            },

                            "ATY,Part#",
                            Buffer (0x0C)
                            {
                                "113-3E366DU"
                            },

                            "@0,AAPL,boot-display",
                            Buffer (One)
                            {
                                 0x00                                          
                            },

                            "@0,name",
                            Buffer (0x0D)
                            {
                                "ATY,Kamarang"
                            },

                            "@1,name",
                            Buffer (0x0D)
                            {
                                "ATY,Kamarang"
                            },

                            "@2,name",
                            Buffer (0x0D)
                            {
                                "ATY,Kamarang"
                            },

                            "@3,name",
                            Buffer (0x0D)
                            {
                                "ATY,Kamarang"
                            },

                            "model",
                            Buffer (0x13)
                            {
                                "AMD Radeon Vega 64"
                            },

                            "hda-gfx",
                            Buffer (0x0A)
                            {
                                "onboard-2"
                            }
                        }, 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 (0x0C)
                        {
                            "built-in",
                            Buffer (One)
                            {
                                 0x00                                          
                            },

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

                            "layout-id",
                            Buffer (0x04)
                            {
                                 0x01, 0x00, 0x00, 0x00                        
                            },

                            "name",
                            Buffer (0x0D)
                            {
                                "AMD HD-Audio"
                            },

                            "model",
                            Buffer (0x0D)
                            {
                                "AMD HD-Audio"
                            },

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

Cheers,

KGP
 
I referred to this:
ppffffpp said:
Hi All,
To those of you with Vega GPU, I have found a solution to the fan speed problem that also provides full overclocking control (clock speed, voltage, fan speed and curve).

I do not use 4 or 5K monitors, so I can not contribute anything to that.

I have not used the old SSDT for a long time, these "OperationRegions" are already included in the original DSDT. I use the already existing "PEGP" instead of "SL01" and so on. The disturbing SL01 et cetera must of course be deleted.
 
I referred to this:


I do not use 4 or 5K monitors, so I can not contribute anything to that.

I have not used the old SSDT for a long time, these "OperationRegions" are already included in the original DSDT. I use "PEGP" instead of "SL01" and so on ...

I still don't use your DSDT modifications. About the ACPI replacements don't worry.. they are alright.. I use GFX0. ;)

The only problem we faced with the Vega was that the latter drives the LG 38UC99-W just at 30 Hz under OSX via the HDMI port. Via DP we reach 75 Hz, although the 4K DP boot screen resolution (splash screen and clover verbose boot messages) is just awkward (VGA like).

Cheers,

KGP

Edit: the problem might be an incompatibility between the VEGA 1.4 DP and the LG 38UC99-W 1.2 DP. What causes the 30Hz HDMI port issue under OSX I don't know. Maybe also some incompatibly between the HDMI ports of the VEGA and the LG 38UC99-W... Although other people also reported identical issues with other 4K displays....
 
Last edited:
Status
Not open for further replies.
Back
Top