Boot from NVMe (SM951) on a Supermicro Server Board X10DRi-T (Intel C612 Chipset)

Hi experts,

I need your help, please.

I just built a new Server based on a Supermicro Board X10DRi-T (Specs: http://www.supermicro.com/products/mothe…00/x10dri-t.cfm )
There is only one Harddrive… the SM951 that is attached via an PCIe Adaptor.

I am in uEFI only-Boot Mode and PCIe option Roms are configured to EFI.

I can boot from Windows 2012R2 DVD and start install, the SM951 drive is properly detected, files are copied…looks good so far… but after the install-procedure
finishes the first steps and goes into reboot for completing the setup, I don´t get the SM951 as a new boot option…
SMC Support says: no, doesn´t work, but reading the forum here makes me hope again… I feel, there must be a way! Windows installer is detecting the drive
without the need of any additional drivers…

I am stuck at booting into the EFI-Shell, but I absolutely do not know, what to do next. Tried for two days now and my eyes are already bleeding from reading
google results… This forum seems promising…

If the BIOS can´t be tweaked by whatever means… is there a way to start the Bootloader from another drive and than continue starting the Win2012 OS from the SM951?
If so, how could I obtain that?

Thank you so much in advance for your support. If you need further Infos, Screenshots etc., just let me know!

regards,
yves

@ yves030:
Welcome at Win-RAID Forum!

A PCIe connected NVMe SSD needs some special EFI BIOS files for the NVMe support to be able to boot off it. Maybe the Samsung SM951 NVMe SSD needs additionally a special BIOS file delivered by Samsung.
For details please have a look into >this< thread.
Questions:
1. Does the original BIOS of your mainboard contain the required BIOS files?
2. If not: Have you already tried to insert them?

Regards
Dieter (alias Fernando)

Hello Fernando,

thanks for your answer. I have already read the thread you mentioned… thats why I meant that this forum seems promising… but…
I am not an expert in modding a BIOS… I just fear to break the BIOS not having a chance to repair it if something goes wrong…

I extracted the BIOS file with the MMTool and there is no module with a name that hints to NVMe. I took another BIOS file for the MoBo
X10DRD-iNT, which has NVMe support (dedicated ports on the board) but even there I could not find a module that has a name with NVMe
in it… Each file has a lot of modules that only have a GUID… I cannot say, if some of them may be the right ones.

As I read here, inserting modules from other BIOSes MAY work, but I when I remember CodeRush´s words in the thread you mentioned, I think
chances are very little…

I would indeed give it a try, if I could be 100% certain not to make my system unbootable / unrepairable… but I am experienced enough to
know, that nobody will give me that guarantee…

So…? What can I do?

I upgraded the BIOS to the latest Version for this MoBo i got from SMC website… same same… even worse (but unfortunatelay I did not check this
with the old BIOS) EFI seems completely broken here. It does not matter, what setting I change in the BIOS, the System will NEVER recognize
ANY EFI-Partition… even if I boot my Win2012 install via UEFI DVD and choose a brand new HDD… the HDD will be partitioned with a GPT Layout
in the typical manner, files will be copied, but after reboot… no bootable EFI-Partition…

regards,
Yves

If you open the BIOS file with CodeRush’s UEFITool and expand all visible GUID numbers, you will see within the rightmost column the names of the modules. Much easier: Run the UEFITool, open the BIOS file and search for the text "NVMe".

That is simply the truth.
Nevertheless the insertion of original not present BIOS modules is much less risky than the modification of originally present BIOS modules.

Ask the Supermicro Support for a solution.

How did you detect the missing EFI partition?
Did you unplug all disk drives except the desired target drive and the optical drive, which contains the bootable OS image?
By the way: The by far better way to get a Windows OS installed is to let the tool Rufus create a bootable USB Flash drive.

A quick search in the BIOS of X10DRD-iNTP shows “NVME” string only in the BIOS setup to enable or disable the 2 UEFI NVMe Option ROM (string “Onboard NVMe1 Option ROM”)
Which may seems logical if you think that Supermicro partners for PCI-E SSD with Intel (DC P3600/P3700) (see http://www.supermicro.com/products/nfo/P…cfm?show=Intel) and that these cards don’t need NVMe EFI Module in BIOS to boot (provided the system is UEFI 2.3.1 compliant) since they come with an UEFI Option Boot ROM -aka bootloader in Intel speak- in the cards themselves.

Hi,

thank you.
Meanwhile after spending further frustrating hours… I came to the idea to completely clear the CMOS instead of relying to "set to optimal default"… after that I reconfigured the BIOS et voilà… I could
make a normal EFI install on a normal HDD.
Unfortunately this does not solve the original problem… booting from the PCIe NVMe Card is still not possible.

@schroeder:
Do you think, I would have more success with the intel card you mention? what about the 750er… not an enterprise class, but cheaper and would be ok for my purpose.

@all:
1.) does anybody know if it would be possible to mount the PCIe NVMe Card manually in the EFI Shell and continue booting then?


2.) a bit off-topic, but: as I use EFI, bootmanagers like EASYBcd do not work… is it possible to boot from C, but load the OS from the other (NVMe) disk then? IF so, how
could I achieve that?

thanks,
yves

@yves030

.Always a good idea to follow the BBP (BIOS Best Practices) : Recap customizations made to BIOS setup, Restore Optimized Defaults, flash from a freshly formatted media, Clear CMOS, Restore Optimized Defaults, then re-customize.

.Your post made me think you wanted to borrow the NVMe part from X10DRD-iNT to put in X10DRi-T. But basically, X10DRD-iNT is just a standard SMC board with an AOC-SLG3-2E4R integrated on it (with PCIe ports voluntary limited in in order to give the adapter more PCIe lanes). Nothing more.

.As SMC supports them, yes you would have more chance. Does it apply also to 750 ? If you buy it as a card, not as a bare SSD, I can say that DC3x00 and 750 shares the same bootloader. So it should be OK.
Also, check this : http://www.supermicro.com/support/faqs/faq.cfm?faq=21987
I might add : try to limit the speed of PCIe slot where you put the card (in IIO Configuration) if Auto setting is not clever enough and if you intend to add other cards that share PCie lines.

.Be sure to check the height and length of the card you intend to buy so that it doesn’t conflict with chassis, heatsink, RAM or fans. This can be a real problem in a server configuration.

.Kingston HyperX Predator PCIe SSD might be another choice (not an endorsement).

I just put up a thread called "Moving your Win 7 install to your Samsung 950 Pro NMVe RAID" on the same section General: Sorage Drivers that you post this. I think there are parts of it that will help you out.

Yves,
After some angst I have found your post here

I am in a similar position
- Supermicro X10 DRi-T motherboard with 201609 BIOS
- PCIe Samsung Hard disk attached into PCIe slot 1 and BIOS on that slot set to UEFI
- Trying to install Windows 2016 Server

So at install time, I boot from either a USB key or DVD (same result). The Install program correctly finds the PCIe hard disk and so starts the install
Then it finishes up and goes for the reboot.
It never boots to the OS, instead it ends up in the EFI shell with at Shell> prompt
----
I tweaked loads of options e.g. boot mode set to UEFI or dual or Legacy and CSM off etc, but no combination worked so far.

Did you get it working or does anybody out there have some Supermicro specific comment to help?

marcusb,

I am running a Samsung 950 Pro on a Angelbird Wings Px1 adapter card in NVMe with no problems. It is on my Supermicro X10DAi motherboard.

Just so you know, your drive WILL NOT show up in the boot order. What you need to do is make sure "Windows Boot Manager" is activated in the boot menu after you install Windows.

So here is a check list:

I would try it without the UEFI shell so it less confusing.

1. Make sure you have latest BIOS
2. Ensure that the PCI slot your adapter is installed in is set to "EFI"
3. Make sure your Boot mode is set to "UEFI"
4. Make SURE you select UEFI CD/DVD Rom or UEFI USB to load windows from (This is for Windows installation only).
5. Ensure "Windows Boot Manager" is active in the boot list AFTER you install windows.

@marcusb :
Welcome at Win-RAID Forum!

Please follow the advices given by our Forum member moore327.
Good luck!

Regards
Dieter (alias Fernando)

Fernando,

The difference is that Windows Boot manager is not available. If it was then of course there would be no problem. The issue for me is that the DRi-T motherboard with 2.1 Sept 2016 latest bios cannot see the device in the PCIe slot.

Please can you perform this non destructive test on your motherboard

Go into the Bios
On the Boot Screen
Perhaps on the boot override selection
Select EFI shell
Once in the shell > prompt

map -v -b

You will see a list of devices found by the motherboard doing the boot process

This is independent of any Operating System

Ignore all SATA devices in the listing

Now , I bet you DO SEE the PCIe Hard disk and its paritions there

Please confirm

I get nothing and hence its cant find the Boot manager partition which is one of the 4 partitions created on the PCIe disk before the reboot.

Pls do your test and send me a screenshot this would be useful.

@marcusb :
What do you expect from the test I should do?
I am pretty sure, that my currently M.2 connected Samsung 950 Pro will be detected and shown.
Which are the conclusios for you?

I explain that Windows Boot Manager in NOT VISIBLE AT ALL in the list of devices that can be booted from

Also I told you technically why

The reason is that the motherboard boot process does not correctly find any NVMe device in the PCIe slot even when that bios slot is shown as EFI

So if it works for you , and you have an EFI shell in your BIOS I ask you to make the test and this will show you WHY YOU HAVE a Windows Boot Manager entry and I do not

Here is my map display in the attachment. You will see that a SATA boot set of devices ONLY IS SHOWN. Not a single BLOCK DEVICE ON THE PCIe bus appears

I rest my case

22 after sata map display.jpg

marcusb,

I can tell you that the PCIe slot that my M.2 adapter is in, it does NOT show the drive. My motherboard is very similar to yours. Why don’t you try and install windows without the UEFI shell and just have the slot that your adapter is in set to “EFI” and your boot set to "UEFI"

Please give this a try???

I think you have a setting incorrect in the bios. Your next option would be to contact Supermicro support to see if they can resolve your issue.

You have to also remember that Fernando is running a desktop board. We are running server board and they sometime can be real picky on the settings…

marcusb,

I think i just found your problem. See this support issue over at Supermicro:

http://www.supermicro.com/support/faqs/faq.cfm?faq=22023

Question
I’m using your X10dri-t and want to boot from the Samsung SM951 (with adapter on pcie) is this possible ?
Answer
No, the BIOS lacks the necessary code currently.

Hi,

thanks for reactivating the thread after one year and trying to solve again… (I just got the new-post-email a few days delayed, but no prob…)

I do not own the supermicro server any more… I have access to it, but it is on production and I do not have a spare NVME Drive to mkae tests with.
I "solved" the problem by using a normal SATA SSD for booting and installing the SQL Server for performance-boosts on the NVMe, which I could
access after boot as a normal drive…

somehow it was funny to read, that after one year the same members posted almost the same answers as one year before… and btw… the support-issue
at supermicro mentioned by moore327 was opened by myself there… the support was quite bad… I am still quite sure, that it would be possible to boot directly
via NVMe with this board, but I do not have enough knowlege for tweaking uefi skripts and so on, nor do I have the time to jump deeper into this.

thanx for your support anyways! Great forum, great members!

regards
yves

Looking at the EFI shell is a desperation measure to prove that there is something wrong with the BIOS.

OBVIOUSLY I have set the slots to EFI, the boot is set to UEFI only (not Dual) and CSM is switched off

The machine boots from the USB key, the windows install DOES find the M2 PCIe disk, it DOES install windows to it.
But on reboot, (with the install key out) the boot goes nowhere because the machine BIOS cannot find anything to boot from.

Why?
Because at the BIOS level it could not find any bootable Hard disk, in this case the only one that is attached is the M.2 PCIe disk in a PCIe slot.



So my request was that IF you have a server board, and it is a X10 DRI0-T, and if it does magically (or not) boot to the PCIe drive, then
anyway boot to the EFI shell
At the prompt you would type

map -b -t hd

to show all the hard disks

then if the M2 PCIe disk is really showing up please paste the path contents here so I can try to figure out if there is anyway to run another EFI shell command to perhaps discover the card.
Oh and tell me what slot your PCIe disk is int.



I’ve contacted Supermicro support more than 2 months now, they are good but so far they have not had a DRI-T board to replicate on.



Further debug in analysisng the PCIe disk shows that windows install really does write all the correct information to the PCIe hard disk on installation i.e. it creates the correct partions EFI, RECOVERY and OS
It is just that there is no entry into the boot list for the drive (aka Windows Boot manager) and that is consistent with the fact that the boot UEFI BIOS finds nothing


regards marcus.

Hi marcus,

thanks for your efforts. Unfortunately I cannot provide the requested information, because the server is in production and boots from a SATA SSD.
After boot, the PCI SSD is visible and accessible. I am afraid to kill a working machine, if I change anything… this setup took a long time for me, and
I cannot afford to interrupt production times.
But I have another machine, where I am actually trying the same… maybe you can provide some useful information there too?

Samsung PM951 / SM951 on a Asus Rampage IV Black (X79) - is it (meanwhile) possible

thanks anyways,
yves

I am new to this forum but I also was searching the Net up and down for answers on booting from NVMe from a Supermicro X10DAX which also has the C612 Chipset.
I have tried the following NVMe’s: Samsung OEM SM951 256GB, Samsung 960 EVO 250GB, Corsair MP500 120GB, and a few other cheaper one from OCZ and I believe the other was a Plextor without any success. I can not see any of these in the device list. Then I cam across a Samsung 950 Pro 512GB and to my surprise this one worked. Not only in UEFI but with a Legacy install of Win Server2012R2!! It baffles me why this drive works but none other regardless if it is an UEFI install or not.
I would love to use a different smaller NVMe drive with my board because it seems a waste of money and space running a 35GB system install on a NVMe with 512GB of space, but for now I’m OK with it.
Just thought you may like to know because I believe it is somewhat related to your issues.