Jump to content

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


KGP-iMacPro

iMacPro Build/Guide Feedback   

26 members have voted

  1. 1. Does this guide help you in your endeavour?

    • yes
      21
    • no
      5

This poll is closed to new votes


656 posts in this topic

Recommended Posts

10 minutes ago, fantomas1 said:

@KGP-iMacPro

The links are not broken - WebDrivers are just not available yet. I posted those links because 99% of probability they will be the good ones.

If you didn't see a '17E2199' build yet, it doesn't mean that the build doesn't exist. And even if it is the case, why it is confusing while we can edit the post in the next minute?  ;)

You have to ask Apple for that:

10.13.3.PNG

Then Apple released supplemental updates (update, combo... and iMac Pro), Nvidia just followed with 2 new webdrivers.

And it will happen the same with 10.13.4.  ;)

Happy to see you that motivated :wink_anim:

  • Haha 1
Link to comment
Share on other sites

15 minutes ago, corint1 said:

thank you , but I ask about a full install for Imac Pro ... but isnt exist ....... 

Yes. It doesn't exist. Apple amalgamated the different versions a few betas ago. No more seperate imac Pro installers.

Link to comment
Share on other sites

7 minutes ago, surfinchina said:

Yes. It doesn't exist. Apple amalgamated the different versions a few betas ago. No more seperate imac Pro installers.

Pete that's only the 10.13.4 Combo Update Package (2.49 GB) and still not the 10.13.4 full package installer (5.22GB)... 

  • Like 1
Link to comment
Share on other sites

Bingo Amd is fully supported :

Boot without inject Ati or radeondelnit or Watevergreen.kext  :thumbsup_anim:

Sleep and wake by one clic on mouse with no issue .

Edited by Loloflat6
Link to comment
Share on other sites

hi,

somebody did a clean install 13.4 ?... I obtain only REINSTALL...why ? ... I try with app from app store or I make an usb with indications on post#1... same thing ... REINSTALL ... ty 
 

Link to comment
Share on other sites

3 hours ago, corint1 said:

hi,

somebody did a clean install 13.4 ?... I obtain only REINSTALL...why ? ... I try with app from app store or I make an usb with indications on post#1... same thing ... REINSTALL ... ty 
 

What do you mean by reinstall? 

Link to comment
Share on other sites

27 minutes ago, KGP-iMacPro said:

What do you mean by reinstall? 

never mind ... in final I found a reason for this and a method to a fresh install to 13.4

 

If you deleted the .IAPhysicalMedia you need to create the installer again don't remove the .IAPhysicalMedia just create the .IABootFiles folder and then copy the boot.efi from the given path. It works on my end. 

Link to comment
Share on other sites

21 minutes ago, corint1 said:

never mind ... in final I found a reason for this and a method to a fresh install to 13.4

 

If you deleted the .IAPhysicalMedia you need to create the installer again don't remove the .IAPhysicalMedia just create the .IABootFiles folder and then copy the boot.efi from the given path. It works on my end. 

At which point I am deleting the .IAPhysicalMedia? I don't even know what you are talking about :D

Link to comment
Share on other sites

1 hour ago, KGP-iMacPro said:

At which point I am deleting the .IAPhysicalMedia? I don't even know what you are talking about :D

ok ... sorry ... you have right ...is not about yours guide ... I read in another topic of this story only that it was totally wrong ... so sorry for confusion, it was not about your guide ...

Edited by corint1
  • Like 1
Link to comment
Share on other sites

At this point and after the 10.13.4 update for me (and for many of us I hope) , my build is fully working and stable for my professional and private usage : thanks for all the advices Kgp and all others give me here !

 

Just a few words if I could allow myself once for GPUs:

The choice between Nvidia or Amd Radeon has always been a question and the thinking is contradictory according to the users.

I can not argue for Nvidia just because i never use it (except a GT730) on my builds for four years.

Indeed, for the past three years, Amd was not fully supported and naturally the choice for better compatibility (installation ...) was more obvious for Nvidia.

But we are lucky that the devoppers and coders are still working hard and keep us the choice to use Amd (also Nvidia).

I want to thank them for all the tools they provide us to have a complete experience with both GPU brands. they recognize themselves through my words ...

 

Today, it seems that Amd has become fully (or better) supported.

(Regardless of the choice between Nvidia or  Amd  it is always very sad for me to see people blaming or arguing  with the child's pretense for it.)

 

In fact, what is useful for us:

Just know what is better in Nvidia or Amd for this or that configuration depending on the purpose we hope.

Just these few words to keep in mind the best possible build for your own hackintosh on X299 platform with HEDT CPUs.

 

Cordiality.

Loloflat6

 

 

Edited by Loloflat6
  • Like 2
Link to comment
Share on other sites

Some words about my settings to have sleep and wake with no issue. (also with Bluetooth 4.0 WI-FI PCI Express (PCI-E)-Carte Combo BCM94360CD )

1/ System preferences :

Just checked suspend hard drive activity as soon as possible 

2/ EFi/Clover

  - Kexts : XHCI-200-series-injector.kext and USBinjectall.kext (latest Rehabman's release )

- ACPI/Patched :

   - custom SSDT for USBinjectall.kext ( very important for usb internal 255 power management for WIFI PCI )

  "SS01", Package()
                    {
                        "UsbConnector", 255,
                        "port", Buffer() { 17, 0, 0, 0 },

May be different for other mobo also see in your Ioreg

   - ssdt.aml for CPU power management

- config.plist :

    - darkwake=0

    - SSDT :

        - PluginType checked  

        - Plugin Type 1

        - PLimit Dict 0

3 / Bios  : disable wake on lan 

4 / GPU : full support for Amd RX 580 right now ; full acceleration , fans are stopped when GPU is quiet and running after if needed ( exit Radeondelnit or Watevergreen or inject Ati)

What happen then :

- Screen saver on five minutes 

- Screen off about three minutes after screen saver

- Sleep about two minutes after

- Sleep : all is turned off ( only magic leds from mobo and led from WI-FI PCI Express are lighted )

- Wake :  right clic on the mouse or press one touch on keyboard 

- All works well with no issue ( with or without lockscreen).

If this could help others.

Edited by Loloflat6
Link to comment
Share on other sites

On 3.4.2018 at 8:20 PM, maleorderbride said:

@KGP, provide proper attribution for Thunderbolt 3 hotswap. Right now you are just a thief.

Anyone can see that the hotswap method came out of this thread: 

 

You are totally crazy!!! The TB SSDT implementation I use has been provided by @mathew82 and has been partly taken and adopted from @Mork vom Ork and is cited such!!!!!!!! Nothing to change or improve!!!!! 

Your behavior is simply unacceptable!!! Nobody calls me thief in public!!!!!!!

Link to comment
Share on other sites

Well, then i have taked delivery of my Asus ThunderboltEX 3 at the begining of this week :)

So i'll try to correctly install it on my build :

-1/ i'll do a new fresh install Windows 10 on my Nvme SSD and install the drivers Asus ThunderboltEX 3 on it.

- 2/ i'll boot on MacOs and try to implement ThunderboltEX 3 by creating my own SSTD-TB for my mobo with correct arguments on config.plist for hotplug.

To be continued this week end ...

Link to comment
Share on other sites

On 4/5/2018 at 3:22 PM, KGP-iMacPro said:

You are totally crazy!!! The TB SSDT implementation I use has been provided by @mathew82 and has been partly taken and adopted from @Mork vom Ork and is cited such!!!!!!!! Nothing to change or improve!!!!! 

Your behavior is simply unacceptable!!! Nobody calls me thief in public!!!!!!!

So they only call you a thief in private?? Get a clue KGP. 

Remote.Syst3m is the person to figure out the only thing required to get Thunderbolt hotswap to work, which is injecting PCIHotplugCapable=True (and is found in your SSDT). He told me how to do it in private message, and I then published his fix. Without that, you would not have working hotplug. Only he and I would. I have told you this multiple times, yet you still refuse to credit him. The evidence is in that thread. Read my post instead of ranting.

Matthew and Mark do fine work, and they are a credit to the community, but I don't think either claims to have come up with the fix for Thunderbolt hotswap because neither of them did it. Matthew took my post and example and altered it according to my instructions to fit an ASUS X299 board instead of an ASRock X299 board. I posted it so that people could do exactly that, but he isn't going around claiming to be the person who came up with it.

Matthew provided it from someone else's work. Get it? Now alter your attribution as I have requested multiple times.

Edited by maleorderbride
Link to comment
Share on other sites

Hi, KGP! Thanks for your dedicated amazing work! 

I have a different system like Coffelake with Gigabyte Z370 board. But your guide made my computer in the best mode so far.

I have worked on PCI implement section. And I am so noob of coding thing. If I understood correctly, you have Asus board and I have Gigabyte one and both are totally different PCI slots and mapping. But it is possible to make my PCI information correctly with your SSDT and the method of implementation you described?

 

Btw, I am not a rich person but I would like to give you a good cup of coffee time for your dedicated work.

Joo Hyun Grace

Link to comment
Share on other sites

4 hours ago, buyjoey said:

Hi, KGP! Thanks for your dedicated amazing work! 

I have a different system like Coffelake with Gigabyte Z370 board. But your guide made my computer in the best mode so far.

I have worked on PCI implement section. And I am so noob of coding thing. If I understood correctly, you have Asus board and I have Gigabyte one and both are totally different PCI slots and mapping. But it is possible to make my PCI information correctly with your SSDT and the method of implementation you described?

 

Btw, I am not a rich person but I would like to give you a good cup of coffee time for your dedicated work.

Joo Hyun Grace

I am sure that with a little bit of patience and effort you will be able to adopt the SSDT for your needs. I cross my fingers.. good luck, man :wink_anim:

Link to comment
Share on other sites

18 minutes ago, KGP-iMacPro said:

I am sure that with a little bit of patience and effort you will be able to adopt the SSDT for your needs. I cross my fingers.. good luck, man :wink_anim:

@KGP-iMacPro Hi,

 

Thank you for reply and wish for me.

I do not think your SSDT-X299 iMac Pro.aml is not compatible with my MB.

I just started with GPU part. I changed ACPI DSDT at Clover configurator.

PEGP->GFX0 and it is good to change display part in my IOREG.

5acafd4b9f1d3_ScreenShot2018-04-08at10_42_21PM.png.1d89c7fb8b9fbfbcbf90c2013e4ac566.png

 

And editing in SSDT, I changed DefinitionBlock part like this

5acafdff9673b_ScreenShot2018-04-08at10_45_07PM.png.f034a41137a06b80cce986de096453ff.png

And Scope part like this. (Vega 64 in slot 1)

Scope (\_SB.PCI0.PEG0.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 (GFX0)
        {
            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-2"
                            }, 

                            "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-2"
                            }, 

                            "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)
                }
            }
        }
    }

 

I guess 'slot-1' is cosmetic part right? If you see my Board map, I put my GPU first PCIe x16 slot which is second PCI slot. So I put 'Slot-2'

5acaff229390a_ScreenShot2018-04-08at10_49_48PM.thumb.png.cfd8231b16a83272aae0f30088dba822.png

 

However, PCI information said there is no PCI devices installed in SP.

Do you what is the problem?

Sorry my English so bad.

Joo Hyun Grace

 

Screen Shot 2018-04-08 at 10.42.21 PM.png

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...