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

Because I have dual-bios, it is not too much risk to try it, is’nt? Maybe I break it??
But first, I have one question about extracting modules using UefiTool: should I use “Extract as is” or “Extract body” option?? Whats difference?

@iX-9 :
Why do you want to extract modules from another BIOS? You will need more free space within the DXE Driver Volume of your BIOS and will not get any benefit.

When you choose the “Extract body” option, you will not get the entire DXE Driver module (the header with the GUID will be missing).

Why extract modules from another BIOS? Becauce that BIOS is able to LEGACY boot EVO960! And THAT I want…

@iX-9 :
Now I understand why some users can boot off the Samsung 960 EVO in LEGACY mode, although the SSD itself doesn’t contain an NVMe Option ROM.
It would be fine, if you offer the extracted NVMe Option ROM module within this Forum for the public.

Hi!
Here in attachment are extracted NVME FFS files from F4G BiOS of Gigabyte X470 Aorus Gaming 7 WiFi mobo.
This mobo IS ABLE to boot Samsung EVO960 SSD in Legacy mode! And of course, in UEFI mode too…
Probably is able to boot any SSD in Legacy mode (I can confirm only EVO960).
Maybe someone will try to add Legacy boot support to another motherboad!
I will definitely to try this on 7-Series Gigabyte GA-Z77X-UD4H, just when I will have enought time…

NVME_ffs_(Extracted from GA-X470AG7W.F4G BiOS).rar (34.3 KB)

@iX-9 :
Thanks for your report, but your test result doesn’t really prove, that the Samsung 960 EVO is bootable in LEGACY mode.
Reason for my doubts: All your attached FFS files are EFI modules resp. “DXE Drivers”, which will not be loaded in “clean” LEGACY mode.
I suspect, that the Gigabyte X470 Aorus Gaming 7 WiFi mobo is not even able to boot in “pure” LEGACY mode, that means without using any of the “DXE Drivers”, which are within the BIOS.

I doubt, that it is able to boot in “pure” LEGACY mode at all.

Yes, that is a good idea. We need test results by using a mainboard without native NVMe support and a BIOS, which offers the option to load just the LEGACY Option ROMs while booting.

Actually,I am 100% sure I am in Legacy mode now!
1.) In BIOS settings, I have this: Boot mode: Legacy only, Storage boot option: Legacy only, CSM Enable.
2.) My 960EVO in PCIE slot is MBR partitioned, active partition is windows partition.
3.) When Windows (7/x64) boots, it uses BOOTMGR in root of windows partition, not "Windows Boot Manager" in EFI partition.
4.) Typing "bcdedit /enum" in console displays me "\Windows\System32\winload.exe" as PATH of current bootloader, NOT "\Windows\System32\winload.efi" as in UEFI-mode case.
Maybe there is more evidences I am running Legacy mode now… (GB X470Aorus Gaming7WiFi, Samsung 960EVO, Windows7/x64).

@iX-9 :
Thanks for your additional information.
I am not yet convinced, that the Samsung 960 EVO is bootable in LEGACY mode.
Please post a screenshot of your Disk Management, which shows all your currently in-use storage devices and the usually hidden drives as well. Don’t forget to unplug all attached USB devices, before you take the screenshot.

OK, Disk Manager + Paragon HD Manager screen…:

SD.png

PM.png

@iX-9 :
Thanks for the screenshots.
Contrary to you I still doubt, that the Samsung 960 EVO SSD is bootable by a system, which doesn’t have an EFI bootloader and an NVMe “DXE Driver”. Your screenshots verify, that the usually hidden 100 MB sized EFI partition with the Windows Boot Manger is still present within your bootable system disk drive.
Please do your announced test with your Intel 7-Series chipset mainboard without native NVMe support (no NVMe.ffs module within the BIOS).

Hi Fernando! …again! :slight_smile:
Just keep pushing you:
I deleted and zeroed that unused EFI partition!
And wrong nothing hapened, windows starts as normal!

SD2.png

PM2.png

Hello Fernando,
Just found this great forum and very happy about it.
Want to ask you one thing. I did a mistake by buying Chinese nvme 250 GB card. So it’s practically noname I would say. There is a name, KINGSPEC, but I doubt it makes any difference. Anyway, I tried this card in a few motherboards, in mine, gigabyte x470 ultra gaming, then office computer with AB350M-Gaming 3 and msi gaming notebook and it is not recognized in any of them. So I was wondering, this ssd is defective or since gigabyte have a list of compatible nvme ssd in their support webpage of this motherboards, it is just not compatible? So I don’t know should I open case against seller and get refund or should I try your bios modding for getting support for ssd’s which is not in supported list?
Thank you.

@iX-9 :
That is an interesting result.
Please remove the Linux partition from your NVMe SSD and repeat your test with an older Intel Chipset system without having inserted any NVMe DXE Driver module into the BIOS.


@shrisha :
Welcome to the Win-RAID Forum!

If an NVMe SSD doesn’t work at all on a system, which natively has full NVMe support, it is obviously faulty.
My suggestion: Give it back the SSD to the merchant where you bought it and get the refund.

Regards
Dieter (alias Fernando)

I thought so too, Thank you Fernando.

Deleted Linux, nothing more left for possible EFI, but still boots as normal.

SD3.png

PM3.png



( We are talking about the new GB X470 Aorus Gaming 7 WiFi motherboard! )

On old 7-Series system, without NVMe-modified BIOS, dont need to test this, it dont work!
Without modded BIOS, its absolutely unbootable with EVO960.
Some time before, I modified its BIOS exactly that way, as specified in the first post of this thread, just add single NVMe module.
From that time, the system is UEFI bootable with EVO960, I used it till now.
But it is NOT Legacy bootable…

@iX-9 :
Thank you for your last report, which verifies, that the Samsung 960 EVO SSD itself doesn’t contain an NVMe Option ROM (contrary to the Samsung 950 Pro). This means, that systems with no native or added NVMe support are not able to boot off the Samsung 960 EVO SSD.
For your find, that the Gigabyte X470 Aorus Gaming 7 WiFi mainboard is able to boot off the Samsung 960 EVO in LEGACY mode, I have only 2 possible explanations:
a) The BIOS of this specific mainboard contains an NVMe Option ROM (outside the “DXE Driver” Volume). I haven’t yet seen any report, which indicates this possibility.
b) It uses the EFI NVMe module, no matter which BIOS settings and partition scheme the user has chosen.
You can find it out by flashing a BIOS, where you have removed the DXE Driver named Nvme. If you should till be able to boot off the Samsung 960 EVO, it would be the proof, that the BIOS contains an NVMe Option ROM module. Maybe you can find, extract and offer this Option ROM module. That would be really perfect!

@Fernando ,

I looked into iX-9’s bios and found where all his option roms are kept in GUID A0327FE0-1FDA-4E5B-905D-B510C45A61D0 and not one of them is Nvme related. Most likely its option b like you said in that his efi module has support somehow via the CSM. Very interesting find non-the less…

So, finaly tested the extracted modules in old 7-Series system:

1.) In first try I use four of FFS:

1.png


- It dont work, no SSD detected.

2.) In second try I use all six modules:

2.png


- It dont work, no SSD detected.

3.) Next I added also NVMe_Expres_4 module from this thread:

3.png


- This worked like before: SSD is detected and UEFI-only bootable.


- This means that my extracted modules do nothing, are skipped.
- Looking at the last screenshot: I found that FFS from this thread dont contain “Dependency” and “Version” section. Maybe I should remove these sections from my FFS’s? But HOW??

The only extracted module, which may have been usable for a mainboard BIOS without native NVMe support, is the file named Nvme.ffs. All other modules are not usable by the system BIOS modules of a mainboard without native NVMe support.

This would not help at all.

What about to add also this section?

CSM.png



If it boots through CSM…