[Request] NVMe Support for Phoenix UEFI BIOS

I have a fit-PC3. It runs Phoenix SecureCore Tiano v2.1.0 (which is UEFI). The latest release of it can be found here. How would I go about adding NVMe support to this firmware (so it can boot from NVMe drives)? I imagine it involves inserting an NVMe option ROM into the binary structure of the firmware image somehow. Is it risky? Or is it something that would not be disruptive if it doesn’t successfully add the support?

Take note: The firmware is NOT legacy. The fit-PC3 DOES have UEFI.

@Melab
Welcome to the Win-Raid Forum!
Good luck!
Dieter (alias Fernando)

@MeatWar My fit-PC3 doesn’t use an AMI BIOS. Is this thread applicable?

@Melab
Finally I have found >this< already existing thread, which may match your help request. If you should agree, this discussion will be integrated into the linked thread.
Tip: Try to open the BIOS by using the latest version of andyp’s Phoenixtool. The link is within the above mentioned thread.
Good luck!

@MeatWar
To avoid any confusion for future visitors of this thread it may be a good idea to customize or remove your replies within this thread.
Thanks!

I’ll try running those tools when I get the chance, but I’m not sure if the thread helps. It doesn’t say anything about how to add an option ROM to a UEFI firmware image, what to look for, how risky it is, and so forth. Like, is it as simple as dropping a file somewhere into the firmware image (similar to adding a file to a Linux drop-in directory)? Or do tweaks to other parts of the firmware need to be made for the insert content to get used?

@Melab

  1. The flash of a modded BIOS is risky, even if the modification has been done correctly.
  2. As far as I remember the Phoenixtool offers the option to insert a natively not present module. If you want to know more about the procedure , I recommend to look or to post your request into the previously linked thread, which had been started by the maker of the Phoenixtool.
  3. If you want to boot off an NVMe SSD in UEFI mode, you have to insert an NVMe EFI module (DXE Driver) and not an NVMe Option ROM.

Regarding #3, this thread uses the term “option ROM” for what is being inserted into the firmware.

Regarding UEFI option ROMs, instead of DXE drivers, is it possible to inject one into an NVMe SSD that the PC firmware will load?

No, as far as i know, you cannot inject anything into the NVMe device itself, in old Legacy bios (AMI8) the solution found for NVMe mod was the use of an OpROM that can be found on the SEC950 Pro (This OpRom will be edited with new hw ID), the solution found for old UEFI board (AMI Aptio) was the DXE NVMe driver cause the UEFI platform will load DXE drivers without needing OpRoms.
You can try to find a new or used Samsung 950 PRO, this model has its own OpRom, mentioned before. Anyway you wait for Fernando’s answer.

Is a UEFI DXE driver loadable from the ESP?

What would I be doing with the Samsung 950 PRO? Using it as-is or extracting its option ROM to insert into my BIOS/UEFI image? Does it support NVMe namespaces with write protection (the feature I’m after)?

I’d only be able to use a mini PCIe connection.

No, the SEC950 PRO is an NVMe disk with its own OpRom embedded already not needing to modify bios, understood now ?
For ESP loading go to hackintosh users and im certain that plenty more up to date info can be found on used drivers in ESP partition or loaders.
Im am out of this, good luck.

Does it support namespaces and write protection?

I have obtained PhoenixTool. Where in the structure would I insert the DXE driver? Where can I obtain such a DXE driver?

After last listed DXE driver present