Contribute
Register

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

Status
Not open for further replies.
You need to reorder and rename ALL CP entries...

Logically, by following your IOREG screen-shot above, you would need the following ACPI replacements:

CP00 -> PR00
...
CP09 -> PR09
CP10 -> PR10
...
CP19 -> PR19
CP0A -> PR20
...
CP0F -> PR25
CP1A- > PR26
....
CP1F -> PR31
CP20 -> PR32
etc.
etc.
etc.

If you have 55 CP entries, you have to implement the ACPI replacements for all 55 entries, independently from the number of CPs actually populated by your CPU cores. All populated PRs should appear first in correct order (PR00 to PR19). In total, PRs would range from 0 to 54. ALL CP entries should have vanished.

Clear enough?

BTW.. never heard about a i9-5900X Skylake-X CPU... are you sure that's the one you are employing?

Of course I meant i9 7900x. Thanks for the help
 
You need to reorder and rename ALL CP entries...

Logically, by following your IOREG screen-shot above, you would need the following ACPI replacements:

CP00 -> PR00
...
CP09 -> PR09
CP10 -> PR10
...
CP19 -> PR19
CP0A -> PR20
...
CP0F -> PR25
CP1A- > PR26
....
CP1F -> PR31
CP20 -> PR32
etc.
etc.
etc.

If you have 55 CP entries, you have to implement the ACPI replacements for all 55 entries, independently from the number of CPs actually populated by your CPU cores. All populated PRs should appear first in correct order (PR00 to PR19). In total, PRs would range from 0 to 54. ALL CP entries should have vanished.

Clear enough?

BTW.. never heard about a i9-5900X Skylake-X CPU... are you sure that's the one you are employing?

Hey kgp, thank you for your great tutorial and all you work!#

I'm now on the same point to rename cp00 -> pr01, but I don't understand the logic behind this.
What is the reason to rename the cpu cores? why to rename 55 entries, if my cpu only has 10 core (20 hyper threaded)
Should I rename like this:
CP10 -> PR10 43503130 -> 50523130
...
CP19 -> PR19 43503139 -> 50523139
CP0A -> PR20 43503041 -> 50523230
..

Other question:
I changes the internal NGFF Wifi/BT with DW1830 and also changed the antenna cable for bluetooth, cause the old one not fit with dw1830.
I managed to get it working with:
AirportBrcmFixup.kext
BrcmFirmwareData.kext
BrcmPatchRAM2.kext
FakePCIID_Broadcom_WiFi.kext
FakePCIID.kext

Clover KextToPatch:
Code:
<dict>
                <key>Comment</key>
                <string>10.13-BCM94352-fvco-darkvoid-Sherlocks</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                gflSqgAAdL8=
                </data>
                <key>InfoPlistPatch</key>
                <false/>
                <key>MatchOS</key>
                <string>10.13.x</string>
                <key>Name</key>
                <string>com.apple.driver.AirPort.BrcmNIC-MFG</string>
                <key>Replace</key>
                <data>
                gflSqgAAZpA=
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>10.13-BCM94352-iovar-Sherlocks</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                hdtMi2XIeXE=
                </data>
                <key>InfoPlistPatch</key>
                <false/>
                <key>MatchOS</key>
                <string>10.13.x</string>
                <key>Name</key>
                <string>com.apple.driver.AirPort.BrcmNIC-MFG</string>
                <key>Replace</key>
                <data>
                hdtMi2XI63E=
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>10.13-BCM94352-iovar-Sherlocks</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                SIPEEInDhdt5Rg==
                </data>
                <key>InfoPlistPatch</key>
                <false/>
                <key>MatchOS</key>
                <string>10.13.x</string>
                <key>Name</key>
                <string>com.apple.driver.AirPort.BrcmNIC-MFG</string>
                <key>Replace</key>
                <data>
                SIPEEInDhdvrRg==
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>10.13-BCM94352-CC-Sebinouse-(edit 55 53 to CC)-PMheart</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                QYP8/3Q1SI1V0A==
                </data>
                <key>InfoPlistPatch</key>
                <false/>
                <key>MatchOS</key>
                <string>10.13.x</string>
                <key>Name</key>
                <string>com.apple.driver.AirPort.BrcmNIC-MFG</string>
                <key>Replace</key>
                <data>
                ZscGREXrNI1V0A==
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>10.13-BCM94352-Airport-Extreme-Skvo-Sherlocks</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                axAAAHUN
                </data>
                <key>InfoPlistPatch</key>
                <false/>
                <key>MatchOS</key>
                <string>10.13.x</string>
                <key>Name</key>
                <string>com.apple.driver.AirPort.BrcmNIC-MFG</string>
                <key>Replace</key>
                <data>
                axAAAJCQ
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>10.13-Disable-Whitelist-check-RehabMan</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                MdtMy2XYdRI=
                </data>
                <key>InfoPlistPatch</key>
                <false/>
                <key>MatchOS</key>
                <string>10.11.x,10.12.x</string>
                <key>Name</key>
                <string>com.apple.driver.AirPort.BrcmNIC-MFG</string>
                <key>Replace</key>
                <data>
                Mdv/w5CQkJA=
                </data>
            </dict>

Now I want to adopt your Wifi/BT SSDT code with this card. How to do this?

You describe the wifi card on the PCI 3 Slot, so its PC03.

Code:
    External (_SB_.PC03.BR3D, DeviceObj)    // (from opcode)
    External (_SB_.PC03.BR3D.ARPT, DeviceObj)    // (from opcode)
    External (_SB_.PC03.BR3D.PEGP, DeviceObj)    // (from opcode)
    External (_SB_.PC03.BR3D.SL0C, DeviceObj)    // (from opcode)
    External (SL0C, DeviceObj)    // (from opcode)
    External (PEGP, DeviceObj)    // (from opcode)

Scope (_SB.PC03.BR3D)
    {
        Scope (SL0C)
        {
            Name (_STA, Zero)  // _STA: Status
        }

        Scope (PEGP)
        {
            Name (_STA, Zero)  // _STA: Status
        }

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

                        "device-id",
                        Buffer (0x04)
                        {
                             0xA0, 0x43, 0x00, 0x00                        
                        },

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

                        "device_type",
                        Buffer (0x13)
                        {
                            "AirPort Controller"
                        },

                        "model",
                        Buffer (0x4A)
                        {
                            "OSX WIFI Broadcom BCM94360CD 802.11 a/b/g/n/ac + Bluetooth 4.0 Controller"
                        },

                        "compatible",
                        Buffer (0x0D)
                        {
                            "pci14e4,43a0"
                        },

                        "name",
                        Buffer (0x10)
                        {
                            "AirPort Extreme"
                        }
                    }, Local0)
                DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                Return (Local0)
            }
        }

My card inside the NGFF Slot is on PC0 with RP03 address? but I don't find the bluetooth here, why?
 

Attachments

  • wifi.jpeg
    wifi.jpeg
    157.2 KB · Views: 110
  • bt.jpeg
    bt.jpeg
    194.2 KB · Views: 97
Hey kgp, thank you for your great tutorial and all you work!#

I'm now on the same point to rename cp00 -> pr01, but I don't understand the logic behind this.
What is the reason to rename the cpu cores? why to rename 55 entries, if my cpu only has 10 core (20 hyper threaded)
Should I rename like this:
CP10 -> PR10 43503130 -> 50523130
...
CP19 -> PR19 43503139 -> 50523139
CP0A -> PR20 43503041 -> 50523230
..

Other question:
I changes the internal NGFF Wifi/BT with DW1830 and also changed the antenna cable for bluetooth, cause the old one not fit with dw1830.
I managed to get it working with:
AirportBrcmFixup.kext
BrcmFirmwareData.kext
BrcmPatchRAM2.kext
FakePCIID_Broadcom_WiFi.kext
FakePCIID.kext

Clover KextToPatch:
Code:
<dict>
                <key>Comment</key>
                <string>10.13-BCM94352-fvco-darkvoid-Sherlocks</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                gflSqgAAdL8=
                </data>
                <key>InfoPlistPatch</key>
                <false/>
                <key>MatchOS</key>
                <string>10.13.x</string>
                <key>Name</key>
                <string>com.apple.driver.AirPort.BrcmNIC-MFG</string>
                <key>Replace</key>
                <data>
                gflSqgAAZpA=
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>10.13-BCM94352-iovar-Sherlocks</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                hdtMi2XIeXE=
                </data>
                <key>InfoPlistPatch</key>
                <false/>
                <key>MatchOS</key>
                <string>10.13.x</string>
                <key>Name</key>
                <string>com.apple.driver.AirPort.BrcmNIC-MFG</string>
                <key>Replace</key>
                <data>
                hdtMi2XI63E=
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>10.13-BCM94352-iovar-Sherlocks</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                SIPEEInDhdt5Rg==
                </data>
                <key>InfoPlistPatch</key>
                <false/>
                <key>MatchOS</key>
                <string>10.13.x</string>
                <key>Name</key>
                <string>com.apple.driver.AirPort.BrcmNIC-MFG</string>
                <key>Replace</key>
                <data>
                SIPEEInDhdvrRg==
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>10.13-BCM94352-CC-Sebinouse-(edit 55 53 to CC)-PMheart</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                QYP8/3Q1SI1V0A==
                </data>
                <key>InfoPlistPatch</key>
                <false/>
                <key>MatchOS</key>
                <string>10.13.x</string>
                <key>Name</key>
                <string>com.apple.driver.AirPort.BrcmNIC-MFG</string>
                <key>Replace</key>
                <data>
                ZscGREXrNI1V0A==
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>10.13-BCM94352-Airport-Extreme-Skvo-Sherlocks</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                axAAAHUN
                </data>
                <key>InfoPlistPatch</key>
                <false/>
                <key>MatchOS</key>
                <string>10.13.x</string>
                <key>Name</key>
                <string>com.apple.driver.AirPort.BrcmNIC-MFG</string>
                <key>Replace</key>
                <data>
                axAAAJCQ
                </data>
            </dict>
            <dict>
                <key>Comment</key>
                <string>10.13-Disable-Whitelist-check-RehabMan</string>
                <key>Disabled</key>
                <false/>
                <key>Find</key>
                <data>
                MdtMy2XYdRI=
                </data>
                <key>InfoPlistPatch</key>
                <false/>
                <key>MatchOS</key>
                <string>10.11.x,10.12.x</string>
                <key>Name</key>
                <string>com.apple.driver.AirPort.BrcmNIC-MFG</string>
                <key>Replace</key>
                <data>
                Mdv/w5CQkJA=
                </data>
            </dict>

Now I want to adopt your Wifi/BT SSDT code with this card. How to do this?

You describe the wifi card on the PCI 3 Slot, so its PC03.

Code:
    External (_SB_.PC03.BR3D, DeviceObj)    // (from opcode)
    External (_SB_.PC03.BR3D.ARPT, DeviceObj)    // (from opcode)
    External (_SB_.PC03.BR3D.PEGP, DeviceObj)    // (from opcode)
    External (_SB_.PC03.BR3D.SL0C, DeviceObj)    // (from opcode)
    External (SL0C, DeviceObj)    // (from opcode)
    External (PEGP, DeviceObj)    // (from opcode)

Scope (_SB.PC03.BR3D)
    {
        Scope (SL0C)
        {
            Name (_STA, Zero)  // _STA: Status
        }

        Scope (PEGP)
        {
            Name (_STA, Zero)  // _STA: Status
        }

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

                        "device-id",
                        Buffer (0x04)
                        {
                             0xA0, 0x43, 0x00, 0x00                      
                        },

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

                        "device_type",
                        Buffer (0x13)
                        {
                            "AirPort Controller"
                        },

                        "model",
                        Buffer (0x4A)
                        {
                            "OSX WIFI Broadcom BCM94360CD 802.11 a/b/g/n/ac + Bluetooth 4.0 Controller"
                        },

                        "compatible",
                        Buffer (0x0D)
                        {
                            "pci14e4,43a0"
                        },

                        "name",
                        Buffer (0x10)
                        {
                            "AirPort Extreme"
                        }
                    }, Local0)
                DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                Return (Local0)
            }
        }

My card inside the NGFF Slot is on PC0 with RP03 address? but I don't find the bluetooth here, why?

I guess what you have to do should be clear from posts #8384 and #8385... If you want to reorder and rename all CPs to PRs, you need to do it for all and not only for those which are populated, isn't it? Otherwise you will have a strange mixture of CPs and PRs... Note once more that the CPxx -> PRxx ACPI replacements are not deemed necessary. Thus, if you fell uncomfortable with the approach, skip it entirely.

I cannot make any guess for the DW1830 SSDT implementation from what you depict above. As the card is not in PCIe Slot-3, it certainly won't be assigned to PCI0 and RP03 ..
 
I believe holding down the Command key and pressing the Clear key will turn on "Num Lock" on your Apple keyboard. At least that works for me when I boot into Windows.
Thanks for the advice, but it doesn't work for me.
In my case, I just have to use the top row of the keyboard, the one that share the numbers and special characters, without using the SHIFT key. It's directly the numbers, not the special characters.
 
Super annoying? My guide clearly recommends to use NvidiaGraphicsfixup.kext with Lilu.kext in case of monitor sleep/wake issues. You need somebody else to test the simple implementation of two additional kext files? o_O:rolleyes:

My bad. I took it out a little while ago because the section said it was only necessary unless you have the issue I'm having (forgot all about that kext). Should have just left it alone. I'm having trouble compiling the project I keep getting the following build error:

CompileC build/NvidiaGraphicsFixup.build/Release/NvidiaGraphicsFixup.build/Objects-normal/x86_64/plugin_start.o Lilu.kext/Contents/Resources/Library/plugin_start.cpp normal x86_64 c++ com.apple.compilers.llvm.clang.1_0.compiler

Does Lilu 1.2.3 need to be present in NvidiaGraphicsFixup-master? I can't seem to get it to build with or without the Lilu kext present. Thank you for all your help! Much appreciated!!
 
My bad. I took it out a little while ago because the section said it was only necessary unless you have the issue I'm having (forgot all about that kext). Should have just left it alone. I'm having trouble compiling the kext I keep getting the following build error:

CompileC build/NvidiaGraphicsFixup.build/Release/NvidiaGraphicsFixup.build/Objects-normal/x86_64/plugin_start.o Lilu.kext/Contents/Resources/Library/plugin_start.cpp normal x86_64 c++ com.apple.compilers.llvm.clang.1_0.compiler

Does Lilu 1.2.3 need to be present in NvidiaGraphicsFixup-master? I can't seem to get it to build with or without the Lilu kext present. Thank you for all your help! Much appreciated!!

Just download and use the precompiled 1.2.7 binary. Should be more than sufficient.
 
Just download and use the precompiled 1.2.7 binary. Should be more than sufficient.

Got it. Thank You! However by adding this kext I get this issue immediately upon boot, upon removing the kext everything works until the monitors fall asleep. Must be a small something I'm missing somewhere.
 
Got it. Thank You! However by adding this kext I get this issue immediately upon boot, upon removing the kext everything works until the monitors fall asleep. Must be a small something I'm missing somewhere.

Upon boot? Which issue? What do you mean by this?

1:30 am.. off to bed sorry..
 
Been going back and forth with toleda on this in the official thread, so I'll ask here again:

Does anyone using iMacPro1,1 (which should be everyone here, if you are following kgp's guide) have AGPM working with Nvidia?
 
Been going back and forth with toleda on this in the official thread, so I'll ask here again:

Does anyone using iMacPro1,1 (which should be everyone here, if you are following kgp's guide) have AGPM working with Nvidia?

How can we test?
 
Status
Not open for further replies.
Back
Top