[HowTo] Get full NVMe Support for all Systems with an AMI UEFI BIOS

@Fernando ,
I agree that the main “NVME” module is mandatory to be able to boot off an NVMe SSD (if you remove it, boot off is not possible (at least for Samsung NVMe products)).
But what are the exact functions of the two others modules (NVMEINT13 and NVMESMM) ?
Are they used also when boot off ?
Are they used also or only after boot off ?

May be only ASUS knows that and this is a pure ‘proprietary’ solution to offer a BIOS Aptio V NVMe compliant.

Does ASROCK BIOS NVMe functionality splitted into several modules ?

AFAIK all BIOSes with native NVMe support do contain these additional NVMe modules.

CodeRush knows their exact function much better than me, but I suspect, that these additional modules are necessary for a complete integration of the NVMe Controllers into the System BIOS modules.

As written above, all mainboard manufacturers put these 3 NVMe modules into the BIOSes with full NVMe support.
On the other hand I think, that it doesn’t make much sense to insert these 2 additional NVMe modules into a BIOS, which natively doesn’t support NVMe, because the related System BIOS modules do not contain the related informations about how to use them. That may be the reason why the NVMe Controller and the connected Disk Drives are not resp. not correctly shown by entering the BIOS (no matter, whether you insert just the "real" NVMe module or all 3 NVMe related ones).

@Fernando ,
Many thanks for the clear status about NVMe BIOS modules.

Please can you confirm me that any ‘extracted’ native NVMe BIOS module of BIOS Aptio V (modern) can be ‘inserted’ within a non-native NVMe BIOS Aptio IV (ancient) without any compatibility ‘format’ or ‘structure’ problem ?

According to many users reports and my own experience I don’t expect any severe problems, if such natively Aptio V modules are inserted into an Aptio IV BIOS (provided, that the GUID of the modules is different from those, which are already within the BIOS).

@Fernando ,
Thanks again for this confirmation about Aptio IV vs Aptio V.
You said all mboard manufacturers does include these 3 NVMe modules in their "native" NVMe BIOS.
Do you confirm all of these manufacturers do use 3 identical NVMe modules and so these 3 NVMe modules are "universal" and can be considered as a "standard" ?
No NVMe modules variant depending of NVMe "standard" version compliance (v1.1, v1.2, etc…) ?

No, AFAIK the GUID header and the body code of the 3 NVMe modules are (slightly) different, even if you compare different Aptio V BIOSes from the same manufacturer.
Why do you ask all these questions? What is your intention to do?

@Fernando ,
All these questions because there are now more and more different NVMe SSDs solutions available on the market.
If I plan to use a new one I have now the certitude that boot off may be work or may be will not work.

@ all users of my guide (within the start post):
My main questions are:
1. Is the new NVMe module better than the older one? Does it support more (newer) NVMe SSDs?
2. If yes, shall I remove the links to the older NVMe module?

@Fernando ,
Personally, my vote is the new (version 2) which does offer MORE NVMe SSDs supported bootable.
So, I see no interest to keep the links to the older NVMe version.

Hello!
Sorry if my english be rude im some places, but:
Im have a ASUS z97-K motherboard, which (according to specifications on the official site and manuals) should get nvme SSD without any problem, moreover since last BIOS update im have a NVME option in UEFI menu, im must do something with my Motherboard or all will be work as well by default?
https://www.asus.com/Motherboards/Z97K/specifications/ - MB

@Danil :
Welcome at Win-RAID Forum!

I just have done a look into the latest BIOS 2902 for your ASUS Z97-K motherboard.
Result: This BIOS offers full NVMe support. So there is no reason to modify the BIOS.

Good luck!
Dieter (alias Fernando)

Thx a lot, I’m very graceful to ur forum at all.

@fernando Success! I inserted the latest NvmExpressDxe file into my BIOS and I am now able to boot from the M.2/PCIe card without issue.

This confirms that the mod works on an ASUS Crosshair V Formula MB, with an AMD FX-8350 processor.

If anyone has any specific questions about my install, please let me know.

MB: ASUS Crosshair V Formula (not z)
CPU: AMD FX-8350
SSD: Samsung SM961 256GB
OS: Win10

ASRock Z77 Extreme 6 PROBLEM.

HI,
I have a problem on my motherboard.
I installed last BETA bios for “support NVMe” drive.

I have test this beta bios with samsung 950 pro, and uefi bios detect it and show me boot option. All work fine.

If i use OCZ RD400 drive, uefi don’t show me boot option and i can’t boot from it.

Please help me

Hi everyone, I’m reading this forum with great interest, I have a dual Xeon server board, ASUS Z9PA-D8, but no NVME driver exists in the latest BIOS, which is 5602 published on November 11th 2015. This BIOS is in the .CAP format (AMI Aptio capsule at the beginning).
I successfully inserted the NVME DXE module at the end of the DXE portion of the BIOS, I did that just to see how it works, as I guess the BIOS signature is now incorrect, and it won’t flash if I try to do so.
Anyone succeeded with this mobo yet?
I read in the first post that Samsung 950 Pro has it own boot code in its firmware and that by enabling PCIE OPROM on boot devices on PCIe in the BIOS options, it can boot from it… I’ve just bought this SSD brand new really cheap on ebay, with a PCIe adapter…
Such a shame Asus did not include this in the latest BIOS. NVME drives were on the market at that time!

Thanks in advance for any information if you have some!

@MALEFX :
Welcome at Win-RAID Forum!
If your mainboard BIOS contains the required NVMe module, you should be able to boot off the OCZ RD400 SSD. I recommend to load the latest Toshiba/OCZ NVMe driver at the point of the OS installation, where the Setup doesn’t see the SSD.

@Strikerrocket :
Welcome at Win-RAID Forum!
Although you will be able to boot the Samsung 950 Pro in LEGACY mode, I recommend to integrate the NvmeExpressDxE_2 into the BIOS of your mainboard (provided, that you know how to flash a modded BIOS into the BIOS chip of your mainboard).

Good luck!
Dieter (alias Fernando)

@AntiBear :

Thank you very much for your report, which verifies, that my guide (written into the start post of this thread) is valid for AMD Chipset systems as well.
This is good news for other users with an AMD chipset system and an AMI UEFI mainboard BIOS.
As a consequence of your report I will rename the thread title and add a link to your report into the start post.

Thanks again!
Dieter

Goodmorning
Fernando my problem is only for boot in the bios.
If i use a samsung 950 pro, bios show me boot option
If i use a RD400 bios don’t show me boot option.

The ASRock bios it’s BETA for NVMe support.
Can i use your tutorial in this NVMe beta bios for add compatibility? it’s the same procedure? or i need to remove official beta nvme support from bios and after use your tutorial?

please help me

A BIOS modding will not change this situation. Even if you would remove the NVMe modules from your original ASRock BETA BIOS and replace them by the NvmExpressDxE_2 module according to my tutorial, the BIOS and the Boot Manager will not show your Toshiba/OCZ NVMe SSD as bootable device. Nevertheless I am sure, that the BIOS detects your NVMe SSD (although it doesn’t show it) and will give you the ability boot off it in UEFI mode. Please read the start post of this thread regarding this point carefully again.
The problem, that the Setup of the Operating System may not detect your OCZ SSD, can only be solved by loading an appropriate OCZ driver, but not by a modification of the mainboard BIOS.

No fernando.
If i boot windows 10 usb stick i view che RD400 and i install windows 10 without problem.
BUT AFTER, mother don’t boot because bios don’t show me RD400 in boot option.

If i use samsung 950 pro, bios show me boot option