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

Hello, this is a really good project! I have an ASROCK b75 Pro3-M motherboard with BIOS version 1.9.
I was trying to insert the small NVME ffs using the MMTool but get an error message.

Screenshot 2020-12-30 012532.png


Can you please check what is wrong? Happy New Year!

B75 Pro3-M(1.90)ROM.zip (4.7 MB)

@Timothy : Welcome to the Win-RAID Forum!
You are right - the AMI Aptio MMTool v4.50 is not able to get the NVMe module inserted into the DXE Driver Volume (due to the limited space).
My tip: Use the UEFITool v0.28.0. As you can see here, I was able to get even the much bigger sized NvmExpressDxe_4.ffs inserted (without touching or creating any Pad-files):

B75P3M1.90_modbyfern.png


Good luck and a Happy New Year!
Dieter (alias Fernando)

Hi everyone, iā€™m new here, and I want to thanks all the people for the forum and useful Guide !

Iā€™m coming with a particular situation ( I think ā€¦ ) :
My motherboard is an Asrock Z77pro4, Iā€™ve inserted the NvmExpressDxe_4.ffs manually successful with UEFITool
Iā€™ve 2 differents nvmeSSD plug on differents pci-e slot with an adaptator for each ( slot 1x and slot 4x )

With the original Bios, my system boot on my old SataSSD, and the 2 NVMeSSD are normally detected and usable in windows 10 like storage, and obviously , they arenā€™t visible in the Bios.
With the moded Bios, i can see 2 "PATA:"empty in add of the old SataSSD, if i configure the moded bios and restart, my computer stucks with a blinking underscore on black screen after the Bios check and before any boot action on any device ( sata / pata / usb )
if i unplug an adaptor pci-e ā†’ NVMe ( any of them, just if I leave just 1 adaptator plug ), the computer donā€™t stuck and can try to boot, and if I try to install a new Windows on the NVMeSDD, i can do it . Itā€™s right for each NVMeSSD if I plug just one.

So , how can i use 2 NVMeSSD, 1 for boot and 1 not, in the same time? The drivers can do this ? The empty name for the ā€œPATAā€ device can be the cause ?
Where did I a mistake ?

edit in addition : to be sure not to have created a problem on an NVMeSSD disk, I reflash the original Bios and by configuring the Bios, I can reuse the computer as before, with the SATA SSD and the 2 NVMEs with their adapters

Thanks to read me :slight_smile:

Hi I just did the thing, can you verify that I did it right Fernando? This is the most up to date S30 firmware (ONLY FOR 4351 AND 4352, THE OTHERS ARE DIFFERENT MOBO)

I added the ffs into the volume 1, the only thing i noticed that happened weird was that one entry moved above the pad that is near the end of the large volume which contains all of the DXE drivers.

Then I removed the capsule and got it ready for the OldGuy trick.

ThinkStation S30 (type 4351, 4352)
Version: A2KT70A Release: 13 Sep 2020
Modification: NvmExpressDxe_4.ffs uncompressed

IMAGEA2.rar is the original.
IMAGEA2mod.rar is the modified file.

IMAGEA2.rar (3.57 MB)

IMAGEA2mod.rar (3.58 MB)

Hi!
I am trying to modify the bios for GA-H87-D3H.
The modification deletes the Pad-File.
Iā€™ve tried modifying the bios with UEFITool from this thread and with the latest stable version from the Github.
I also tried to mod with MMTool 4.50.0023 / 5.00.007 / 5.02.0024Mod versions.
Can you give any advice?

WUDYCyPfGf.png

mb_bios_ga-h87-d3h_f10.zip (4.98 MB)

@lBeJIuk : Welcome to the Win-RAID Forum!
Yes, due to the very limited free space within the DXE Driver Volume of your special BIOS it is not easy to get the NVMe module properly inserted without touching any the Pad-file.
Nevertheless you can solve the problem, if you insert the "small" module named NvmExpressDxe_Small.ffs by using the UEFITool 0.28.0.
This is what I got:

modded H87D3H BIOS.png



Good luck and Happy New Year!
Dieter (alias Fernando)

@lBeJIuk Extract compete volume 8C8CE578-8A3D-4F1C-9935-896185C32DD3 (the lowest level directly over IntelSaGopDriver) ā€˜as isā€™ in UEFItool 0.25, open this volume in UEFItool 0.25, select last dxe driver, ā€˜insert afterā€™ NvmExpressDxe_Small, save. Open original bios again in UEFItool 0.25, ā€˜replace as isā€™ the volume you extracted before with the modified volume, save.

This way you can keep at least the pad file in front of Āµcodes. Result should look like this:

22.jpg



(But as always- thereā€™s no warrantyā€¦)

@Fernando Thank you so much for the advice! It worked for me. I already tried flashing the bios and now I can boot from NVME.
@lfb6 Thanks for the reply! But since Fernandoā€™s advice helped me, I didnā€™t check your way.
Happy New Year to all!!!

@Karnox @FlyTheElephant :
Welcome to the Win-RAID Forum!

@Karnox :
Thank you for your interesting report.
As you have recognized yourself, the manual insertion of an NVMe module into an UEFI BIOS gives the user the ability to boot off an NVMe SSD, but compared to mainboards with native NVMe support there are 1 or more restrictions.
In any case the NVMe SSD is not shown with its manufacturer and model name within the BIOS. Fortunately this issue has no negative impact on the function or performance of the NVMe SSD.
Your report verifies a possible second problem, when more than 1 NVMe SSD (and additionally a SATA one) is connected to the mainboard without native NVMe support.
Although I cannot help you to solve this problem, here is my advice:
Try to connect the NVMe SSDs to other PCIe slots (the bootable one always to the lower numbered with more PCIe lanes). If this doesnā€™t help, try to check the impact of the SATA SSD by unplugging it temporarily or by connecting it to another SATA port. Anyway I recommend to delete the formerly used boot and OS partition from this SSD.

@FlyTheElephant :
You are right - no matter which tool I have used, the topmost listed Pad-file of the DXE Volume has been moved by the BIOS modification.
Although I donā€™t know the real impact of this issue on the BIOS flashing result, I recommend to let our BIOS modding Guru @Lost_N_BIOS do this specific task.
Please wait for his statement.

Good luck and Happy New Year!
Dieter (alias Fernando)

@Fernando

Thanks to reply and happy new year :smiley:
my problem is solved, for pass the blinking underscore, I changed the SATA mode to ā€œRAIDā€, and not ā€œAHCIā€ ā€¦ I donā€™t know why, but now I can boot on my SATA disk and/or a usb device and install a new windows on both NVMeSSD :smiley:
Now, Iā€™ve this blinking underscore for 10-15 sec on the boot, and continue to the next step normally. The cause is probably one of my adapter, but I donā€™t have another one for try :confused: .

Thank you again for time you assigned to me

Edit:
FYI : my situation, with blinking underscore, exist only if I want keep the old SATAā€™s System and the ā€œnewā€ UEFI NVMe UP in same time.
If I delete the old SATA System, and try to boot to usb EUFI stick, install windows, and reboot, the computer boot to Windows in 3 seconds :slight_smile:

@HSerg

Can you update link plz? I have same motherboard and same problem.

Patched ASUS H87M-PRO 2102 BIOS (7MB)

@ydma24 : Welcome to the Win-RAID Forum!
This thread is designed for users, who want and are able to do the BIOS modification themselves.
If you want to get an already NVMe modded BIOS from someone else, you should either search for the matching BIOS within >this< Sub-Forum or send HSerg a PM and ask for his/her modded BIOS.
Good luck!
Dieter (alias Fernando)

@alpok57

I have Asrock B75 pro3 board and did the same thing but I cannot boot from NVME.
I have a 2TB XPG S40G nvme on an x4 adaptor plugged to my x16 - x4 slot.

Sorry @Fernando this was meant for alpok57ā€¦donā€™t know why it mentioned you directly. But if you can help me that would be great. I did the process MMTool on latest bios version.
Inserted NVME ffs (the smaller one) and all it did was show me the nvme when trying to install win10 it doesnā€™t allow me to. A little bit stumped. Currently booting windows off of a sata ssd and just using my m.2 as a storage device. It could do so much more. lol

Tried disconnecting all drives except nvme when attempting to install windows but it wouldnā€™t let me.

Specs:
MB: Asrock B75 Pro 3, CPU: Intel Xeon E3 1275 v2, SSDs: 1TB Samsung EVO Sata SSD + 500GB Samsung Sata SSD + 2TB XPG S40G nvme (via pcie to m.2 x4 adaptor)

EDIT by Fernando: Specs list shortened (to save space)

Hi everyone!

I modified BIOS for the first time with guide of Fernando.
I did all steps up to ā€œFlashing of the modded BIOSā€.
Iā€™m not sure that I did all steps correctly.
Can you please check, that I correctly modify BIOS?

p.s. I added external links to original and modified files, butā€¦ I cant post external links yet! Also files is too big to be attached. I dont know what to do.

@ydma24 :
You should be able to attach the original and the modded BIOS deparately after having compressed them as *.ZIP or *.rar archive. If that should not work, you can put some space characters into the links.
Once I see the attachments I will do a look into your modded BIOS and compare it with the original one.

@Fernando ok. Thank you!

http s:// yadi. sk/d/XJpOXXZPddUBTQ - modded BIOS
http s://yadi. sk/d/5TN0wz4urleMTQ - original BIOS

@ydma24 :
Thanks for the links.
The BIOS modification looks fine for me.
Good luck for the flashing procedure!

Does sata use pci lanes?

My cpu only has 20 lanes. 16 to graphics card and 4 to the H77 and nvme, but on-board lan uses 1 pci lane through the H77. Iā€™m worried about sata functionality.

My drive does show up in bios with the brand and serial number. I used mmtool.

PCIe lanes r not an issue here as u dont have any additional controllers using pcie lanes besides the embedded Intel H77 chipset.

The main issue here, seeing the picture u posted in another thread, ur 2nd PCIe x16 should be in 3.0 x8 shared with the PCIe x16 1rst, forcing the 1050 to x8.
Also ur NVME could be in PCIe mode 3.0/2.0 @ 5.0GT/s instead of 8.0GT/s link speed, nothing u can do to achieve the 8.0GT/s link, as the only way is using iGPU and the adapter in the first x16ā€¦do to this generation of the H77 chipset and motherboard, but u cant try it becuse ur using a Xeon with no iGPU.

From GigaByte model page:

1 x PCI Express x16 slot, running at x16 (PCIEX16)
(The PCIEX16 slot conforms to PCI Express 3.0 standard.)
* For optimum performance, if only one PCI Express graphics card is to be installed, be sure to install it in the PCIEX16 slot.
* The PCI Express x16 slot supports up to PCI Express 2.0 standard when an Intel 32nm (Sandy Bridge) CPU is installed.
1 x PCI Express x16 slot, running at x4 (PCIEX4)
1 x PCI Express x1 slot
(The PCIEX4 and PCIEX1 slots conform to PCI Express 2.0 standard.)


In some bios can have options to change PCie link speed with the cost of disabling sata ports or other pcie, depends on the board/bios itself.

Very few models of motherboard can show in bios the NVMe added, some will show the drive if RAID controller is enable instead of ACHI, by using this method/module presented here, the mod only provides the ability to have a NVMe bootable system disk, period.

Resumingā€¦as its stands by the picture posted u will have the NVMe @ PCIe 3.0/2.0 x4 5.0GT/s link speed in 2nd x16 slot OR NVMe @ PCIe 3.0 x16 8.0GT/s in 1st x16 slot with a iGPU.

Thanks for the response.

My understanding from the motherboard literature is the second pcie x16, runs at 2.0 x4 through the H77. I have no way to tell whatā€™s itā€™s actually running at. I do know the graphics card on the first slot runs at x16 3.0 through the CPU. I doesnt link to the H77. When I had a sandy bridge it ran at 2.0. The cpu I have now has 4 more pci lanes and is pcie rev 3.0 vs the i5-2320.

I transferred a large file from a external drive on usb 3.0 and had a 1.7 - 2 gb/s write speed. I bought a wd blue nvme. It has a advertised 1.8 gb/s write speed.