[GUIDE] NVMe on UEFI bios lacking space volume

Following the guide provided by our esteemed Fernando, founder and GURU of this forum, regarding [HowTo] Get full NVMe mod for old systems, certain users will get some situations in which an error message may be displayed as file size exceeds the volume size upon inserting the different branches of the offered NVMe DXE driver.

  • This usually happens using *AMI MMtool on most AMI UEFI bios files that are below the 8Mb size, meaning that the bios volume selected for insertion of the DXE driver, doesn’t have enough available space for more modules/drivers/etc…
    *(Note that there’s user reports of inserting the DXE driver with the UEFI tool on files that the AMI MMtool reported this, some successful others not, so…)

  • This is mostly verified on Gigabyte bios files but also on other vendors or one those identified as UEFI transition era (Hybrid bios)
    The following applies/tested ONLY in AMI Aptio IV Core bios files

Two options are available to overcome this situation.

  • As first option, we can remove String Languages from the bios volume.
    The user can remove extra languages at his discission, besides the EN as this is the bios core code, using the AMIBCP tool 4.x

1. Open the bios/dump file or *dumped bios_region(rgn/bin).

(*ASUS preferable method on CAP files, for avoiding CAPSULE signature breaking
is dumping the bios_region only, that can be done in two ways:

2. Select “BIOS Strings” tab, press the “Remove Strings” button, upon pop-up window select the desired language code to remove and press the “OK” button, repeat the process if needed.

3. Now save the file directly, “File” menu “Save” or “Save as…” with a new name for better identification of your work (fd/rgn/bin).

(Optional: *Again on Asus CAP files, the resulted file (ex.: bios_region mod.bin) from the previous work, can be replaced on a full bios image/CAP, but now using another branch of the UEFI tool 0.25/28 or can be flashed directly with the Intel FPT tool, if the FD allows it or was previously unlocked)

Note: Till this date, there’s only one report to my knowledge, that this wasn’t successful and there’s no real confirmation that the removed language strings was the main cause, on this report. The user, upon flashing the mod bios, the system boot into a blank screen.

  • As second option, we can remove some DXE drivers/modules from the bios volume.
    We are going to use one of the most common choices among users, by removing related UEFI DXE network boot drivers.

The user can remove as many as he wants, from the following list:

image

1. Using the AMI MMtool 4.x, upon loading the desired bios image or *dumped/extracted bios_region, we will need to scroll down till the desirable DXE is to be found, now upon itch one selected we must press the “Delete” button, the structure will be refreshed.
The process needs to be repeated, as user option only, if additional removals are needed.
End the process selecting the “Save Image” directly or the “Save Image as…” for new name.

image

2. Using the UEFI tool 0.25/28, upon opening the desired bios image or *dumped/extracted bios_region, using the internal search tool (ctrl+F), enter the following “ex.: dhcp4dxe” in search as text.

image

Now, one by one, we select the DXE drivers that we wish to remove.

As seen, the selected ones will be marked in “Action” for removal, we end the process upon selecting “File” and saving “Save image file…”, using the file original or new name.
The structure will be rebuilt and it will be given the option to open the new saved file.


Global notes:

  • Its a user option, only to remove the necessary DXE drivers regarding its own size, by freeing the required space for inserting the different NVMe DXE branch’s, the same applies to the AMIBCP tool removing language strings.

image image

  • Regarding the DXE drivers exclusion, both tools have the option of extracting “Extract as is” and saving it (.ffs) before permanent removal, creating in this way a backup for the user.

  • Regarding DXE driver size on the bios volume, it can be viewed in the UEFI tool, information right panel.
    image
    or by looking at the extracted/saved DXE file backups made on disk.

Happy modding and all the best!

1 Like