[Request] E3-1200V4 CPU support for SuperMicro X10SLH-N6-ST031

I need some help please.

I have a supported SuperMicro X10SAE board that fully supports E3-1200V4 processors. I have another SuperMicro board, the X10SLH-N6-ST031, that was apparently some OEM board and the BIOS has not been updated to fully support E3-1200V4 processors. Both boards are based on the C236 chipset.
I have tried copying the E3-1200V4/Broadwell microcode to the X10SLH-N6-ST031 BIOS, but that was not enough to get my V4 CPU to work on the X10SLH-N6-ST031 board.

Question: In addition to microcode, what else should I copy from a known working BIOS (on the X10SAE) over to the X10SLH-N6-ST031 BIOS to enable the E3-1200V4 processors?

I’m new to BIOS modding. If this is covered in a guide somewhere, would someone please point me in the right direction, because I’m not sure what to look for. Thanks

I’ve attached a BIOS I modded to include NVMe support (the NVMe support works) and E3-1200V4 microcode, but apparently just the microcode is not enough–this is where I could use some help. I’m hoping to learn what needs to be done, rather than just have someone do it, but if someone wants to help, I won’t complain
For reference, The latest BIOS for the X10SAE board ( https://www.supermicro.com/en/products/motherboard/X10SAE ) works with the E3-1200V4 chips and has the same C226 chipset.

x10slh-n6-st031-nvme-v4.rom.zip (4.1 MB)

Would someone please help me get E3-1200V4 support working on the attached BIOS for the SuperMicro X10SLH-N6-ST031?

@mdog474 - Did you fix FIT after you inserted the microcode? If not, this may be the issue.
Or, you may need to ask them directly for custom BIOS, sometimes they will make for you

Please link me to the stock BIOS download page for this model, you have too many model names here for me to be sure what’s what
Plus, Supermicro BIOS download packages often have different names than the actual board model, so always a mess for me with Supermicro if user does not link to BIOS download page

Ahh yes, FIT is broken in your attached file, this may not be the main/only issue, but this needs corrected before you can be sure simple ucode insert does not work here
Also, what is the exact E3 V4 CPU you are trying, there is no E3-1200V4. You did see there is four microcode volumes to be edited, correct? I don’t have stock BIOS, so I can’t compare, to see what you inserted/where

The X10SAE has totally different ME FW type (SPS v3 in your NVME mod above vs ME V9 in X10SAE), which you can’t simply change, so if it comes down to this, there will be nothing you can do here

@Lost_N_BIOS Here is the most recent BIOS. The challenge is that the X10SLH-N6-ST031 is an OEM board and SuperMicro does not have a link available for the board or BIOS. I pulled this BIOS image off directly off the BIOS chip on my X10SLH-N6-ST031 board using a CH341APro.

I’d greatly appreciate your help in updating/fixing the E3-1200V4 support, and would love to understand what steps it takes to fix it so I could do it myself next time I run into a similar challenge.

X10SLH-N6-ST031-orig.rom.zip (4.12 MB)

BIOS from X10SLH-N6-ST031-orig.rom.zip is already has support for Broadwell.

@DeathBringer I have an E3-1285L V4 that does not work on the X10SLH-N6-ST031 with the X10SLH-N6-ST031-orig.rom loaded, and the E3-1285L V4 works fine on an X10SAE with the latest version of the BIOS for the X10SAE (The both have the same chipset: https://www.supermicro.com/en/products/motherboard/X10SAE ), so something must be missing/not up-to-date/not-quite-right on the X10SLH-N6-ST031-orig.rom BIOS.

That isn’t microcode’s issue. Because X10SLH-N6-ST031-orig.rom and latest BIOS for X10SAE (X10SAE8.525) use the same version of microcode.

@DeathBringer Do you have any idea what else could be causing issues? What about the FIT that @Lost_N_BIOS mentioned. I don’t know how to check that. Maybe the FIT has issues in the X10SLH-N6-ST031-orig.rom BIOS.

X10SLH-N6-ST031-orig.rom has correct FIT, but your mod x10slh-n6-st031-nvme-v4.rom hasn’t.

@DeathBringer Do you have any idea what I should check to try to figure out why X10SLH-N6-ST031-orig.rom won’t POST with an E3-1285L V4?
Also, how do you check that the FIT is valid/correct?

Have you other Xeon E3-1200 V4 series?
BTW: I’m not a tutor.

@DeathBringer I only have one right now with a different model that should arrive in 1-2 weeks–I will try that one when it arrives.
Re: Tutoring–I’m not looking for private tutoring , but looking for pointers so I can learn to fish rather than have super-helpful folks like you do all the fishing for me.

Thanks for stopping in DeathBringer!

@mdog474 - Tonight, I will take your original dump and do NVME mod and update microcodes for you with fixed FIT, then you can see if that helps or not.
If it does not, there is nothing else I can do to help, maybe only DeathBringer can help with adding compatible CPUs that are possibly not compatible or blocked, I don’t know anymore on doing this if/when microcode addition does not help.

You can see broken FIT in UEFITool NE version, compare before/after BIOS side by side and you will see the issue
I wrote a guide that is outdated on how to fix here, but you can still use it, if you don’t want to wait on me to do this - [GUIDE] Update CPU Microcode + Fix FIT Using UEFITool / Hex
The guide is only outdated, because you can now get the correct offset much easier and no math needed, by using UEFITool NE 55 (I think) up to 57 (for sure), I just have not had time to update with the new info/method.

* Edit - I suspect, the ME FW type may be part of the issue here, I’ve seen broadwell working on regular ME FW but have never seen it on SPS ME FW (it may be possible, just I’ve never seen, but I also don’t look at this often either, so it may be fine and common too)
But, this isn’t something you can change, the ME FW type. However, if it’s just a setting in ME FW, that you can change, but I doubt it would be just a setting, if the ME FW in general is part of the issue

@Lost_N_BIOS Thanks for the tips and I’ll try out your modded BIOS once it’s posted and report back!

@mdog474 - You’re welcome. I am making BIOS now, so will be done in a few minutes. Please also see my edit above

* Edit - @mdog474 - For now, here, please test and see if you can boot to BIOS or not with this BIOS. This has fixed FIT + ucode updates only to one volume only, the main DXE, microcodes in PEI volume (x4 volumes) remain untouched.

The NVME insert causes it’s own issues, no matter what tool/method is used, padding above microcode is added and or padding above files above the nested volume get removed (or those files themselves get removed too)
So, all this may be what’s causing the fail for you too. So for now, test without NVME insert. I will sort that out later for you, it may take a few hours to work around and find solution to not having these things happen on insert
On this, was the BIOS you made with NVME insert bootable? If yes, great to know, if it is OK with other CPU, then I will fix the BIOS you made with the above ucode changes and fix FIT later tonight, if the above BIOS I made boots with the E3-V4 for you.

@Lost_N_BIOS Well that didn’t work out so well. The bios updated successfully, but now with a E3-V3 CPU it won’t get past post code 71.
I’ve recovered the BIOS (put the BIOS recovery jumper on 2-3, then boot with USB drive with original BIOS named Super.ROM, press control-home until double-beep then recover BIOS).
Now I’m back to the original setup.

@Lost_N_BIOS : Just to make sure I’m doing it right, what command and options do you use to update the BIOS?

I’ll be offline for 3-4 hours and I can try another update then.

@Lost_N_BIOS After recovering the original BIOS, I flashed your BIOS.

The flash.bat file I used is executing: afudos %1 /P /B /N /K /R /ME

The BIOS flash completed successfully.

I can load and run memtest with the E3-V3 processor, but with the E3-V4 processor, the board won’t POST (open applying power the fans run at full speed and nothing is displayed on the screen).

Oh, and in answer to your question, the BIOS that I made with NVMe support was bootable on the E3-V3 processor, and I was able to install and boot from an NVMe drive using a PCIE to M.2 NVMe adapter.

Here, try same mod again, but this time I only changed CPUID 40671 to updated version & Fix FIT
I used MMTool 4.50 and CPU patch tab to change the microcodes, then fix FIT is done via process with two other tools UEFITool NE 57 + UEFITool 25.0 and hex editor
Here is outdated guide, you can get microcode address quickly with UEFITool 57 now, just click on the microcodes indivudually in second microcode volume at end of main DXE volume of the BIOS
Click on stock BIOS microcodes in FIT and it will take you to correct place, so you can them see where to go in broken fit BIOS to get the address to fix FIT
[GUIDE] Update CPU Microcode + Fix FIT Using UEFITool / Hex

The issue may be due to I updated other microcodes (306C1/306C3), not just the one for 40671 CPUID, you didn’t say what E3 V3 CPU, so I can’t be sure what you are using?

With your mod BIOS, the one with NVME insert and 40671 Rev 22 insert, could you boot to BIOS with E3 V3 CPU, or did you never test? Please test that now, if you have not already.
Then test this BIOS here, with E3 V3 and then if fails, go ahead and try E4 V4 just so we can see outcome

Really, the original 2018 microcode that’s in there on stock BIOS should be compatible, if microcode was part of the issue, because this CPU was released in 2015.
So, I don’t think microcode has anything to do with this issue. I assume this is due to either a block/allow list, or other parts of the BIOS and or SPS ME FW are not compatible with that CPU.
For this, only DeathBringer would be able to look or help, I am not skilled enough in that area to do anything

Since this has recovery jumper and you know it works, please also test a NVME mod BIOS only, without microcode insert, can you boot to BIOS with that, or it’s bricking too?

* Edit - Pre-Post - I was just about to post this reply above, and then you made another post. That post is confusing! First you said you could not boot and had to recover with BIOS I sent you, then you just now said you can post to BIOS??!??!
Good to hear that edit for NVME insert did not break this BIOS. That is a ton of bad changes, interesting to see it’s still bootable with all that incorrect stuff done in that volume (talking about the added and remove paddings at top and bottom)!

So, with the BIOS I sent you and V3 CPU, what microcode revision do you see loading in the OS, check like this with HWINFO (and, also see if you can see in BIOS main or info/CPU areas, if it shows microcode revision there too, as it may differ from what you see in windows)


I want to know this, because there is 4 other microcode volumes we’re both not touching right now, that still have the old/orig microcodes in them, so I want to see if BIOS and or Windows is showing the old or new one being the one that is loaded while you are using the V3
Because, if it’s showing the older version, then that means we also need to edit one or all of the other 4 microcode volumes to update them too. But, as mentioned above, I really don’t think this is microcode issue, or it would be booting with original BIOS/Microcode, since that has compatible microcode already in it.

Try to disable integrated graphics in BIOS (with supported CPU). And try to boot with your E3-1285L V4

@Lost_N_BIOS @DeathBringer Here’s what I’ve tried:
Installed the latest BIOS from @Lost_N_BIOS , set the graphics to external, and verified that with my E3-1231 v3 processor, that the machine boots using the PCI-E GPU. Swapped to use the E3-1285L V4, and the machine does not POST, does not beep. The fans run full speed and nothing. Bummer. Any follow-up suggestions?

This board seems to be what the X10SLH-N6-ST031 board is based on, I wonder if anything can be learned from looking at the BIOS from this board–the X10SLH-F: https://www.supermicro.com/en/products/motherboard/x10slh-f