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

@olivia Don’t use ASUS stock bios, you need to dump your own bios!

  1. I used DE3100_IRA14’s afuwingui -> clicked on save > saved as IRA14.rom
    2) I used MMTool 4.50.0.23 to insert NvmExpressDxe_Small.ffs > saved as moded.rom

    I have attached both

    I am confused in
    “Only for ASUS BIOSes, whose capsule had been removed by extracting the ‘Body’, but shall be flashed by using the ASUS USB Flashback feature:
    Don’t forget to re-insert the original capsule and to save the modded BIOS as *.CAP file”

Screenshot 2020-10-27 112043.png

bothbios.zip (4.72 MB)

Dear Fernando,

thank you for your all your efforts! I am facing an issue with a missing pad-file as mentioned in the UEFITool verification section.

My mainboard is MSI Z77-GD65.
I have tried it with the latest BIOS version (10.11) as well as its predecessor. Further, I have tried it with both NvmExpressDxe_* files.
I just tried it with MMTool, verified it in UEFITool and voilà: not missing the pad-file.

Still, I’m unsure whether to flash now. Any advice?

uefi-mod-vs-mmt-mod-vs-vanilla.JPG

Vanilla BIOS.zip (5.4 MB)

UEFI-Tool-mod.zip (5.41 MB)

MMTool-Mod.zip (5.41 MB)

@olivia :
Although the original ASUS BIOS G751JTAS.213 is not named as *.CAP file, it contains a signed capsule.
Look here:

Original BIOS with Capsule.png


I have checked your dumped ROM file and compared it with your modded ROM file.
Result: Your modded BIOS contains an additional Pad-file, which is not present within the "original" (dumped) BIOS.
Here are the related pictures (left PIC: your original dumped BIOS, right PIC: your modded BIOS):

Original IRA14rom.png

BIOS mod by user.png


Then I tried to modify your original file named IRA14.rom by using the UEFITool v0.28.0 and got this result:

BIOS mod by Fernando.png


My advice: Don’t flash your modded BIOS. Redo your BIOS modification by using the UEFITool and compare your result with the above picture. If you get the same result, re-add the missing original capsule (extracted with the UEFITool from the original BIOS G751JTAS.213 offered by ASUS), rename it according the USB Fashback rules and flash it via Flashback button.
Good luck!

@paki :
Welcome to the Win-RAID Forum and thanks for the screenshots!
Meanwhile I have checked your attached BIOSes and can confirm, that the BIOS, which has been modified by the MMTool, is ready for being flashed.
Good luck!
Dieter (alias Fernando)

@olivia You probably didn’t check the ‘insert compressed’ box? If you do you won’t get the pad-file/ the same correct result without pad-file as when using UEFItool 0.28 as proposed by Fernando. (MMtool 5.00.0007, but it’s the same for 4.50.0023)

Clipboard01.jpg




@paki If you modified a stock/ manufacturer bios and not your own dump there might be a chance of losing some board specific information.

Hello Fernando, first of all thank you for this thread. I take this opportunity to introduce myself, I am new here and I would like to ask you two things:

1. I have a Gigabyte GA-H87N-WIFI with a RAID 0 of four 128GB SSDs, which offers me speeds about 1.5GB/s, and my intention is to install a Samsung 970 Evo Plus M.2 nVME as a system disk. Of course, for this I need to modify the BIOS and my question is, do you think I will get the 3GB/s transfer from the Samsung through a PCIe 3.0 x16 card? I say this, because although I know that the Samsung gives them in an M.2 port on the board, I have the suspicion that (although theoretically it should), it will not reach the same speeds through PCIe on an H87 motherboard as on an M .2 native on motherboard.

2. I have tried to perform the MOD, but I have found a suspicious Pad-file that is not in the stock ROM, what do you think? I attached stock, modded and a screen capture referring pad file.

I really appreciate your help and comments.

Thank you very much in advance and greetings.

H87NWIFI.F9_stock.zip (5.04 MB)

H87NWIFI.F9_mod.zip (5.04 MB)

sshot-429.jpg

@manulolo :
Welcome to the Win-RAID Forum!

The performance of an NVMe SSD depends on the sort of the chosen connection (M.2/PCIe) to the CPU (direct or via chipset). As you can see >here<, a PCIe connection may be much better performant than the usage of an on-board M.2 slot.
Now to your Pad-file problem while trying to insert the small sized NVMe module:
Although I usually prefer the MMTool v4.50.023 to do the job, in case of your specific mainboard the UEFITool (I used the v0.28.0) seems to be the better choice.
Here are pictures of the end of the "DXE Driver Volume" (left PIC: Your MMTool modded BIOS, right PIC: UEFITool modded BIOS):


My advice: Repeat the insertion of the NVMe module by using the UEFITool.
Good luck!
Dieter (alias Fernando)

P.S.: Your nickname remembers me of a beautiful Fiji island named Malolo. Is there any relationship?

Hello Fernando, thank you very much for your quick response. Before getting your message, I already tried UEFITool, but the Pad-file kept showing up. After seeing your screenshot, I tried it with the Small version and now the Pad-file no longer appears. With MMTool it did not allow the NvmExpressDxe_4 because of space, it only allowed the compressed small version, but with UEFITool, it allowed the NvmExpressDxe_4 without giving space problems, although the Pad-file did appear. Therefore the solution is UEFITool and small version. Thank you!

About the speed with a PCIe adapter, I saw a post from tyaz that the 970 Evo plus gives more than 3 GB/s!!! (The real declared speed from Samsung)

Regarding my nick … hehe, it is not related to said island.


I will try and tell you about my progress.

Thanks again!

is it instert into?
or insert after?

Screenshot (3).png

@olivia csmcore is used for identification of the correct volume, NVME driver is inserted after last element in the volume:

before.jpg

after.jpg

@lfb6 thanks for the quick help. I inserted it.
@Fernando I serched in both "pad" and got 11 results in both. That means i did it correctly right?

Here i am attaching
1) official asus bios downloaded from website -> G751JTAS.213
2) dumped bios by AFUWIN-> bk.rom
3) moded bios by uefi -> modedByUefi

@Fernando @Lost_N_BIOS
Can you add the missing original capsule for me? Please

bios.part1.rar (4 MB)

bios.part2.rar (2.58 MB)

Done! Attached is your NVMe modded DUMP file as *.CAP file (with the original ASUS capsule header).
Don’t forget to rename the BIOS file according to the ASUS USB Flashback rules before you start with the flashing procedure.
Good luck!

modedByUefi-withoriginalcapsule.rar (2.21 MB)

I’m still waiting for my Kingston 1TB A2000 M.2 2280 Nvme. I will give an update after I flash new bios. probabbly this sunday. Thnak you so much guys

Hello @Fernando Thank you for your tutorial.

I have both problems mentioned in your tutorial for my Gigabyte GA-B75M-D3H rev 1.1
- MMTool always returns "file size exceeds the volume size" in both methods - compressed and as is.
- UEFItool adds and removes pads which as said, might break the BIOS. (I checked almost each and every row)

Can you please help me generate a moded bios for this MB

mb_bios_ga-b75m-d3h_f15.rar (4.28 MB)

@potatoman :
Welcome to the Win-RAID Forum!
You are right - it is impossible to get even the small sized NVMe module named NvmExpressDxe_Small.ffs properly inserted into the original BIOS without creating a natively not present Pad-file, no matter which BIOS modding tool (MMTool v4.50 or UEFITool v0.28.0) is used.
The reason for this problem is, that Gigabyte has put too many DXE Drivers into the related Volume. There is no space for any additional one, because the compression of the DXE Driver Volume is already at its maximum.
My advice: Remove any DXE Driver, which your specific system doesn’t need/use, from the related Volume. Unless you want to use the “Wake-On-LAN” feature, the module name Ip6Dxe would be a good candidate, because it is the biggest sized one among the EFI LAN modules. I just have tested it: After its removal I was able to get even the “normal” module named NvmExpressDxe_4.ffs inserted “as it is” (uncompressed) into the BIOS without running into a Pad-file problem.
If you don’t want to get any natively present DXE Driver removed, you should ask @Lost_N_BIOS for help. He knows more than me about such sorts of BIOS modding.
Good luck!
Dieter (alias Fernando)

Hello Fernando, I have already made the modification and flashing the BIOS. I removed the RAID 0 of the 4 SSDs that I had and put an Evo 970 Plus with a PCIe adapter. Everything is perfect, except this that I show you in the capture. As you can see, the AHCI device cannot start, could it be because there is no SATA device? Is there something wrong with the modified BIOS?
What do you think?

[[File:Sin título.png|none|auto]]

Thank you so much for everything.

Hi all,
I’ve got a ASUS M5A99FX PRO R2.0 mainborad. I have modded my BIOS and installed it with no problems with Asus AI Suite. I have an KingSpec NVME PCIe recognized by OpenSuse 15.2 and Windows OS. OpenSuse 15.2 is installed on a SATA legacy disk in UEFI mode. Windows is installed on a SATA SSD Kingston in UEFI mode. I want to install Linux Mint or OpenSuse in my new NVME. I can install it, but BIOS doesn’t shows the NVME device in order to boot from it after install. OpenSuse shows my Mint OS installed on my NVME, but when I select NVME to boot on the GRUB2 menú, it fails, can’t find kernel. I don’t know how can I use it in my Asus M5A99FX PRO R2.0 mainboard. I have checked modded BIOS and it’s ok. I have disabled the CSM compatibility. It seems no changes.
Can you be so kind to help me?
Thanks a lot.

@manulolo :
I don’t think, that there is anything wrong with your modded BIOS (provided, that you did nothing else than to insert the NVMe module).
Please check the BIOS setting regarding the SATA mode of the on-board Intel SATA Controller. If it is running in AHCI" mode, try to change it to "RAID".

Did you break the RAID or just remove the RAID array members?
Which Controllers are listed within the "Storage Controllers" section of the Device Manager?

@diegolm :
Welcome to the Win-RAID Forum!
Provided, that the NVMe SSD is properly connected to the mainboard and the BIOS modding/flashing procedure has been executed correctly, you should see a device named "PATA" or "PATA_SS" listed as bootable device.
If you don’t see such device within the "BIOS" section of the BIOS, please attach the original and your modded BIOS as *.ZIP archives. Then I will check the quality of your BIOS modding work.
Regards
Dieter (alias Fernando)

Hi,

Thanks a lot for quick reply. I can’t see any device called PATA or similar whithin that section. Plase, find attached both original and modedd BIOS.

M5A99FX-PRO-R20-ASUS-2501.zip (3.07 MB)

m5a99fx-pro-r20-asus-2501_mod2.zip (3.07 MB)