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

This community is awesome.  I simply could not have installed a Hackintosh without it!

 

I wanted to have someone in the community to take a look at my boot log and see if there are any issues they could spot or improvement suggestions.  Just not sure if I should post and ask for that here or just start a new thread?  I've initially used this guide but it didn't work right away.  After stripping some clover configurator settings I got it to boot and install.  But I'm pretty novice and perhaps there are some things in the background that aren't utilized or put out errors that aren't so visible.

 

anyway let me know and I can attach the boot log here along with a couple screenshots of my clover configurator setup.

Link to comment
Share on other sites

Please..just note his signature ;)

 

This was just some additional comment, advice and reminder for all people using a i9-7980XE, after reading your valuable and appreciated recommendation and advice for using AppleIntelInfo.kext for the related purpose. This additional comment was never meant in any bad way nor as critics on or as corrections of your helpful original comment.

 

Bona notte, fabiosun ;)  

Link to comment
Share on other sites

Yes and your additional comment is in my opinion well declared in one chapter of your extended guide in OP

So quoting me was not good in that "helping" contest

 

For you and for other could be of some interest to evaluate my bootlog attached with pictures with red oval and also evaluate the meaning of unlock a firmware with latest clover boot loader features

But this are only my 2 cents in this subject

 

Ps 

Buona notte KGP! :)

 

 

 

 

 

This was just some additional comment, advice and reminder for all people using a i9-7980XE, after reading your valuable and appreciated recommendation and advice for using AppleIntelInfo.kext for the related purpose. This additional comment was never meant in any bad way nor as critics on or as corrections of your helpful original comment.

 

Bona notte, fabiosun ;)  

Link to comment
Share on other sites

Yes and your additional comment is in my opinion well declared in one chapter of your extended guide in OP

So quoting me was not good in that "helping" contest

 

For you and for other could be of some interest to evaluate my bootlog attached with pictures with red oval and also evaluate the meaning of unlock a firmware with latest clover boot loader features

But this are only my 2 cents in this subject

 

Ps 

Buona notte KGP! :)

 

a.) I see, I should not have commented your reply, comment or suggestion at all.. I regret for any inconvenience caused by my add-on.

 

b.) I propose by myself the clover boot log analysis within my guide as "some" possibility to  check whether the MSR 0xE2 register is locked or unlocked. Thus, of course I also support your endeavours, suggestions and advises in this direction. 

 

What else can I say? I totally agree with everything you are suggesting or commenting.. 

 

Buena notte  ;)

Link to comment
Share on other sites

Ok I share :)

if some of you can take a look.  Are there any possible issues that are visible from looking at the boot log?  I've used this guides EFI file which initially didn't work so I removed a few patches, changed to 17.1 though not sure if it was a good choice but eventually it booted.  but I feel I might have removed too much and not applied perhaps everything necessary.

 

WORKING

ethernet

Nvidia :)

USBs in the back off of motherboard

 

NOT WORKING

bluetooth :( (this one I'm bummed about)

wifi

front of the case 4 USBs

Audio from HDMI going to TV(this one I'm really bummed)

 

havne't tried the usb c 3.1 yet in the back

 

 

boot.rtf

post-2394979-0-37127700-1518575931_thumb.png

post-2394979-0-25852100-1518575940_thumb.png

post-2394979-0-31155900-1518575959_thumb.png

post-2394979-0-30843200-1518575969_thumb.png

post-2394979-0-23961500-1518575978_thumb.png

post-2394979-0-44320600-1518575989_thumb.png

post-2394979-0-00589400-1518576000_thumb.png

post-2394979-0-08523500-1518576007_thumb.png

post-2394979-0-04254600-1518576020_thumb.png

Link to comment
Share on other sites

Ok I share :)

if some of you can take a look.  Are there any possible issues that are visible from looking at the boot log?  I've used this guides EFI file which initially didn't work so I removed a few patches, changed to 17.1 though not sure if it was a good choice but eventually it booted.  but I feel I might have removed too much and not applied perhaps everything necessary.

 

WORKING

ethernet

Nvidia :)

USBs in the back off of motherboard

 

NOT WORKING

bluetooth :( (this one I'm bummed about)

wifi

front of the case 4 USBs

Audio from HDMI going to TV(this one I'm really bummed)

 

havne't tried the usb c 3.1 yet in the back

 

What you mean by  you removed a few patches and you changed to 17,1? You mean SMBIOS iMac17,1? Why do you do that if you have SMBIOS iMacPro1,1 and 10.13.3 (17D2047) available? Please use my latest EFI-Folder distribution and guide implementations. BTW, If you are using  AptioMemoryFix.efi, remove the slide=0 boot flag.. Do you really need npci=0x3000 instead of npci=0x2000? I don't need the npci boot flag at all.. Once you will be on SMBIOS iMacPro1,1, you do not need to use neither NvidiaGraphicsFixup nor Shiki.kext.  You don't use any ACPI patches and you do not inject any audio ID.. Neither you adopted or use a SSDT-X299-iMacPro.aml properly adopted to your system.. 

 

My friend, you still have a lot of work ahead to bring your system in line with the actual recommended system implementations. No surprise that you face that many issues. Please carefully read and revise my guide   ;)

 

All the best and good luck,

 

KGP

Link to comment
Share on other sites

What you mean by  you removed a few patches and you changed to 17,1? You mean SMBIOS iMac17,1? Why do you do that if you have SMBIOS iMacPro1,1 and 10.13.3 (17D2047) available? Please use my latest EFI-Folder distribution and guide implementations. BTW, If you are using  AptioMemoryFix.efi, remove the slide=0 boot flag.. Do you really need npci=0x3000 instead of npci=0x2000? I don't need the npci boot flag at all.. Once you will be on SMBIOS iMacPro1,1, you do not need to use neither NvidiaGraphicsFixup nor Shiki.kext.  You don't use any ACPI patches and you do not inject any audio ID.. Neither you adopted or use a SSDT-X299-iMacPro.aml properly adopted to your system.. 

 

My friend, you still have a lot of work ahead to bring your system in line with the actual recommended system implementations. No surprise that you face that many issues. Please carefully read and revise my guide   ;)

 

All the best and good luck,

 

KGP

The reason i removed things because i couldn't boot with your efi straight as it stood. First time doing this!  Which of the things i mentioned that i don't have working will smbios imacPro1.1 fix?  I don't think my bluetooth and wifi is supported at all.  I heard the HDMI audio also won't work as per nvidia drivers as they stand right now while connected to display port at the same time.  But I really hope those things aren't true and they would work.

 

Firstly when i downloaded high sierra from an actual mac app store i think it came with 17d47 only.  Unless i'm wrong in which case where do i download 17D2047 to make a boot usb?  I don't want to update or anything i'll probably do another clean install with some help as last time i couldn't get you efi working correctly they way it was.

Link to comment
Share on other sites

The reason i removed things because i couldn't boot with your efi straight as it stood. First time doing this!  Which of the things i mentioned that i don't have working will smbios imacPro1.1 fix?  I don't think my bluetooth and wifi is supported at all.  I heard the HDMI audio also won't work as per nvidia drivers as they stand right now while connected to display port at the same time.  But I really hope those things aren't true and they would work.

 

Firstly when i downloaded high sierra from an actual mac app store i think it came with 17d47 only.  Unless i'm wrong in which case where do i download 17D2047 to make a boot usb?  I don't want to update or anything i'll probably do another clean install with some help as last time i couldn't get you efi working correctly they way it was.

 

My guide and EFI-Folder use the ASUS Prime X299 Deluxe as baseline. The EFI-Folder however is kept as general as possible.. Though, few adaptations might be necessary when using a mainboard different from the ASUS Prime X299 Deluxe. 

 

Which ASRock X299 mobo are you using? I was recently advised to minimise my config.plist settings. Thus, there might be some additional settings you need to implement in  your config.plist, e.g. ncpi=0x2000 might be one of them... Once everything is properly implemented, all USB ports and also HDAU should properly work. Your onboard BT should work without any issues. Your WIFI onboard chip however might be totally incompatible with OSX. Thus I recommend to think on some alternative Bluetooth/WIFI PCIe Adapter implementation such as the OSXWIFI. Note that there are also cheaper BT/WIFI PCIe adapter solutions available. You also might be able to replace the onboard BT/WIFI module instead.

 

You cannot download 10.13.3 (17D2047) from the Appstore. My guide implements a detailed guideline how to generate a 10.13.3 (17D2047) USB Flash Drive Installer and how to perform a clean install of  10.13.3 (17D2047) with SMBIOS iMacPro1,1 or any update to 10.13.3 (17D2047) with SMBIOS ImacPro1,1!  See Section D.)!

 

If you further resist in carefully reading my guide, it is difficult to provide any further help or advise. If you face any problems during the clean install of  10.13.3 (17D2047) with SMBIOS iMacPro1,1, you are always welcome to ask for further help and advise. 

 

Good luck and all the best,

 

KGP

Link to comment
Share on other sites

@deckardlives

 

- use only the "AptioMemoryFix.efi", remove the "OsxAptioFix2Drv.efi"

- use a current "Clover Configurator" ("Vibrant Edition" instead of "Classic Edition")
- remove the "Slide = 0" entry
- select checkbox ACPI / SSDT / Generate Options -> "PluginType"
- remove "npci = 0x3000"
- Update the "USB Port Limit Patch" for 10.13.4
  • Like 1
Link to comment
Share on other sites

 

Surprisingly, @interferenc is not mentioned at all along the official Patches.txt distribution.. strange, isn't it @fabiosun?

 

Up to my knowledge, he derived the necessary and now officially implemented ASUS Skylake-X/X299 patches..  

 

Up to my knowledge, the patches yet also just apply for ASUS X299 boards.. Also nothing about this tiny but important fact.. 

Link to comment
Share on other sites

Hi

I am on my phone by now and i can’t verify if patches are the same or not

I have also not tested this oatches for ASUS or others manufacured board

But people involved could ask to patches uploader

I was notified by Github forum because i am following an X299 iussue

Link to comment
Share on other sites

Hi

I am on my phone by now and i can’t verify if patches are the same or not

I have also not tested this oatches for ASUS or others manufacured board

But people involved could ask to patches uploader

I was notified by Github forum because i am following an X299 iussue

 

O.K., thanks for your appreciated reply, @fabiosun! 

 

I guess that's something , which needs to be directly done by @interferenc....

Link to comment
Share on other sites

O.K., thanks for your appreciated reply, @fabiosun! 

 

check also here

coder are asking @interferenc for a check

https://github.com/LongSoft/UEFITool/issues/92

tested on an Asrock firmware by now (I think it is unlocked by default but construction error is there

Manually patch with patches.txt posted here by interference is working (two steps patch)

 

Last login: Thu Feb 15 07:41:45 on console

fabios-iMac-Pro:~ fabio$ cd desktop

fabios-iMac-Pro:desktop fabio$ /Users/fabio/Desktop/UEFIPatch X29IT1.40

parseFile: non-empty pad-file contents will be destroyed after volume modifications

patch: replaced 8 bytes at offset 4125h 81E10080000033C1 -> 9090909090909090

patch: replaced 8 bytes at offset 27BB8h 81E10080000033C1 -> 9090909090909090

patch: replaced 4 bytes at offset 2E97h 0FBAE80F -> 0FBAE00F

reconstructSection: executable section rebase failed

Error ,

fabios-iMac-Pro:desktop fabio$

Link to comment
Share on other sites

check also here

coder are asking @interferenc for a check

https://github.com/LongSoft/UEFITool/issues/92

tested on an Asrock firmware by now (I think it is unlocked by default but construction error is there

Manually patch with patches.txt posted here by interference is working (two steps patch)

 

Last login: Thu Feb 15 07:41:45 on console

fabios-iMac-Pro:~ fabio$ cd desktop

fabios-iMac-Pro:desktop fabio$ /Users/fabio/Desktop/UEFIPatch X29IT1.40

parseFile: non-empty pad-file contents will be destroyed after volume modifications

patch: replaced 8 bytes at offset 4125h 81E10080000033C1 -> 9090909090909090

patch: replaced 8 bytes at offset 27BB8h 81E10080000033C1 -> 9090909090909090

patch: replaced 4 bytes at offset 2E97h 0FBAE80F -> 0FBAE00F

reconstructSection: executable section rebase failed

Error ,

fabios-iMac-Pro:desktop fabio$

 

Anyway I just realised that the patches now official published by the coders are some former and not the most recent patches of @interferenc, which now also solve the Skylake-X TSC issue:

# Patch string format
# FileGuid SectionType PatchType:FindPatternOrOffset:ReplacePattern 
# Please ensure that the latest symbol in patch string is space

# Possible section types:
#  PE32 image                    10
#  Position-independent code     11
#  TE Image                      12
#  DXE Dependency                13
#  Version information           14
#  User interface string         15
#  16-bit code                   16
#  Guided freeform               18
#  Raw data                      19
#  PEI Dependency                1B
#  SMM Dependency                1C
# Please do not try another section types, it can make the resulting image broken

# Possible patch types:
#  P - pattern-based, first parameter is a pattern to find, second - a pattern to replace
#  O - offset-based, first parameter is hexadecimal offset, second - a pattern toreplace
# Patterns can have . as "any possible value" symbol

#----------------------------------------------------------------------------------
# OSX CPU Power Management patches
# Remove lock from MSR 0xE2 register
#----------------------------------------------------------------------------------

# SiInit
299D6F8B-2EC9-4E40-9EC6-DDAA7EBF5FD9 12 P:81E10080000033C1:9090909090909090 

# PpmInitialize Reset IA32_TSC_ADJUST to 0 instead of enforcing 0xE2 lock
3FFCAE95-23CF-4967-94F5-16352F68E43B 10 P:742CB9E20000000F3248C1E220480BC20FBAE00F488944240872130FBAE80F89442408488B54240848C1EA200F30:BA00000000B800000000B93B0000000F309090909090909090909090909090909090909090909090909090909090 

# CpuInitPei Reset IA32_TSC_ADJUST to 0 instead of enforcing 0xE2 lock
01359D99-9446-456D-ADA4-50A711C03ADA 12 P:B9E20000000F328BC8BE0080000023CE0BCF75190BC6894424088954240C8B54240C8B442408B9E20000000F30:BA00000000B800000000B93B0000000F3090909090909090909090909090909090909090909090909090909090 

# CpuMpDxe to disable TSC writes
40BEAB40-CECE-4909-B133-20A413AE19E9 10 P:488BD6B9100000008BC648C1EA200F30:90909090909090909090909090909090

The actual patching looks like that:

parseImageFile: Aptio capsule signature may become invalid after image modifications
parseFile: non-empty pad-file contents will be destroyed after volume modifications
parseFile: non-empty pad-file contents will be destroyed after volume modifications
patch: replaced 8 bytes at offset 4380h 81E10080000033C1 -> 9090909090909090
patch: replaced 8 bytes at offset 4380h 81E10080000033C1 -> 9090909090909090
patch: replaced 46 bytes at offset 2974h 742CB9E20000000F3248C1E220480BC20FBAE00F488944240872130FBAE80F89442408488B54240848C1EA200F30 -> BA00000000B800000000B93B0000000F309090909090909090909090909090909090909090909090909090909090
patch: replaced 45 bytes at offset 1507h B9E20000000F328BC8BE0080000023CE0BCF75190BC6894424088954240C8B54240C8B442408B9E20000000F30 -> BA00000000B800000000B93B0000000F3090909090909090909090909090909090909090909090909090909090
patch: replaced 45 bytes at offset 1507h B9E20000000F328BC8BE0080000023CE0BCF75190BC6894424088954240C8B54240C8B442408B9E20000000F30 -> BA00000000B800000000B93B0000000F3090909090909090909090909090909090909090909090909090909090
patch: replaced 16 bytes at offset 1F1Eh 488BD6B9100000008BC648C1EA200F30 -> 90909090909090909090909090909090
Image patched

Did you ever try to apply the latter patches to your Asrock firmware? They make VoodooTSCSync.kext totally obsolete at least with ASUS X299 mainboards ... 

Link to comment
Share on other sites

hey guys,

 

I also got notified about the patches being included in UEFIPatch, and saw that they are the older patches and also lack the patch that fixes the e3 wake issue. I submitted a pull request here:

https://github.com/LongSoft/UEFITool/pull/113

 

The other issue is a minor one, where patching the same GUID more than once does not work properly. Sadly that's still true, but on the upside, we don't really need that.

https://github.com/LongSoft/UEFITool/issues/92

 

Also, while I am really satisfied with my TSC patches, that addresses a different issue than the MSR unlock, so while the patch is useful, I am not sure that should be in the official UEFIPatch distribution. Thus I only submitted the unlocking patches.

 

I have gist here with the TSC patches included for Asus boards if anybody needs it, I know it is kgp's guide as well:

https://gist.github.com/interferenc/d82357a13751bc24dcc5942f6af2374b

Link to comment
Share on other sites

Hi KGP

As I have said before also in your mine quoted message

I have patched successfully AsRock x299(and also Gigabyte firmware) with patches.txt you and interferenc have posted in this thread

I am not sure about TSC stuff (useful or not?) and MSR 0xE2 in my opinion in Asrock (and in Gigabyte) is unlocked by factory

To patch those manufactured board you can't use only uefipatch

you have different way to do it and it is possible to find patches.txt pattern in Asrock/gigabyte bios

 

For now, in my X99 rig I am using successfully a non patched bios because as I said before latest clover version help to have a working rig without the need to unlock msr0xe2..

And always in my Xeon rig it is not necessary anymore to patch it

I would like to advice to test also in x299 rig if this is a valid assertion or not ;)

 

Anyway I just realised that the patches now official published by the coders are some former and not the most recent patches of @interferenc, which now also solve the Skylake-X TSC issue:

# Patch string format
# FileGuid SectionType PatchType:FindPatternOrOffset:ReplacePattern 
# Please ensure that the latest symbol in patch string is space

# Possible section types:
#  PE32 image                    10
#  Position-independent code     11
#  TE Image                      12
#  DXE Dependency                13
#  Version information           14
#  User interface string         15
#  16-bit code                   16
#  Guided freeform               18
#  Raw data                      19
#  PEI Dependency                1B
#  SMM Dependency                1C
# Please do not try another section types, it can make the resulting image broken

# Possible patch types:
#  P - pattern-based, first parameter is a pattern to find, second - a pattern to replace
#  O - offset-based, first parameter is hexadecimal offset, second - a pattern toreplace
# Patterns can have . as "any possible value" symbol

#----------------------------------------------------------------------------------
# OSX CPU Power Management patches
# Remove lock from MSR 0xE2 register
#----------------------------------------------------------------------------------

# SiInit
299D6F8B-2EC9-4E40-9EC6-DDAA7EBF5FD9 12 P:81E10080000033C1:9090909090909090 

# PpmInitialize Reset IA32_TSC_ADJUST to 0 instead of enforcing 0xE2 lock
3FFCAE95-23CF-4967-94F5-16352F68E43B 10 P:742CB9E20000000F3248C1E220480BC20FBAE00F488944240872130FBAE80F89442408488B54240848C1EA200F30:BA00000000B800000000B93B0000000F309090909090909090909090909090909090909090909090909090909090 

# CpuInitPei Reset IA32_TSC_ADJUST to 0 instead of enforcing 0xE2 lock
01359D99-9446-456D-ADA4-50A711C03ADA 12 P:B9E20000000F328BC8BE0080000023CE0BCF75190BC6894424088954240C8B54240C8B442408B9E20000000F30:BA00000000B800000000B93B0000000F3090909090909090909090909090909090909090909090909090909090 

# CpuMpDxe to disable TSC writes
40BEAB40-CECE-4909-B133-20A413AE19E9 10 P:488BD6B9100000008BC648C1EA200F30:90909090909090909090909090909090

The actual patching looks like that:

parseImageFile: Aptio capsule signature may become invalid after image modifications
parseFile: non-empty pad-file contents will be destroyed after volume modifications
parseFile: non-empty pad-file contents will be destroyed after volume modifications
patch: replaced 8 bytes at offset 4380h 81E10080000033C1 -> 9090909090909090
patch: replaced 8 bytes at offset 4380h 81E10080000033C1 -> 9090909090909090
patch: replaced 46 bytes at offset 2974h 742CB9E20000000F3248C1E220480BC20FBAE00F488944240872130FBAE80F89442408488B54240848C1EA200F30 -> BA00000000B800000000B93B0000000F309090909090909090909090909090909090909090909090909090909090
patch: replaced 45 bytes at offset 1507h B9E20000000F328BC8BE0080000023CE0BCF75190BC6894424088954240C8B54240C8B442408B9E20000000F30 -> BA00000000B800000000B93B0000000F3090909090909090909090909090909090909090909090909090909090
patch: replaced 45 bytes at offset 1507h B9E20000000F328BC8BE0080000023CE0BCF75190BC6894424088954240C8B54240C8B442408B9E20000000F30 -> BA00000000B800000000B93B0000000F3090909090909090909090909090909090909090909090909090909090
patch: replaced 16 bytes at offset 1F1Eh 488BD6B9100000008BC648C1EA200F30 -> 90909090909090909090909090909090
Image patched

Did you ever try to apply the latter patches to your Asrock firmware? They make VoodooTSCSync.kext totally obsolete at least with ASUS X299 mainboards ... 

Edited by Guest
Link to comment
Share on other sites

And what would be the advantage of doing so, @cyberdevs? Will he also be able to use 10.13.3 (17D2047) without Skylake-X/X299? What will work, what will fail? 

For starters you can use nVidia GPUs without the need of Lilu, nVidiaGraphicsFixUp and/or on the fly patching the board-id, needing to use AGDPFix after installing the web drivers which is a huge step forward. (Thanks to @fabiosun for finding this possibility)

 

We can use 10.13.3 (17D47) or 10.13.3 (17D2047) both but if we are using the 17D47 we need to add the board-id of an iMacPro to the PlatformSupport.plist otherwise it won't be able to recognize the iMacPro as supported platform.

I guess the already added the iMacPro's info in the 10.13.4 (beta) and soon there will be a unified version of the macOS Installer available once the 10.13.4 is out.

Everything worked on my rig (SkyLake) with iMacPro SMBIOS and nothing failed so far.

  • Like 1
Link to comment
Share on other sites

For starters you can use nVidia GPUs without the need of Lilu, nVidiaGraphicsFixUp and/or on the fly patching the board-id, needing to use AGDPFix after installing the web drivers which is a huge step forward. (Thanks to @fabiosun for finding this possibility)

 

We can use 10.13.3 (17D47) or 10.13.3 (17D2047) both but if we are using the 17D47 we need to add the board-id of an iMacPro to the PlatformSupport.plist otherwise it won't be able to recognize the iMacPro as supported platform.

I guess the already added the iMacPro's info in the 10.13.4 (beta) and soon there will be a unified version of the macOS Installer available once the 10.13.4 is out.

Everything worked on my rig (SkyLake) with iMacPro SMBIOS and nothing failed so far.

 

Interesting.. that means that also Kabylake Systems are compatible with SMBIOS iMacPro1,1 and 10.13.3 (17D2047)... and my guide seems to be compatible with Kabylake Systems as well in this case.. 

Link to comment
Share on other sites

Interesting.. that means that also Kabylake Systems are compatible with SMBIOS iMacPro1,1 and 10.13.3 (17D2047)... and my guide seems to be as well in this case.. 

Yes they are compatible.

 

In general SMBIOS determines which hardware and how can be handled by the macOS. For instance how the CPU will handle the power management and which GPU is used in the system and which drivers should be loaded in that regard.

 

When someone uses a specific set of hardware (CPU, GPU, Ethernet, ThunderBolt or USB ports) using the closest SMBIOS from an Apple product will play a significant role and tells the macOS how to handle those hardware parts.

 

You're guide is very thorough and there are some specific parts in it that will cover the X299 and SkyLakeX Architecture but there are plenty of steps in each guide that are universal for any hackintosh, so to answer your second question, Yes your guide can be used for other systems as well.

  • Like 3
Link to comment
Share on other sites

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