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

Ok, thank you. Guess I’ll go back to fiddling with the bios. There must be an option there somewhere I missed then. Hadn’t gotten to chapter 4 yet, but I’ll check it carefully and hopefully won’t need to bother anyone here with it.

Edit: Just looked at chapter 4. Seems win10 oriented, I’m going to see if I get Debian working and I’ll report back how it goes.

As Fernando mentioned…u will only see (depends on motherboard model/bios) the PATA device after an OS installed, before u might not see anything in bios, remember that this is a MOD, not an official solution in Aptio bioses.
But the NVMe drive is visible in destination drive in OS setup, if the mod is OK, of course following the OS installation guide (Pure UEFI/GPT only).
So u can test it during an initial Windows setup before Debian.

Ok. That’s interesting. I did an install to an nvme drive before on this board - I was able to boot debian, it saw the nvme drive, and I was able to install to it, I was just unable to boot from it.
I’ll go through everything looking for that CSM setting and then just try and install to a new drive, see if it becomes bootable this time.

Thanks for all the help, great forum. I assume there must be a donate link somewhere? My PiHole kills pretty much all ads…

I’ve had another root around in the bios, I’ve found the csm setting and it is enabled.
From what you’re saying about the way the mod works, I’m assuming a uefi section needs to be found on the mounted nvme drive in order for anything to be displayed in the bios?

IIRC, the windows boot manager thing lives in a sort of own partiton on a drive, the same for the linux uefi flavour and that’s what needs to be detected for the PATA boot option to show in the bios. Just trying to get an impression of how it ties together. I’ll let you know how things go, I may just do a minimal debian install on a different rig and then move, the nvme over and see how things go from there.

Lets clear the point here, the NVMe mod, its the insertion of the NVMe DXE driver in order to be loaded by UEFI system bios.
An NVMe drive will always be present in a system with or without bios mod, as storage device or to install an OS, but even after an install, the next reboot
it needs the NVMe DXE driver (MOD) to load to access a fresh installed OS on the 1rst reboot or it will fail as u already noticed, this seems not to be ur issue, ur issue is no available PURE UEFI environment system bios (CSM OFF)
So get a full understanding of ur motherboard settings and discover urself the correct way of enable UEFI boot on the motherboard, without it, the MOD wont work as its presented by Fernando.

A quick look with AMIBCP, i saw a lot of options to boot in ur Aptio V bios, including UEFI boot, UEFI new entries etc…dig a little more.

If the mod makes it possible, I’m sure I’ll find it. I gave up with my last nvme install because I found a post from supermicro stating that nvme boot wasn’t supported. The board does indeed have a wealth of options.

Just waiting for a new nvme drive to come in, and I’ll give it a go. I’ll do a new UEFI install and then play with the bios, see if it will work with everything set to UEFI.

Hi Fernando, it’s been 3,5 years already running a NMVe SSD as bootdrive on my Z77 system, with great succes thanks to your detailed tutorial! But last week I’ve ran into trouble, can you help me once again?

I’ve installed an extra PCI SATA3 expansion card, and suddenly my system doesn’t see the NMVe SSD anymore. POST hangs before it can boot, and my motherboard gives code 64: “CPU DXE initialization is started” -or- code B4: “USB Hot Plug” (see attached picture), and also the “BOOT_DEVICE_LED” light is on (means error). I cannot enter the BIOS, and have to flash the BIOS to stock 2104 (latest official) with USB FlashBack to regain access to the BIOS. When I insert the uncompressed .ffs NMVe module again to the stock 2104 BIOS and do USB Flashback, the same thing happens: POST hangs at the same point. I’ve already tried removing the new SATA3 expansion card, but to no avail. Weird thing is it did work! Do you know why it suddenly decided to stop working? I hope you or someone can help me with this.

Picture of motherboard error code: https://postimg.cc/vDW3NQf2

Note: when I boot on stock BIOS and start a Rescue Bootdisk from USB, it does show my bootdrive (the NMVe SSD) in Windows Explorer.

Hello! I’ve succesfully installed an WD SN550 NVME SSD on my old Asus Rog G771JW laptop (with no nvme support) using this thread. First of all, thank you for making it so user friendly, it was quite enjoyable. Secondly, i’m running into some problem…whenever i restart from windows (10), it won’t boot unless i fully shut it down, pressing the power button for a few seconds and then powering it back on. I do have another HDD installed on my laptop, with no other operating system on it. My bios settings are like follows:
- CSM disabled (enabling it won’t help)
- Secure boot disabled (enabling it won’t help)
- Sata Configuration is AHCI (changing to the only other option IDE wont help either)
- No other boot options in the boot sequence (only windows boot manager)
Am i doing something wrong? Any advice would be highly appreciated.

@ESRR : It seems, that the add-on PCIe SATA card interferes with the PCIe connected NVMe SSD. You may have to decide, which device is more important for you, and should remove one of them.
Please consider, that the simple insertion of an NVMe EFI module offers the natively not available option to boot off an NVMe SSD, but does not prevent any negative impact of other third party PCIe cards on the booting process. If you want to get full support of all PCIe connected SATA and NVMe SSDs, you should ask the manufacturer of the mainboard for an updated BIOS.

@IonutGabriel : Welcome to the Win-RAID Forum!
Although I am unsure regarding the exact reason for your issue, but I recommend to check the Intel Management Engine of your system by using the appropriate Intel MEManuf tool (look >here<). If the MEManuf test should be ok, it may be a good idea to reset the CMOS of your mainboard.
Good luck!
Dieter (alias Fernando)

@Fernando :
Thanks for your reply! Once I noticed the POST freeze, I removed the SATA3 PCIe Add-On card, like it was before, and it still gives this freeze at the end of the POST. It should work, because it worked before. My question is why can’t I get it to boot the NMVe properly anymore? Nothing’s changed of the hardware. I don’t know what to do. ASUS won’t update the board anymore since it’s too old. Is it possible to somehow obtain a pre-made BIOS with the NMVe module inserted? Maybe I’ve done something wrong inserting the .ffs module?

Here the latest BIOS for my system: v2104
Thanks very much in advance for any help! :slight_smile:

Wot was the controller brand/id on that SATA card? U do know that u have a Marvell SATA onboard controller…

Here is the latest bios v2104 again with the NVMe dxe driver module and all other updates available. We can try another 3 different mods besides this one
Try it and report it back, ONLY USB Asus BFB.

I have an ASUS ROG G751JT laptop.
I attempted to mod the rom file to get my bios to support NVMe, and everything seemed to be fine and work exactly as the instructions stated, but the only difference is when comparing the modded file to the source, it appears to have added one pad-file.
Per the instructions, is says not to use this modded bios if that is the case.

What should be the next step in this? can the extra pad-file be manually removed without an issue?
New to doing this.

Thanks!

@risen2verve : Welcome to the Win-RAID Forum!
Since there are at least 2 different BIOS tools, which are able to do the work, the first step should be to use the other tool.
If this should not solve the problem, please attach the original and your modded BIOS (as compressed *.RAR or *.ZIP archives). Then we will try to find a solution. The manual removal of a natively not present Pad-file via Hex-Editor is not an option.
Regards
Dieter (alias Fernando)

Yes, I know. All onboard SATA’s are in use. I have a lot of disks connected. The SATA expansion card is StarTech PEXSAT32 with a Marvell 88SE9128 controller. I already have another 2 SATA PCIe controllers in my system without any problem, both StarTech also.

Thank you MeatWar, much appreciated! Unfortunately it gives the same freeze at POST. No matter what BIOS I flash, it freezes the POST, all except the stock 2104. I’m 100% sure your shared BIOS is fine, but something is faulty in my system I guess. I’ve already tested my system with everything removed, only the M.2 SSD connected, with everything PCIe removed (all 3 SATA cards), and it’s still freezing the POST. What’s going on?

@ESRR :

Since you had reported >here<, that everytthing worked fine before you additionally inserted a SATA add-on PCIe card, I recommend to restore your previously working system.

Hello Fernando, hello everyone!

I have an ASUS Transformer 3 Pro T303UA laptop.

I’m trying to modify the rom file to get my BIOS to support NVMe SSDs, but unlike the BIOS of ASUS ROG G751JT or ROG G771JW laptops which have already done succesfully before in this thread, there is no such a module named “CSMCORE” and the only module I found with the letters “DXE” within its name was “Dxelpl”. I tried to insert “NvmExpressDxe_4.ffs” and “NvmExpressDxe_Small.ffs” using MMTool 4.50.0.23 but both of them failed with a message “Error in inserting file”!

Could you please look at it for me?

Thanks a lot!

Error 2021-07-01 144606.png

T303UAAS306.zip (2.64 MB)

@muerte : Since your attached original BIOS contains already the AMI NVMe DXE Driver (see attached picture), it will natively fully support booting off an NVMe SSD. A BIOS modification is not required and wouldn’t make any sense.

BIOS with NVMe Support.png

@Fernando : Thank you Fernando! That’s weird, because according to ASUS’s introduction of T303UA, both SATA3 and PCIE SSDs can be used, inside my T303UA was a 256GB SanDisk X400 OEM SSD(SATA3) installed, I replaced it with a WD BLUE SN550 NVMe SSD, but it’t won’t show in the BIOS at all, the same thing happend to a 970 EVO Plus NVMe SSD, that leads me here.

Can the AMI NVMe DXE Driver inside the original BIOS be replaced with the “NvmExpressDxe_4.ffs”?
If yes, I guess just Right-click onto the File GUID: 634E8DB5-C432-43BE-A653-9CA2922CC458 as you already marked for me, and choose the option “Replace as is…”?
Please correct me!

Thanks for your help!

ReplaceNVMe 2021-07-01 233711.png

@Fernando :
I did restore my old setup (removed the new SATA3 expansion card) like it was before. And still I get this freeze at the end of the POST. That’s why I replied here, because I don’t know why it suddenly doesn’t want to boot anymore, despite the exact same configuration. The hardware is 100% identical as it was in a working state. Is there a chance my M.2 SSD is not functioning properly??

With stock 2104 BIOS it won’t boot of this M.2 SSD, but when loading a Rescue WinPE BootDisk from USB it does see the M.2 drive. It’s my BIOS that won’t start booting (POST freeze) when the .ffs module is inserted. Is there a way to fix this?

Edit by Fernando: Fully quoted post replaced by directly addressing (to save space)

Hi BIOS Modding Gods,
I tried to use the tools myself but when I opened the file using the uefi tool it shows me image sections with invalid DOS signatures. I could not open it using mmtool as it says its not an aptivo rom.
After I used uefitool and inserted the nvme dxe driver, it erased the pad-file right after it. Instructions said not to try to flash and to post on forum so here I am.

Can someone please help me mod the bios so I can boot to nvme?
Link to official MSI bios: https: // download.msi.com/bos_exe/mb/7850v18.zip
If not too troublesome, can you tell me what I did wrong with the tool? Or how it could be fixed? Is it just extracting the pad-file and putting it in behind the dxe file again?

Thanks!

UPDATE: Nevermind. I used the wrong MMtool version. It looks like this should be correct now.