Jump to content

Add NVME Express driver to UEFI boot possible?


davidm71
 Share

9 posts in this topic

Recommended Posts

Hi,

 

I am trying to get my intel 750 ssd windows partition to boot via clover but have only been able to acomplish this on a usb key. My main Capitan SSD that I would like to use apparently has a different structure with an efi folder and the NVME Express driver is suppose to go in the driver64 folder only so doesn't get called. Anyone know how to get it working?

 

Thanks

Link to comment
Share on other sites

Well, if there is no NVMe driver loaded at the time, how would UEFI load Clover? I guess what you are facing is quite obvious.

You can convert the NvmExpress EFI to an FSS via GenFfs from the EDK2 base tools, insert it into your ROM with either UEFITool or MMTool and flash that. And no, there is no other option if you want to use no other drive but your NVME SSD.

Link to comment
Share on other sites

Thing is I'm trying to get an Intel 750 nvme drive working on an older Z68 Deluxe Asus board. I've been able to insert the three nvme modules nvme, nvmesmm, and nvmeint13 into my bios with mmtool such that the bios recognizes the drive but just can't boot from it because of an incomplete Uefi implementation or something unless I use clover with the nvme express driver loaded on a USB key. Didn't know you could use the clover driver in bios. Will that make it so Clover won't be neccessary? Chance of bricking? I'll try to convert it and see what happens. Thanks.

Link to comment
Share on other sites

The Clover driver should be the one shipping with EDK2, but I'm not sure. I'm also not sure why a device driver that should only be used at boot time needs a SMM driver as well. I trust TianoCore more than the AMI or OEM junk anyway. ;)

And of course there is always a chance of bricking, but if you want to be sure and have a 'feeling' of how it will be with the driver flashed, remove the NVMe drivers from your fw, move Clover's to the root of the ESP of a NON-NVMe drive (USB, HDD or whatever), run 'ls fsX:' - replacing X with a number starting at 0 - till you found the correct volume and finally enter: bcfg driver add 1 NvmExpress.efi "NvmExpress"

Now the NVMe driver will load automatically on every boot and it will be pretty much like you flashed it, just that it's on a disconnectable storage. If it works for a few tries/hours/days, you can convert to ffs and flash. And yes, you really need to remove the drivers from your fw because otherwise they will connect rather than the one you added with bcfg.

Link to comment
Share on other sites

Well I was able to figure out the right command line options to convert the nvme express driver into an ffs. Then placed it into my bios with mmtool and was able to use clover to load up the windows install on the Intel 750 drive. If only I could figure out how to hack it so the bios would load the boot menu drive option instead of stalling out..

 

Thanks.

Link to comment
Share on other sites

  • 2 weeks later...

Just downloaded and tested the brilliant new driver for NVME m.2 x 4 PCIe from MacVidCards.com Checkit it out!


http://www.macvidcards.com/nvme-driver1.html


Here's their FAQ

FAQ:

Q: Is this a signed driver?
A: Yes. 

Q: What version of OS X does this driver support? 
A: 10.11

Q: Where should I install this driver?
A: /Library/Extensions – Note that the owner and group for the entire kext MUST be set to root:wheel 

Q: How do I set owner and group?
A: sudo chown –R 0:0 NVMeGeneric.kext

Q: What devices have you tested this with? 
A: Intel P3700 series, Samsung SM1715 and SM951 series

Q: Can I boot from an NVMe drive?
A: No, not until someone writes a standards compliant EFI driver for the Macintosh.

Q: Doesn’t Apple supply NVMe drivers and EFI boot ROMs for their new machines? 
A: Apple chose to make their NVMe devices and drivers non-compliant with the NVMe standard. Why they use the NVMe name for a non-compliant device and driver is a mystery.

Q: Can I use this to support an NVMe device in an external ThunderBolt enclosure like the Akitio?
A: Yes.

Q: Does this driver support hot-plug for ThunderBolt configurations?
A: yes, however it does not support hot “un-plug”. If you unplug a ThunderBolt connected NVMe device crashes may occur. Caveat Emptor!

Q: Will NVMe devices speed up my system? 
A: Maybe. It depends on your configuration and usage.

Q: What affects performance?
A: Device characteristics, hardware configuration, operating system design, and driver architecture. In particular OS X does not support MSI-X and forces CPU0 to handle all interrupts – although the workloop can distribute some of the load. Also, OS X caches heavily and does not provide a true DIRECT_IO equivalent; the combination of these factors makes many OS X benchmarks very bad at characterizing device performance – particularly so with small I/O and very fast devices.

Q: Is this safe to use?
A: Define safe… NVMe devices are just PCIe cards, and are fully electrically compatible with any system with PCIe slots. Could there be bugs in the software that cause data loss or crashes? Absolutely – but I have not encountered them.

Q: Why does my system report still say: “This computer doesn't contain any NVMExpress devices”?
A: Because system report uses Apple’s non-compliant NVMe kext infrastructure. Look under the PCI devices and you will see your NVMe device and it will indicate that the driver has been installed.

Q: What is nvme-cli?
A: This is a command line utility to issue NVMe management commands – if you don’t know what that means you can safely ignore this utility. This utility lets you define multiple namespaces on your NVMe device, as well as letting you query log pages and SMART data.

Q: Who/what is MinnowStor? What do they make and why did they create this?
A: MinnowStor is a startup that has not come out of “Stealth mode”.

Q: Will an NVMe device cause my Classic Mac Pro to overheat our wear out sooner?
A: I will break my own rule about answering only coherent, intelligent questions. It is amazing that “armchair engineers” think the cMP has poor thermal engineering – it is an extremely well designed unit. There is the assertion that the cooling is poor due to high idle temperatures on the northbridge – this is totally by design! Apple likes quiet machines… so they keep the fans low and allow chips to reach temperatures that, while safe, are markedly higher than cheap PC designs [note: this trend continues with the new iMacs and MacPros]. If this bothers you use SMC and kick the fans up a notch – with the fan speed increased my northbridge idles at 47C – much lower than the so-called “well engineered PCs”. You can overheat your northbridge – if you have broken heatsink clips, failed thermal paste, or have a huge build up of dust inside your machine.

Q: What about all the conflicting information and opinions on the internet?
A: Consider the source. There are no editors or fact checkers on the internet.

  • Like 1
Link to comment
Share on other sites

Just wanted to update this thread that I indeed had success converting the nvme express 64 clover driver to an efi driver using the GenFfs edk2 utilities and inserting it into my rom with mmtool. Now I can on an old P8Z68 board boot straight into the efi Windows gpt partition! Thanks to the clover guys for their help!

 

Makes me wonder if osx could be booted into now when the driver is integrated with the Ami bios?

Link to comment
Share on other sites

 Share

×
×
  • Create New...