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

Dear Fernando, hello.
I have been visiting your page a lot lately, reading your post. I have got an HP EliteDesk 800 G1. Recently, I bought an NVME SSD Kingston : https://www.amazon.it/Kingston-KC1000-So…+PCIe+NVMe+HHHL

I could install Windows 10 into it without any issues. Sadly, I can’t boot from it, and for now i’m using the clover usb bootloader method.
Following your instructions, I already updated to my latest bios available (L01 02.70 based on HP website for my exact model), then I modded the very same .bin bios image file and added the latest NVME modules. Could you please check if the file is correct? You can find it here: https://mega.nz/#!iBEgWIbD!DW91wv0B_O6Tw…g84RKX8uEtqP9uM

I tried already to flash this file from BIOS \ Flash System Rom, but it told me almost immediately ‘Error Flashing System Rom’ without any consequential harm. Could you please help me out?
My system BIOS:
https://www.youtube.com/watch?v=Sf4DfLTw-yI

Weird thing is that HP told me that I was good to go with it given I had NIC options in the BIOS: Link here. Don’t know why it redirects.
Simply my BIOS cannot see the KC1000 as booting device.
Thanks for all you have done.

@ChronoPhoenix :
Welcome to the Win-RAID Forum!

As you can see within this screenshot, there seems to be something wrong with your uploaded modded BIOS (wrong checksum, inserted DXE module is not at the undermost position of the DXE Driver Volume):


For a comparison please upload the original BIOS file, which has been used as source.

The BIOS will never show the KC1000, but nevertheless will be able to boot off it, if you have done everything correctly. Once the OS Win10 and the related EFI bootloader has been installed onto the NVMe SSD, it will be shown within the BIOS as “Windows Boot Manager”.

Regards
Dieter (alias Fernando)

Dear Fernando,
many thanks for your prompt reply.
Please find the original BIOS here: https://mega.nz/#!bV1xnSBb!DbC4roV_d6Mtm…ElOgCXz7LbqdPEg It’s downloaded directly from HP support.
Weird, I thought I selected the very last DXE I have found. Please, in case could you patch it for myself? And tell me if you find the mistake?
I thank you… and sorry for the troubles.

@ChronoPhoenix :
This evening I will do a look into both BIOS files and try to find out what may be done wrong, but I will not do the BIOS modification for you. If I would start doing the BIOS modding upon request, too many Forum members/guests would ask for this kind of help.

There is no problem, I understand clearly. Just, if you find the solution, please help me out. I will try myself then.
Regards,

@ChronoPhoenix :
When I open the original BIOS by using CodeRush’s UEFITool, I get the same error message as with the BIOS, which had been modified by you:

1
 
parseFile: invalid data checksum 5Ah, should be AAH
 

So this message may be caused the specific unusual BIOS compilation done by HP, but definitively not a mistake done by you.

The other point, which may have caused a problem, is the location of the inserted NVMe module. You have done it absolutely correct according my guide (Text: "Right-click onto the GUID of the undermost listed "DXE driver", choose the option "Insert after...", navigate to the EFI NVMe module file you want to insert and double-click onto it."), but I am not sure, whether this given advice is valid for your specific HP BIOS. Contrary to all BIOSes I have yet opened, the "Subtype" of the undermost listed module within the DXE Driver Volume of your original mainboard BIOS is not "DXE Driver", but "Freeform".
So it may be possible (I am not 100% sure about it), that the NvmExpressDxe_4.ffs file has to be inserted after the "Freeform" module as shown within this picture:


My advice: Only if all other actions should fail, I recommend to redo the BIOS modding by choosing the just mentioned other location of the inserted NVMe module.

Other thoughts/questions:
1. Are you sure, that the modded BIOS has been properly flashed into the BIOS chip of your mainboard?
2. When you enter the BIOS, do you see any Didk Drive named PATA_SS?
3. Did you unplug all other HDDs/SSDs, before you started with the Win10 installation?

  1. Please explain how you installed the OS onto the NVMe SSD.

Hello, to answer your questions:


I have tried to flash the modified BIN directly from BIOS -> FLASH SYSTEM ROM. It told me immediately an error: "ERROR FLASHING SYSTEM ROM". I could reboot the system without any harm afterwards. So, I think my system wasn’t flashed.


No



I prepared an USB Stick using Media Creation Tool. Then, I closed my PC and unplugged all the other HDDs. Afterwards, I started my pc and UEFI-Booted the USBstick. The Windows 10 installation began and It immediately recognized my NVME. I’m currently using Windows 10 thanks to the bootloader.



Is the risk of bricking my mobo high if I do this? I know my system has a way to restore BIOS.

Thanks for your support!

Hello all,

I’m new to this forum, so advise me if I make any mistakes. I’m hoping for someone in here to mod the 3.40B version of BIOS to support NVMe (there was an update for this, but didnt work with my toshiba xg3), update microcode, intel ME and all other modules that can be updated with performance improvements. Thanks in advance, reply if you need more info/links to BIOS.

@Opel_Astra :
Welcome to the Win-RAID Forum!

Since we do not modify any BIOS upon request, we are offering a lot of guides about how to do it yourself.
I have moved your post into this already existing thread, where you can find a step-by-step guide about how to get full NVMe support with your Intel 8-Series Chipset system.

If the ASRock BIOS v3.40B natively contains the required NVMe module, you should be able to get Win10 installed and bootable off it.
Please have a look into >this< post and my reply.
All the other demanded BIOS module updates can easily be done by using the UBU tool (look >here<).

Regards
Dieter (alias Fernando)

I didn’t mention I’ve already managed to add the nvme module because despite the bios having nvme support, windows boot manager didn’t show up in bios. what I was hoping for was help with microcode update. I’m not an advanced user and I don’t fully understand the guide I found here. if you don’t modify bioses on request, maybe you could help me by detailing the steps a little more? this is the guide: [GUIDE] AMI INTEL CPU Microcode Update Guide

The “Windows Boot Manager” will only be shown within the BIOS as bootable device after it has been created by the Win10 Setup (after the first reboot while doing a fresh OS install in UEFI mode onto the NVMe SSD using the GUIMode Partition Table).

Have you already tried to run the latest UBU tool version with your mainboard BIOS? It is very simple to get the Intel CPU Microcode updated this way. If you should not succeed with the UBU tool or if you should have any further question regarding the CPU Microcode update, please look resp. post your question into >this< Sub-Forum.

@ChronoPhoenix :
Thanks for having answered to my questions, which verify, that the modded BIOS has not been successfully flashed into the BIOS chip of your mainboard.
Meanwhile I have done some additional tests with other BIOS modding tools and found out, that the NVMe module indeed has to be inserted after the latest listed module of the “DXE Driver Volume” with a GUID. In case of your mainboard BIOS it is the module of the Subtype “Freeform” without a specific name and with a GUID starting with 0DF7DFB0.
So if you want get full NVMe support with your current mainboard, I recommend to do the following:

  1. Insert the NvmExpressDxe_4.ffs file into the correct location (after the undermost listed module of the “DXE Drivers Volume”).
  2. Try to flash the modded BIOS the same way as you tried it last time (the risks of a bricked mainboard are minimal, because you just added an originally not present module and didn’t modify any existing one).
  3. After having flashed the modded BIOS, power off the computer for a minute. Then restart it, enter the BIOS and search for a Disk Drive named PATA_SS (or something similar).
  4. If you should find it, everything is fine and you will be able to get Win10 and the “Windows Boot Manager” properly installed onto your NVMe SSD (for the preparation of the bootable USB Flash Drive I recommend to use the tool named Rufus, for details look into the start post).
    If not, you will have to find a better way how to get the modded BIOS successfully flashed. I just did a Google search for “How to flash a modded HP UEFI BIOS” and found some very interesting links.

Good luck!

Hi Everyone,

I’m new to this forum, but very old to computers, have been a user since the early 80x, and in 1993, built my own CAD/CAM & A/V workstation, while studying engineering, and have continued upgrading building my own computers since then.

Yesterday & today, I read Fernando’s first post & a few follow-ups in this forum thread, as well as the Hotfix link Fernando provided (https://support.microsoft.com/en-us/help…ndows-7-and-wi?), and am following-up with questions before I make my purchase.

My current system:
My motherboard is ASUSTeK Computer, Inc., P9X79 WS (American Megatrends, Inc., BIOS version 3209 from 10/8/2012), my processor is Xeon E5-2630, I have 64 GB of ECC DDR3 Ram, will be adding two PNY Quadro P4000 graphics cards with an SLI bridge to the two PCIe 3.0 16x slots, and would like to two DCP1000 1.6TB cards to the two PCIe 8x slots (to produce a 3.2 TB Raid 0 data array of 8x 400GB NVMe SSDs).
My system is booting Windows 7 Professional 64-bit SP1 from a Samsung 850 Pro 2TB SSD, so I don’t plan to use the DCP1000 cards to boot from.

I’ve carefully researched major upgrades to my custom video editing workstation & to my laptop, and part of the upgrade includes two Kingston DCP1000 1.6TB SSD drives/cards (SEDC1000H/1600G), to be raided together, based on the following 3 reviews:
https://www.kitguru.net/components/ssd-d…ew-7gb-s-beast/
http://www.thessdreview.com/our-reviews/…mil-iops-14gbs/
https://forums.anandtech.com/threads/kin…d-card.2542328/

The reviews explain that explains that 2 DCP1000 1.6TB SSD cards (each of which contains 4 Kingston NVMe 400GB M.2 drives) in PCIe x8 slots in the same system will, approximately double the throughput to 14 GB/s.

My computer & software are all configured under Windows 7 Professional 64-bit. I cannot upgrade to Windows 10 Professional (because of lack of drivers for my motherboard), nor would it be an easy task to upgrade to Windows 8.1 Professional, because some of the software I have installed might no longer work.

In page 13 of the www.kitguru.net review, it is mentioned that this drive “supports Windows 7 and Windows Server 2008 R2 (via updates or Hotfix driver download)”, which is what is mentioned in the manufacturer’s site (https://www.kingston.com/us/ssd/enterprise/DCP1000) when I click on “Specifications”. However, in the manufacturers Support Page (https://www.kingston.com/us/support/tech…s?model=DCP1000), they mentioned "We do not support using this drive with Windows 7 or below."

All the new video editing software & hardware upgrades I’m installing work & are certified with Windows 7 Professional 64-bit, so hopefully I can also use this amazing drive in the configuration, Kingston’s SSD Storage Manager Software does support Windows 7 SP1.

Question 1:
I’d like to know if the Hotfix you mentioned in Post 1, Fernando, will work for my particular configuration, and it if is the “via updates or Hotfix driver download” mentioned by the manufacturer and the reviews.
Additionally, I’d like to make sure I understand how to properly set up this Raid 0 array, and what additional software I might need to accomplish this.

Question 2:
The Kingston FAQ, https://www.kingston.com/us/ssd/resources/dcp1000-faq mentions:
Any recent chipset supporting PCIe Gen. 3 is sufficient. For example, i5/i7 chipsets have been tested and validated. Intel E3-1xxx and E5-2xxx chipsets have been tested and validated. The E5s can be v2, v3, or beyond. (FAQ: DCP1000-02)
=> My processor, is Intel Xeon E5-2630. I can purchase v2, if needed, because it fits into my motherboards’ LGA2011 socket, but that’s an additional $650 and more installation work, so if I don’t need to upgrade my processor, that would be great.

Question 3:
The Kingston FAQ, https://www.kingston.com/us/ssd/resources/dcp1000-faq also mentions:
Yes. Intel RST will work with the DCP1000. Intel RST NVMe driver is only supported on some Intel chipsets. Please refer to Intel for more details: https://downloadcenter.intel.com/downloa…VMe-RAID-Driver (FAQ: DCP1000-15)
=> Asus’ support site (https://www.asus.com/us/Commercial-Serve…pDesk_Download/), lists Intel(R) Rapid Storage Technology Driver Software V12.8.0.1016 for Windows 7/8 32/64bit.(WHQL) for download, but I saw from Intel’s site, https://downloadcenter.intel.com/downloa…face-and-Driver, that V15.9.0.1015 should work on Windows 7 64-bit, and is the newest version available for Windows 7, which includes NVMe support. (I also found this informative Intel site for Windows 7: https://www.intel.com/content/www/us/en/…nd-storage.html)

Question 4:
Any other advice you may have to help me accomplish this Kingston DCP1000 1.6TB SSD drives/cards Raid 0 installation.

I’ve contacted both the kitguru team & the Kingston team, but am waiting for answers, and from what I read in your forum, you are extremely knowledgeable on this subject. I hope to make the purchase today or very, but it is not refundable, so I want to complete my research first.

=> Your advice is much appreciated, prior to my purchase, and thank again for everyone’s thorough research to date!

Best Regards,

Dan.

@DanMarshall :
Hello Dan,
welcome to the Win-RAID Forum and thanks for the detailed info about your current PC configuration and ideas!

Here is my short answer:
You should forget your plan to buy 2 NVMe SSDs and to configure them with your X79 chipset system as Intel RAID0 array. It will not work, because a much newer Intel system from 100-Series up with full native NVMe support is required for the creation of an NVMe RAID0 array.

By the way: The performance boost of an Intel RAID0 is only remarkable while processing VERY BIG SIZED files (e.g. Video Encoding). You cannot expect, that the speed will be doubled by creating a RAID0 array. The benchmark results (except the 4K ones) look fine, but you will not realize a big performance difference in comparison to a single NVMe SSD while doing your daily work.

What you can do is to buy an NVMe SSD of your choice, to insert it via M.2>PCIe adapter into a suitable PCIe slot, to add the missing NVMe BIOS support by following my guide (= start post of this thread) and to install Win10 or Win7 SP1 (the latter with integrated NVMMe Hotfix) in UEFI mode onto the NVMe SSD.

Regards
Dieter (alias Fernando)

Fernando,

Over the years I have learned more about my motherboards, BIOS’s, BIOS modding…and how to design and get everything to play well with each other (component wise) from your forum than any other place. So a BIG “Thank You” for maintaining this forum and making yourself available to answer our questions! (even some of our stupid ones)

I was reading this topic and was wondering if this is something that I need to delve into or not to get the most out of my Samsung 950 Pro that I have been using as my C: drive for Windows 10? I have had it installed on my Asus Rampage V Extreme for quite a while now and have never ran into any issues with an OS install. Windows has always seen my 950 Pro during install. I have been using either BIOS’s I modded with UBU or one of Sylar76’s so far.

Am I getting the most out of my system, performance wise? In your opinion, do I need to do this (as far as injecting NvmExpressDxe_4.ffs or NvmExpressDxe_Small.ffs into a BIOS)? The reason I ask is that when I ran Anvil’s Storage Utilities…my write speeds were about HALF of what you have for your benchmark in the “This is hopefully what you should get” photos?

Any thoughts on this would be greatly appreciated!

@Brew1Cool1 :
Thank you for your friendly words about this Forum.
Now to your questions:

  1. Although you can boot off your Samsung 950 Pro NVMe SSD (due to its in-box NVMe Option ROM), I recommend to insert the NVMe EFI file into the BIOS of your mainboard according to my guide (= start post of this thread).
    Advantages: The boot time will be shortened, you can install the OS in “clean” UEFI mode (with disabled CSM) and get >2 TB Disk Drives supported.
    Disadvantage: None
  2. If you want to boost the WRITE performance of your NVMe SSD, I recommend to read the start post of >this< thread. Most important is to check both Write-Caching settings within the “Policies” tab of the NVMe SSD.

Good luck!

Dear Fernando,
thanks for your help.
I modified as suggested the BIOS. Simply, the BIOS won’t let me flash the modified BIN. It simply says “error flashing system ROM”. I’m afraid it’s a matter of protection of some sort.

Yes, many mainboard manufacturers are trying to prevent the flashing of a modded BIOS.
You have to circumvent the specific protection, which has been built in by HP. That is why I gave you the advice to do a Google search for “how to get a modded HP BIOS properly flashed”.

Hello Fernando:

Thank you so much for your warm welcome, and for responding so quickly & informatively to my inquiry!!!

Your response is extremely timely, because thanks to you, I was able to make the correct purchase, together with the other equipment upgrades, and because it prevented me from purchasing incorrect equipment that is not easily refundable!

Your clarification about the performance boosts of raid being mostly applicable very large files (like Videos) is very helpful – Although my main need for this drive is for high end video & audio editing, even in high end applications, I often work with small video portions, so I would want the performance gains to be as consistent as possible across the board. – I know that this is not the case for in general, and that smaller files take longer to process, but it is good to know that the difference is likely to be dramatic between very large and small files, and that I can still get similar performance of RAID arrays with a single high speed drive.

Since it definitely does not pay for me (both monetarily and time-wise) to upgrade my motherboard to support an Intel RAID 0 NVMe array, and fortunately, because you confirmed that your BIOS update & Hotfix solution will work for Windows 7 SP1, I pursued the option you suggested, and identified & purchased this combination:

Samsung 2TB 960 PRO M.2 Internal SSD (https://www.bhphotovideo.com/c/product/1…60_pro_m_2.html)
+
Angelbird Wings PX1 PCIe x4 M.2 Adapter (https://www.bhphotovideo.com/c/product/1…x1_pcie_x4.html ; https://www.angelbird.com/prod/wings-px1…#specifications)

The benefits of this combination are great all around:
1. I can get a working 2TB drive inside my current computer, achieving speeds of 3,500 MB/s for Read & 2,100 MB/s for Write, using a PCIe 3.0 x4 slot, and for a total cost of $1,320, and a life/endurance of 1200 TB!!
The RAID alternative would have been a 1.6TB drive for $1,703, with an approximate life of 1,580 TB (4 x 395 TB, the life of each of the Kingston 400 GB drives), and using a PCIe 3.0 x8 slot.
2. Moreover, I have 4 available slots in my motherboard (2 x4 & 2 x8), so I can, if needed, add 4 x 2TB drives, whereas with the Raid solutions, I would have had maxed out at 6.4 TB using the 2 x8 slots, if I would have purchased the 3.2 TB versions of the drive.
Note: The largest NVMe drive available is 2TB, but conceivable in the future, I could get a larger one, if needed, when such capacities become available, thereby further maximizing my motherboard space and power usage.

At this point, I have one more question for clarification, regarding your last paragraph, before I proceed:
What you can do is to buy an NVMe SSD of your choice, to insert it via M.2>PCIe adapter into a suitable PCIe slot, to add the missing NVMe BIOS support by following my guide (= start post of this thread) and to install Win10 or Win7 SP1 (the latter with integrated NVMMe Hotfix) in UEFI mode onto the NVMe SSD.
Question:
Given that I already have Windows 7 Professional 64-bit SP1 installed, and that I’ve identified & purchased the NVMe M.2 to PCIe adapter & a matching NVMe drive:
a. is my next step to install the Hotfix?
b. or should I first add the missing NVMe BIOS support to the AMI bios? (I want to be clear on this, before I learn the procedure, and modify the BIOS, which will be a first time for me.)

Thank you again & have a great evening!

Dan

@DanMarshall :
To get the best possible performance you should use the NVMe SSD as system drive (with the OS and the boot sector on it).
This is the procedure I recommend:
1. Insert the required NVMe module into your mainboard BIOS according to the start post of this thread and flash the modded BIOS by using the ASUS USB Flashback feature.
2. Prepare an UEFI mode bootable USB Flash Drive with the desired OS Image (Win10 or Win7 SP1 with integrated NVMe Hotfix) by using a tool like Rufus.
3. Unplug all other HDDs/SSDs, boot off the USB Flash drive and install the OS onto the NVMe SSD.
4. Once the OS is up and running fine, you can reconnect the other Disk Drives.