Contribute
Register

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

Status
Not open for further replies.
Joined
Jan 27, 2017
Messages
29
Motherboard
Gigabyte GA-Z170X-UD3
CPU
i7 6700k
Graphics
MSI Radeon RX 480 Gaming X 8G & Intel HD
With any change, you must provide new files. I cannot guess about what you're actually doing.

Attached is a new zip of my clover, as it is right now. And a photo of verbose when I try to boot without USB inserted.

This implies that you didn't install a correct HackrNVMeFamily to the system volume.
What I did:
download folder from: https://github.com/RehabMan/patch-nvme (checked if it has correct name in /downloads)
Made a copy
Run these commands:
cd ~/Downloads/patch-nvme-master
./patch_nvme.sh --spoof 10_12_3

Opend Kext wizard, dragged the created kext to installation tab to /s/l/e and pressed install. After that repair permissions.
Checked if it was in /s/l/e/ and it was.

Your profile indicates no IGPU.
What do you meen? My profile on Tonymac? Or some kind of file in my clover? Reason why im using my mobo for graphics atm is because I have a rx480 card which isn't natively supported, I know how to "activate/accelerate/cu" it, but I can only do this after the nvme SSD is successfully running.

VGA not supported.
Changed my cable to DVI from motherboard to monitor, nothing changed (only the resolution).
 

Attachments

  • CLOVER.zip
    1.6 MB · Views: 85
  • IMG_0870.JPG.jpeg
    IMG_0870.JPG.jpeg
    1.1 MB · Views: 111
Joined
Jan 27, 2017
Messages
29
Motherboard
Gigabyte GA-Z170X-UD3
CPU
i7 6700k
Graphics
MSI Radeon RX 480 Gaming X 8G & Intel HD
Ok, I've tried a fresh installation. I made sure to follow the guide to the letter.

- Created the SSDT-NVMe-Pcc.aml on my macbook pro and copied it to usb installer clover/acpi/patched (attached)
- Created the HackrNVMeFamily-10_12_3.kext on my MacBook Pro (running 10.12.3) and copied it to usb installer clover/kexts/patched. While creating the kext, terminal outputted: MD5 matches expected MD5 entry - for vanilla and patched. (attached)
- Did the _DSM->XDSM patch: Opened the config.plist of my usb installer in text edit and added the patch key from your GitHub config_patches.plist to the /ACPI/DSDT/Patches (attached)

Put USB in hackintosh, turned on, in clover select USB, pressed space, forced inject kexts and booted in installer.
Formatted nvme SSD and installed Sierra.

- In Sierra I launched Multibeast and only installed Clover UEFI bootloader.
- Mounted USB efi and copied SSDT-NVMe-Pcc.aml and HackrNVMeFamily-10_12_3.kext to my desktop
- Opened the config.plist (of usb efi) in text editor and copied the _DSM to XDSM part, pasted it in empty text editor file for later
- Mounted NVME efi
- Pasted SSDT-NVMe-Pcc.aml to nvme efi/clover/acpi/patched
- Pasted HackrNVMeFamily-10_12_3.kext to nvme efi/clover/kexts/other
- Opened nvme efi config.plist (first made backup ofc) and pasted the _DSM to XDSM patches in the same place as before. And saved
- opened the nvme config.plist in clover configurator to check if the patches where in the acpi tab, and they were. Closed clover configurator.

Then, when I tried to drag the HackrNVMeFamily-10_12_3.kext to /s/l/e I got an error:
"System extension cannot be used
The system extension "/System/Library/Extensions/HackrNVMeFamily-10_12_3.kext" was installed improperly and cannot be used. Please try reinstalling it, or contact the product's vendor for an update."

So I removed the HackrNVMeFamily-10_12_3.kext from /s/l/e and ran kext wizard to repair permissions and rebuild cache.
When I drag the HackrNVMeFamily-10_12_3.kext to kext wizard installation tab and press instal I don't get an error.
Repaired permissions and rebuild cache afterwards.

Now my hackintosh is still turned on, havent rebooted yet. Wanted to check first if this is all done correctly. Ive also attached a clover.zip of my nvme ssd efi.

Does this mean my HackrNVMeFamily-10_12_3.kext is bad? Or was the installation method just not good?
Am I safe to restart now? With or without the installer usb inserted? Did I miss any step or made any errors?
 

Attachments

  • HackrNVMeFamily-10_12_3.kext.zip
    89.9 KB · Views: 85
  • SSDT-NVMe-Pcc.aml
    134 bytes · Views: 158
  • config.plist
    5.2 KB · Views: 190
  • nvme SSD efi CLOVER.zip
    1.6 MB · Views: 89

RehabMan

Moderator
Joined
May 2, 2012
Messages
183,805
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
- Created the HackrNVMeFamily-10_12_3.kext on my MacBook Pro (running 10.12.3) and copied it to usb installer clover/kexts/patched.

Wrong. The kext must be placed at Clover/kexts/Other. Clover does not read anything from Clover/kexts/patched.

- In Sierra I launched MultiBeast and only installed Clover UEFI bootloader.

I don't use MultiBeast, but it may be that any option in MultiBeast will result in FakeSMC.kext being installed...
Or maybe not.
If not, you will need to place FakeSMC.kext in EFI/Clover/kexts/Other.
If it is, you will need to install HackrNVMeFamily correctly to the system volume.

Then, when I tried to drag the HackrNVMeFamily-10_12_3.kext to /s/l/e I got an error:
"System extension cannot be used
The system extension "/System/Library/Extensions/HackrNVMeFamily-10_12_3.kext" was installed improperly and cannot be used. Please try reinstalling it, or contact the product's vendor for an update."

You cannot install kexts with Finder.

So I removed the HackrNVMeFamily-10_12_3.kext from /s/l/e and ran kext wizard to repair permissions and rebuild cache.

Don't use Kext Wizard to rebuild cache... you will get no status as to success or failure.
Use Terminal:
Code:
sudo kextcache -i /

Repaired permissions and rebuild cache afterwards.

No need to repair permissions from Kext Wizard. Use Terminal for rebuild cache (see above).

Am I safe to restart now? With or without the installer usb inserted? Did I miss any step or made any errors?

Hard to know without seeing kextcache output.
 

RehabMan

Moderator
Joined
May 2, 2012
Messages
183,805
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
What do you meen? My profile on Tonymac?

Yes... your profile reads:
Graphics: MSI Radeon RX 480 Gaming X 8G

There is no indication you have Intel HD.
 
Joined
Jan 27, 2017
Messages
29
Motherboard
Gigabyte GA-Z170X-UD3
CPU
i7 6700k
Graphics
MSI Radeon RX 480 Gaming X 8G & Intel HD
Wrong. The kext must be placed at Clover/kexts/Other. Clover does not read anything from Clover/kexts/patched.
My bad, I did the copy right, just typed it here wrong. It is indeed in clover/kexts/other.

I don't use MultiBeast, but it may be that any option in Multibeast will result in FakeSMC.kext being installed...
Or maybe not.
If not, you will need to place FakeSMC.kext in EFI/Clover/kexts/Other.
If it is, you will need to install HackrNVMeFamily correctly to the system volume.

I guess I didn't install any FakeSMC.kext. On my nvme efi there is no FakeSMC in efi/clover/kexts/other nor is there in /s/l/e or /l/e. Not sure if I do need a FakeSMC.kext or not. If so, should it be in nvme efi/clover/kexts/other if I understand correctly?
Will this one do? https://www.tonymacx86.com/resources/fakesmc.325/

Hard to know without seeing kextcache output.
I ran the terminal command and got the following (I have no idea what it means):

kext-dev-mode allowing invalid signature -67030 0xFFFFFFFFFFFEFA2A for kext HackrNVMeFamily-10_12_3.kext
KernelCache ID: 1C7CB96194D776CB11E0D896525C0A32
symlink("/System/Library/PrelinkedKernels/prelinkedkernel", "/System/Library/Caches/com.apple.kext.caches/Startup/kernelcache") failed 17 (File exists) <createPrelinkedKernel 2795>
 
Last edited:

RehabMan

Moderator
Joined
May 2, 2012
Messages
183,805
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
My bad, I did the copy right, just typed it here wrong. It is indeed in clover/kexts/other.



I guess I didn't install any FakeSMC.kext. On my nvme efi there is no FakeSMC in efi/clover/kexts/other nor is there in /s/l/e or /l/e. Not sure if I do need a FakeSMC.kext or not. If so, should it be in nvme efi/clover/kexts/other if I understand correctly?
Will this one do? https://www.tonymacx86.com/resources/fakesmc.325/


I ran the terminal command and got the following (I have no idea what it means):

kext-dev-mode allowing invalid signature -67030 0xFFFFFFFFFFFEFA2A for kext HackrNVMeFamily-10_12_3.kext
KernelCache ID: 1C7CB96194D776CB11E0D896525C0A32
symlink("/System/Library/PrelinkedKernels/prelinkedkernel", "/System/Library/Caches/com.apple.kext.caches/Startup/kernelcache") failed 17 (File exists) <createPrelinkedKernel 2795>

FakeSMC.kext is required.
 

RehabMan

Moderator
Joined
May 2, 2012
Messages
183,805
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
Joined
Jan 27, 2017
Messages
29
Motherboard
Gigabyte GA-Z170X-UD3
CPU
i7 6700k
Graphics
MSI Radeon RX 480 Gaming X 8G & Intel HD
Installed the fakeSMC.kext via kext wizard as wel, and cleared cache afterwards via terminal. So now I have both the FakeSMC.kext and the HackrNVMeFamily-10_12_3.kext in my NVMe efi/clover/kexts/other and on /s/l/e. Is this ok, or should I remove them from my efi/clover/kexts/other?

Rebooted twice now and it worked both times!! When I press reboot it takes a long time for the system to "boot down", and when it reboots, the loading bar with apple logo takes some time aswel. Is this normal?

Thanks for all the help RehabMan and putting up with all the mistakes/questions. I really appreciate you putting your time into helping me!

Ill be installing the rest of my drivers via multibeast (is there anything I should avoid, regarding im using an nvme drive?) and activating my rx480. Ill let you know when im all done :)
 

RehabMan

Moderator
Joined
May 2, 2012
Messages
183,805
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
Installed the fakeSMC.kext via kext wizard as wel, and cleared cache afterwards via terminal. So now I have both the FakeSMC.kext and the HackrNVMeFamily-10_12_3.kext in my NVMe efi/clover/kexts/other and on /s/l/e. Is this ok, or should I remove them from my efi/clover/kexts/other?

Correct procedure:
- all kexts you need installed to the system volume
- "essential" kexts in EFI/Clover/kexts/Other

Both FakeSMC.kext and HackrNVMeFamily are considered "essential" (you cannot boot without them). So it would be correct to have them in both places.

Rebooted twice now and it worked both times!! When I press reboot it takes a long time for the system to "boot down", and when it reboots, the loading bar with apple logo takes some time aswel. Is this normal?

You probably have a lot more work to do (eg. proper graphics setup, CPU power management, IGPU power management, etc).
 
Status
Not open for further replies.
Top