RehabMan Posted May 31, 2017 Share Posted May 31, 2017 Have been having a few issues trying to get my Samsung 960 EVO 250gb visible in 10.12.5. Running on a GA-Z170X-UD3 board on a regular SATA SSD for now. Tried Pikers Clover config patch and get a panic attached with output attached below. Tried the HackrNVMeFamily patch with and without the --spoof argument and it just reboots at the Apple Logo with no error text. Double checked BIOS settings. Don't have any DSDT patches, and a relatively vanilla config.plist. Here's my config.plist: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>ACPI</key> <dict> <key>DSDT</key> <dict> <key>Debug</key> <false/> <key>DropOEM_DSM</key> <false/> <key>Fixes</key> <dict> <key>AddDTGP_0001</key> <false/> <key>AddHDMI_8000000</key> <false/> <key>AddIMEI_80000</key> <false/> <key>AddMCHC_0008</key> <false/> <key>AddPNLF_1000000</key> <false/> <key>DeleteUnused_400000</key> <false/> <key>FIX_ACST_4000000</key> <false/> <key>FIX_ADP1_800000</key> <false/> <key>FIX_INTELGFX_100000</key> <false/> <key>FIX_RTC_20000</key> <false/> <key>FIX_S3D_2000000</key> <false/> <key>FakeLPC_0020</key> <false/> <key>FiX_TMR_40000</key> <false/> <key>FiX_WAK_200000</key> <false/> <key>FixAirport_4000</key> <false/> <key>FixDarwin_0002</key> <false/> <key>FixDisplay_0100</key> <false/> <key>FixFirewire_0800</key> <false/> <key>FixHDA_8000</key> <false/> <key>FixHPET_0010</key> <false/> <key>FixIDE_0200</key> <false/> <key>FixIPIC_0040</key> <false/> <key>FixLAN_2000</key> <false/> <key>FixRegions_10000000</key> <false/> <key>FixSATA_0400</key> <false/> <key>FixSBUS_0080</key> <false/> <key>FixShutdown_0004</key> <false/> <key>FixUSB_1000</key> <false/> <key>NewWay_80000000</key> <false/> </dict> <key>Name</key> <string>DSDT.aml</string> <key>Patches</key> <array> <dict> <key>Comment</key> <string>Rename HDAS to HDEF</string> <key>Find</key> <data> SERBUw== </data> <key>Replace</key> <data> SERFRg== </data> </dict> </array> <key>ReuseFFFF</key> <false/> </dict> <key>HaltEnabler</key> <false/> <key>SSDT</key> <dict> <key>DropOem</key> <false/> <key>Generate</key> <dict> <key>CStates</key> <false/> <key>PStates</key> <false/> </dict> </dict> </dict> <key>Boot</key> <dict> <key>Arguments</key> <string>dart=0</string> <key>DefaultVolume</key> <string>Sierra</string> <key>Legacy</key> <string>PBR</string> <key>Log</key> <true/> <key>Secure</key> <false/> <key>Timeout</key> <integer>3</integer> <key>XMPDetection</key> <string>NO</string> </dict> <key>Devices</key> <dict> <key>Audio</key> <dict> <key>Inject</key> <string>1</string> </dict> <key>FakeID</key> <dict> <key>ATI</key> <string>0x0</string> <key>IMEI</key> <string>0x0</string> <key>IntelGFX</key> <string>0x0</string> <key>LAN</key> <string>0x0</string> <key>NVidia</key> <string>0x0</string> <key>SATA</key> <string>0x0</string> <key>WIFI</key> <string>0x0</string> <key>XHCI</key> <string>0x0</string> </dict> <key>USB</key> <dict> <key>FixOwnership</key> <false/> <key>Inject</key> <false/> </dict> <key>UseIntelHDMI</key> <false/> </dict> <key>DisableDrivers</key> <array> <string>Nothing</string> </array> <key>GUI</key> <dict> <key>Hide</key> <array> <string>Windows</string> <string>\EFI\BOOT\BOOTX64.EFI</string> </array> <key>Language</key> <string>en:0</string> <key>Mouse</key> <dict> <key>Enabled</key> <true/> <key>Speed</key> <integer>8</integer> </dict> <key>Scan</key> <dict> <key>Entries</key> <true/> <key>Legacy</key> <string>First</string> <key>Tool</key> <true/> </dict> <key>ScreenResolution</key> <string>1920x1080</string> <key>Theme</key> <string>embedded</string> </dict> <key>Graphics</key> <dict> <key>Inject</key> <dict> <key>ATI</key> <false/> <key>Intel</key> <true/> <key>NVidia</key> <false/> </dict> </dict> <key>KernelAndKextPatches</key> <dict> <key>#FakeCPUID</key> <string>0x010676</string> <key>AppleRTC</key> <true/> <key>AsusAICPUPM</key> <true/> <key>KernelCpu</key> <false/> <key>KernelHaswellE</key> <false/> <key>KernelLapic</key> <false/> <key>KernelPm</key> <true/> <key>KextsToPatch</key> <array> <dict> <key>Comment</key> <string>t1-10.12-AppleHDA/Realtek ALC...</string> <key>Find</key> <data> ihnUEQ== </data> <key>Name</key> <string>AppleHDA</string> <key>Replace</key> <data> AAAAAA== </data> </dict> <dict> <key>Comment</key> <string>t1-10.9-10.12-AppleHDA/Realtek ALC1150</string> <key>Find</key> <data> ixnUEQ== </data> <key>Name</key> <string>AppleHDA</string> <key>Replace</key> <data> AAnsEA== </data> </dict> <dict> <key>Comment</key> <string>t1-AppleHDA/Resources/xml>zml</string> <key>Find</key> <data> eG1sLnps </data> <key>Name</key> <string>AppleHDA</string> <key>Replace</key> <data> em1sLnps </data> </dict> <dict> <key>Comment</key> <string>External icons patch</string> <key>Find</key> <data> RXh0ZXJuYWw= </data> <key>Name</key> <string>AppleAHCIPort</string> <key>Replace</key> <data> SW50ZXJuYWw= </data> </dict> </array> </dict> <key>RtVariables</key> <dict> <key>BooterConfig</key> <string>0x28</string> <key>CsrActiveConfig</key> <string>0x3</string> </dict> <key>SMBIOS</key> <dict> <key>BiosReleaseDate</key> <string>09/03/2013</string> <key>BiosVendor</key> <string>Apple Inc.</string> <key>BiosVersion</key> <string>IM142.88Z.0118.B00.1309031249</string> <key>Board-ID</key> <string>Mac-27ADBB7B4CEE8E61</string> <key>BoardManufacturer</key> <string>Apple Inc.</string> <key>BoardType</key> <integer>10</integer> <key>ChassisAssetTag</key> <string>iMac-Aluminum</string> <key>ChassisManufacturer</key> <string>Apple Inc.</string> <key>ChassisType</key> <string>13</string> <key>Family</key> <string>iMac</string> <key>Manufacturer</key> <string>Apple Inc.</string> <key>Mobile</key> <false/> <key>ProductName</key> <string>iMac14,2</string> <key>SerialNumber</key> <string>C02ND17MFLHH</string> <key>Trust</key> <false/> <key>Version</key> <string>1.0</string> </dict> <key>SystemParameters</key> <dict> <key>InjectKexts</key> <string>YES</string> <key>InjectSystemID</key> <true/> </dict> </dict> </plist> My recommendation: Follow the full class-code spoof/HackrNVMeFamily guide as linked from my patch-nvme README. Link to comment Share on other sites More sharing options...
krsw Posted May 31, 2017 Share Posted May 31, 2017 Okay, so I went back to the original post (not the readme on GitHub) and put in the class code to generate the AML file. It booted and recognized the drive and I was able to format it in Disk Utility. But when I cloned (CCC) it wouldn't boot to clover from the NVMe drive and I had to boot off the SATA drive (though I am able to boot to the NVMe drive using the SATA Clover). I also installed Clover to the NVMe drive and copied the SATA EFI to it. But whenever I try to boot off the NVMe drive it acts like there is no bootloader on it, asking me to insert Install Media. Any tips? Motherboard is GA-Z170X-UD3 Thanks for the help!! Link to comment Share on other sites More sharing options...
RehabMan Posted June 1, 2017 Share Posted June 1, 2017 Okay, so I went back to the original post (not the readme on GitHub) and put in the class code to generate the AML file. It booted and recognized the drive and I was able to format it in Disk Utility. But when I cloned (CCC) it wouldn't boot to clover from the NVMe drive and I had to boot off the SATA drive (though I am able to boot to the NVMe drive using the SATA Clover). I also installed Clover to the NVMe drive and copied the SATA EFI to it. But whenever I try to boot off the NVMe drive it acts like there is no bootloader on it, asking me to insert Install Media. Any tips? Motherboard is GA-Z170X-UD3 Thanks for the help!! Make sure you have the whole HackrNVMeFamily setup (config.plist settings, SSDT_NVMe-Pcc.aml, HackrNVMeFamily itself) on the EFI partition which you're booting Clover from. Also, if you installed FakeSMC.kext to the system volume (likely) and have config.plist/SystemParameters/InjectKexts=Detect (also likely), keep in mind that EFI/Clover/kexts is ignored... so HackrNVMeFamily must also be installed to the system volume (just like FakeSMC.kext). But it sounds somewhat like you neglected to install Clover to your NVMe drive... Link to comment Share on other sites More sharing options...
ivoryblade Posted June 1, 2017 Share Posted June 1, 2017 You cannot use HackrNVMeFamily during installation without doing the class-code spoof. And you should really check if the Plextor can be changed to 4k LBA (see link from patch-nvme README into this thread...) I'm trying to migrate my current hackintosh to nvme without installation. Link to comment Share on other sites More sharing options...
RehabMan Posted June 1, 2017 Share Posted June 1, 2017 I'm trying to migrate my current hackintosh to nvme without installation. Certainly possible. But you must configure your Clover correctly for the class-code spoof. Link to comment Share on other sites More sharing options...
nindustries Posted June 1, 2017 Share Posted June 1, 2017 So I went through the topic and I have to admit i'm a bit confused. Could someone sum up what is currently required to install macos the vanilla way on a Samsung 960 Pro NVMe drive? Thanks! Link to comment Share on other sites More sharing options...
tikizondo94 Posted June 1, 2017 Share Posted June 1, 2017 Just a general question. Im using a Corsiar MP500 250GB NVMe drive. I use the HackrNvmeFamily.kext in Clover/kexts/10.12 and also use the SSDT-NVMe-Pcc.aml in clover patched. All plist patches in kext to patch are removed and NVMe works flawless as internal as usual. "I dont use the _DSM-XDSM patch due to using a custom DSDT in clover patched" Anyways usual write and read speeds are 1239mb write and 2253read but from time to time my write speeds will fall all the way down to 200mb write speeds. And they will stay there for a minute or so. Then back up to normal speeds. Is this normal? Or is there something im doing wrong somewhere? CLOVER.zip Link to comment Share on other sites More sharing options...
Tobinejumi Posted June 1, 2017 Share Posted June 1, 2017 So I went through the topic and I have to admit i'm a bit confused. Could someone sum up what is currently required to install macos the vanilla way on a Samsung 960 Pro NVMe drive? Thanks! My way to do it: First install clover and system on sata HDD, boot in, patch NVMe, made it visible to disk utility and create partitions. Then install Clover on NVMe and copy clover EFI from sata HDD, also carbon copy system. Then boot from NVMe. Possibly it's not the most short way, but it works for me. Link to comment Share on other sites More sharing options...
RehabMan Posted June 1, 2017 Share Posted June 1, 2017 Just a general question. Im using a Corsiar MP500 250GB NVMe drive. I use the HackrNvmeFamily.kext in Clover/kexts/10.12 and also use the SSDT-NVMe-Pcc.aml in clover patched. All plist patches in kext to patch are removed and NVMe works flawless as internal as usual. "I dont use the _DSM-XDSM patch due to using a custom DSDT in clover patched" Anyways usual write and read speeds are 1239mb write and 2253read but from time to time my write speeds will fall all the way down to 200mb write speeds. And they will stay there for a minute or so. Then back up to normal speeds. Is this normal? Or is there something im doing wrong somewhere? Normal. Probably throttling due to heat issues, or just the SSD firmware catching up with requests. 1 Link to comment Share on other sites More sharing options...
tikizondo94 Posted June 1, 2017 Share Posted June 1, 2017 Awesome. Just wanted to make sure. All in all the process all works flawlessly. Many thanks for all your hard work on this process #RehabMan. Link to comment Share on other sites More sharing options...
krsw Posted June 1, 2017 Share Posted June 1, 2017 So I went through the topic and I have to admit i'm a bit confused. Could someone sum up what is currently required to install macos the vanilla way on a Samsung 960 Pro NVMe drive? Thanks! Hey I can share my aml file with you later today. Also thanks to Rehabman for his amazing support. I was able to get the nvme drive to UFI boot by doing a stand-alone clover install. Also ##### will mess things up and boot you to prohibitory so you should make a ##### installer and add the .aml to ACPI>Patch folder and Hackr kext to other kexts folder. From there I copied the ##### config. And am manually patching audio, graphics, etc. Everything #### is from the site that shall not be named /politics. 1 Link to comment Share on other sites More sharing options...
prodbyhypnotist Posted June 1, 2017 Share Posted June 1, 2017 i FINALLY!! got the plextor drive to show up.. big thanks to dimitry! but i have a question is it worth keeping or should i return it??? if i update in the future is this going to be really hard to get working again ect?? should i just get a normal m2? Link to comment Share on other sites More sharing options...
Passmore Posted June 2, 2017 Share Posted June 2, 2017 Hey, Can anyone confirm whether the Samsung 960 pro is formattable with 4K sectors? I've heard that my current drive (950 pro) is not, but I'm extremely interested by this native ionvmefamily approach. 1 Link to comment Share on other sites More sharing options...
Tobinejumi Posted June 2, 2017 Share Posted June 2, 2017 Can anyone confirm whether the Samsung 960 pro is formattable with 4K sectors? I've heard that my current drive (950 pro) is not, but I'm extremely interested by this native ionvmefamily approach. I does not seen such option when mounted it under linux. Link to comment Share on other sites More sharing options...
golosin2 Posted June 2, 2017 Share Posted June 2, 2017 Just an update. I have a WD-Black NVMe drive which is (in theory) capable of being formatted in 4Kb sector. But I can't do it, as I get a permission denied error. I have opened a ticket to WD and waiting for their response. As soon as I get their feedback, I will let you know. In the meantime, it works under MacOS. I just edited config.plist with the code lines, no need to use the hack. I don't understand why, but it's working. Link to comment Share on other sites More sharing options...
RehabMan Posted June 2, 2017 Share Posted June 2, 2017 In the meantime, it works under MacOS. I just edited config.plist with the code lines, no need to use the hack. I don't understand why, but it's working. KextsToPatch is effective. But a bit dangerous... First, you have to be certain you have the correct patches for the version of IONVMeFamily you have. And in the case of an update, you must be sure you have both the set of patches for the current version as well as the updated version, selected via MatchOS or MatchBuild. It can get tricky. 1 Link to comment Share on other sites More sharing options...
golosin2 Posted June 2, 2017 Share Posted June 2, 2017 KextsToPatch is effective. But a bit dangerous... First, you have to be certain you have the correct patches for the version of IONVMeFamily you have. And in the case of an update, you must be sure you have both the set of patches for the current version as well as the updated version, selected via MatchOS or MatchBuild. It can get tricky. Yep! I know. Fingers crossed in every update (and a backup, of course). Link to comment Share on other sites More sharing options...
RehabMan Posted June 2, 2017 Share Posted June 2, 2017 Yep! I know. Fingers crossed in every update (and a backup, of course). If you are to use KextsToPatch, crossed fingers will not help. My suggestion: - wait for new patches to be confirmed before updating - once they are, enter them in your config.plist with the appropriate MatchBuild or MatchOS specification - make sure old patches are marked with the appropriate MatchBuild or MatchOS specification The class-code spoof an HackrNVMeFamily is simpler... once setup... Link to comment Share on other sites More sharing options...
prodbyhypnotist Posted June 2, 2017 Share Posted June 2, 2017 is the nvme risky though if i update?? like am i going to update and my drive doesnt even show up anymore at some point? Link to comment Share on other sites More sharing options...
golosin2 Posted June 3, 2017 Share Posted June 3, 2017 If you are to use KextsToPatch, crossed fingers will not help. My suggestion: - wait for new patches to be confirmed before updating - once they are, enter them in your config.plist with the appropriate MatchBuild or MatchOS specification - make sure old patches are marked with the appropriate MatchBuild or MatchOS specification The class-code spoof an HackrNVMeFamily is simpler... once setup... I know HackrNVMeFamily is simpler, but I cannot do it. I just follow the instructions and doesn't work for me. Link to comment Share on other sites More sharing options...
Tobinejumi Posted June 5, 2017 Share Posted June 5, 2017 - I run the RehabMan NVME script and make my HackrNVMeFamily.kext for 10.12.0 with the --spoof thing. Do you follow all steps from guide, including SSDT patch? Link to comment Share on other sites More sharing options...
d-one Posted June 5, 2017 Share Posted June 5, 2017 Do you follow all steps from guide, including SSDT patch? I guess that might be my mistake then, no. I fallowed the ReadMe and i don't see anything about a SSDT patch, can you point me int he right direction please? Sorry I'm noob at this. Link to comment Share on other sites More sharing options...
Tobinejumi Posted June 5, 2017 Share Posted June 5, 2017 I guess that might be my mistake then, no. I fallowed the ReadMe and i don't see anything about a SSDT patch, can you point me int he right direction please? Sorry I'm noob at this. If you read this readme, it contain some links: 10.12 UPDATEBy tricking the system, we can prevent IONVMeFamily.kext from loading. It involves injecting a fake "class-code" such that the IOPCIClassMatch in IONVMeFamily's Info.plist no longer matches. With this technique, HackrNVMeFamily and IONVMeFamily can co-exist. Applies to installation scenarios and to post-install. See here for further details: http://www.insanelymac.com/forum/topic/312803-patch-for-using-nvme-under-macos-sierra-is-ready/page-29?do=findComment&comment=2322636 Or here: https://www.tonymacx86.com/threads/guide-hackrnvmefamily-co-existence-with-ionvmefamily-using-class-code-spoof.210316/ 1 Link to comment Share on other sites More sharing options...
mkuzminov Posted June 5, 2017 Share Posted June 5, 2017 Hey, Can anyone confirm whether the Samsung 960 pro is formattable with 4K sectors? I've heard that my current drive (950 pro) is not, but I'm extremely interested by this native ionvmefamily approach. Samsung 960 EVO not support 4K sector PS With patches works fine. mkuzminov@debian:~$ sudo smartctl -a /dev/nvme0 <<skip>> Supported LBA Sizes (NSID 0x1) Id Fmt Data Metadt Rel_Perf 0 + 512 0 0 <<skip>> Link to comment Share on other sites More sharing options...
Matthew82 Posted June 9, 2017 Share Posted June 9, 2017 In 10.13 for Plextor only need this patch: <dict> <key>Comment</key> <string>IONVMeFamily Preferred Block Size 0x10 -> 0x01 (c) Pike R. Alpha</string> <key>Disabled</key> <false/> <key>Find</key> <data> 9sEQD4VBAQAA </data> <key>Name</key> <string>IONVMeFamily</string> <key>Replace</key> <data> 9sEBD4UcAQAA </data> </dict> <dict> <key>Comment</key> <string>external Icon</string> <key>Disabled</key> <false/> <key>Find</key> <data> SIXAdAeAiyA= </data> <key>Name</key> <string>IONVMeFamily</string> <key>Replace</key> <data> SIXAZpCAiyA= </data> </dict> 2 Link to comment Share on other sites More sharing options...
Recommended Posts