Contribute
Register

OS X Driver for NVMe M.2 Solid State Drives Released

Status
Not open for further replies.
I installed a Patriot Hellfire using a pci x4 gen 3 card, and by making a kext with the piker script and deleting IONVME. It works, but the speeds are somewhat lower than they should be. They are 2000/1300 read write, when it should be 2,700/1600. What could it be?
 
Hello Guys, I'm fairly new to hackintoshing and have one running fine (i7 6700k, GA-z170x-UD3, MSI Radeon rx480x gaming 8gb, samsung 850 evo SSD). It runs just fine.

Now for better RW speeds, I've bought an m.2 SSD: Samsung 960 Evo 500gb. But I've a lot of trouble getting it to work. I must say that I havent read all 86 pages of this thread and am new to this. When I just inserted the m.2 it was recognised in the bios but the bios had a lot of freezes. Then I did this guide: https://www.tonymacx86.com/threads/...-gigabyte-gtx-950.181272/page-53#post-1283085

So I downloaded the patch-nvme-master and ran the command lines using 10_12_3
I've mounted my USB Installer drive EFI via clover configurator and in EFI/EFI/CLOVER/Kexts there was only a folder named "Other". So I created a folder named: 10.12 and moved the patched kext file there. and shut down.

I disconnect my 850EVO and connected the 960evo m.2. I got in clover and when I select to boot from usb im getting a kernel panic

Any suggestions?
 

Attachments

  • IMG_0858.JPG.jpeg
    IMG_0858.JPG.jpeg
    1.2 MB · Views: 115
Last edited:
Hello Guys, I'm fairly new to hackintoshing and have one running fine (i7 6700k, GA-z170x-UD3, MSI Radeon rx480x gaming 8gb, samsung 850 evo SSD). It runs just fine.

Now for better RW speeds, I've bought an m.2 SSD: Samsung 960 Evo 500gb. But I've a lot of trouble getting it to work. I must say that I havent read all 86 pages of this thread and am new to this. When I just inserted the m.2 it was recognised in the bios but the bios had a lot of freezes. Then I did this guide: https://www.tonymacx86.com/threads/...-gigabyte-gtx-950.181272/page-53#post-1283085

So I downloaded the patch-nvme-master and ran the command lines using 10_12_3
I've mounted my USB Installer drive EFI via clover configurator and in EFI/EFI/CLOVER/Kexts there was only a folder named "Other". So I created a folder named: 10.12 and moved the patched kext file there. and shut down.

I disconnect my 850EVO and connected the 960evo m.2. I got in clover and when I select to boot from usb im getting a kernel panic

Any suggestions?

https://www.tonymacx86.com/threads/...h-ionvmefamily-using-class-code-spoof.210316/
 
Ive seen that post, but it clearly states that you should have a windows os installed, which i have not. So im guessing i cannot use this method

Two choices:
- install Windows temporarily
OR
- install OS X first and determine path via ioreg
 
Two choices:
- install Windows temporarily
OR
- install OS X first and determine path via ioreg

Well I'm planning on making a dual boot with win10 later on (on a separate SATA SSD, not on the m.2). But Id like to have OSX running first. I actually have a 10.12.3 installed on my hackintosh (clean install), could you explain to where/how to find the correct path in IOreg?

Second question, last night I was googling a bit on this subject and found this site: https://pikeralpha.wordpress.com/2016/08/02/ionvmefamily-kext-changes-in-sierra-dp4-build-16a270f/
I've mounted my system EFI and opened the config.plist (ofc made a backup first) and pasted the code from the link above in the kernelandkextpatches section from <key>KextsToPatch</key> (removed what was in there and pasted this code) to </array>.

After a reboot I can see my NVME drive in disk utility, formatted it and it works now every time I boot up. I was planning on making the same adjustments for my config.plist on my USB installer drive and then trying to boot from the USB to format my SATA SSD and make a clean install on the nvme SSD. MY question is, is this going to work and is it smart to do? Or do you advice against it and why?

Thanks for the help, I really appreciate it!
I'm really new to hackintoshing and struggled a lot to get my rx480 to work, getting the nvme to work properly feels like the next "Mount Everest".


EDIT
Ive been searching in ioreg and forums, is this the "page" I need?
Am I correct that my ACPI path is: _SB.PCI0.RP13.PXSX ?
And is my class code: <02 08 01 00> ?

Now Im following the guide you provided step by step, when in MaciACL, I assume I should do file> new and paste the code there? Since my acpi path is the same is in the example I won't change it. Ive compiled without errors and saved the file correctly. And put it on my USB Efi/ACPI/Patches

Then I did the https://github.com/RehabMan/patch-nvme
And spoofed with 10_12_3 because thats the version of my installer.

When I boot from USB (with both my SSD's connected, SSD1: SATA (has OSX installed) and SSD2: m.2 NVMe (nothing installed)) I'm getting the apple logo with a very slow loading bar, at about 80% it stops and I can see a spinning beachball mouse.
When I disconnect my SATA SSD with OSX installed and boot again im getting in the installer fine.
Now im guessing I can install OSX on my m.2 NVMe drive with the SATA drive disconnected, after it finishes I can shut down, connect SATA drive and select M.2 NVMe drive to boot and then erase my SATA drive?
 

Attachments

  • Screen Shot 2017-02-05 at 10.57.00.png
    Screen Shot 2017-02-05 at 10.57.00.png
    286.9 KB · Views: 147
Last edited:
Am I correct that my ACPI path is: _SB.PCI0.RP13.PXSX ?


It is hard to read the image you provided (cannot make out the leaf node, but PXSX is very common).
If that node is PXSX, then yes, you have the correct path.

And is my class code: <02 08 01 00> ?

That is standard class-code for all NVMe devices.

Then I did the https://github.com/RehabMan/patch-nvme
And spoofed with 10_12_3 because thats the version of my installer.

Make sure the md5 matches. Must be running the patch_nvme.sh script on the same version you're trying to patch for.

When I boot from USB (with both my SSD's connected, SSD1: SATA (has OSX installed) and SSD2: m.2 NVMe (nothing installed)) I'm getting the apple logo with a very slow loading bar, at about 80% it stops and I can see a spinning beachball mouse.

NVMe issues will not stop booting from USB.
You likely have some other problem.

When I disconnect my SATA SSD with OSX installed and boot again im getting in the installer fine.

Possibly incorrect SATA configuration... I would have to see your EFI/Clover for any guesses.
 
It is hard to read the image you provided (cannot make out the leaf node, but PXSX is very common).
If that node is PXSX, then yes, you have the correct path.



That is standard class-code for all NVMe devices.



Make sure the md5 matches. Must be running the patch_nvme.sh script on the same version you're trying to patch for.



NVMe issues will not stop booting from USB.
You likely have some other problem.



Possibly incorrect SATA configuration... I would have to see your EFI/Clover for any guesses.

Yes it is PXSX and yes the md5 matches.
With my SATA SSD disconnected I could perfectly install Sierra on the m.2 NVMe SSD. I put my SSDT-NVMe-Pcc and the HackrNVMeFamily-10_12_3.kext on the USB Installer Efi (in the correct folders). So I was in Sierra, ran multibeast to install audio/network drivers and went to reboot.. On reboot (with still only the nvme ssd connected) I saw the apple logo with loading bar which changed into a stop sign. I havent been able to boot back in to it. Should I've done anything before rebooting? Because I only pasted the SSDT-NVMe-Pcc and the HackrNVMeFamily-10_12_3.kext on the USB installer EFI and did nothing with the SSD EFI.

I reconnected my SATA SSD with OSX installed on it and that boots normally, BUT I don't see my 960 drive anymore in finder/disk utility (figured I could just erase it and try again). I tried to paste the SSDT-NVMe-Pcc and the HackrNVMeFamily-10_12_3.kext on my SSD Efi/clover to get it to recognise the m.2 nvme but it doesn't.. It's also disappeared from IOreg with a search for "storage", only my SATA ssd shows up. So I can't send you my clover I guess.

Any tips?
 
I was in Sierra, ran MultiBeast to install audio/network drivers and went to reboot.. On reboot (with still only the nvme ssd connected) I saw the apple logo with loading bar which changed into a stop sign.

You made a mistake. MultiBeast installs FakeSMC.kext to the system volume. With FakeSMC.kext installed and config.plist/SystemParameters/InjectKexts=Detect, kexts in EFI/Clover/kexts are ignored. If you failed to install HackrNVMeFamily.kext to the system volume, the NVMe device will not work and you will not be able to boot.

Also, you will need to configure Clover on the SSD EFI as you did for USB. You will need the SSDT-NVMe-Pcc.aml in ACPI/patched if you expect to boot from that EFI/Clover.
 
You made a mistake. MultiBeast installs FakeSMC.kext to the system volume. With FakeSMC.kext installed and config.plist/SystemParameters/InjectKexts=Detect, kexts in EFI/Clover/kexts are ignored. If you failed to install HackrNVMeFamily.kext to the system volume, the NVMe device will not work and you will not be able to boot.

Also, you will need to configure Clover on the SSD EFI as you did for USB. You will need the SSDT-NVMe-Pcc.aml in ACPI/patched if you expect to boot from that EFI/Clover.

OK I understand.. the thing is, I can't get into my NVMe M.2 SSD anymore.. I can't boot from it because ill see the stop sign, and I can't get it to be recognized via my OS X on my SATA SSD. When I boot from USB when there is a SSD connected with an OSX installed the USB won't boot, it will freeze at the apple logo with about 80%.

So im curious how I can reach my NVMe M.2 SSD to format it and try again..

Sorry for my (maybe) stupid questions, but I'm new to this. Thanks for all the help though!
 
Last edited:
Status
Not open for further replies.
Back
Top