Flashing Dell H310 for Windows Server 2016

Notice: Page may contain affiliate links for which we may earn a small commission through services like Amazon Affiliates or Skimlinks.

Cipher

Member
Aug 8, 2014
159
15
18
53
I picked up a Dell H310 for a Supermicro system I'm building (846 chassis with SAS2 expander, X9 Mobo) and before I install this HBA I was planning to flash it as has been described in numerous posts. The main reasons I've seen listed for flashing these cards to IT mode is:

-Performance, especially for those interested in software RAID instead of hardware RAID. This may be related to posts I've seen describing an increase in queue depth with IT firmware.
-Removal of the bios from card so server boots/reboots are faster
-Leveraging LSI drivers instead of Dell drivers

Given this, I have two questions:

1) I won't be using hardware RAID, but I'll be testing some software RAID implementations (Storage Spaces/Storage Spaces Direct, SnapRaid) on Windows Server 2016. However, most flashing articles I've read reference technologies like ZFS so I'm wondering if there is as big a benefit to flashing if I'm using Windows Server 2016 and playing with it's various technologies?

2) As of today, if the P19 or P20 firmware recommended when using one of these cards in a Windows Server install?
 

Cipher

Member
Aug 8, 2014
159
15
18
53
Just successfully finished the flash using the online walkthrough by techmattr. Quick and simple once you pay attention to the steps.

Terry, thanks for confirming the differences in the P20 releases, I ended up going with the latest 20.00.07.00.

Sleyk, thanks for the great info and for adding another entertaining post. I always get a laugh when I read one of your posts!

Now it's time to connect this "LSI" card to my backplane with that magical single blue cable from Supermicro and then and figure out what drivers, management software I should use. Maybe I also need to check the firmware on the backplane as well? More research!
 

Fritz

Well-Known Member
Apr 6, 2015
3,386
1,387
113
70
I just had to upgrade a H 310 for use with FreeNAS. I accidentally shredded my notes on the subject and my poor memory had forgotten the details. I searched here and several other places for the pertinent info and managed to piece it all together and get the job done. But nowhere did I find a complete set of instructions. Nor did I find detailed info on the some of the steps. But I did manage to revive some critical details from memory after seeing what I had previously slogged through. Why there is no COMPLETE set of instructing on getting to P20 is beyond me. Yes, the info is out there, just not in one place. :(
 

T_Minus

Build. Break. Fix. Repeat
Feb 15, 2015
7,641
2,058
113
I just had to upgrade a H 310 for use with FreeNAS. I accidentally shredded my notes on the subject and my poor memory had forgotten the details. I searched here and several other places for the pertinent info and managed to piece it all together and get the job done. But nowhere did I find a complete set of instructions. Nor did I find detailed info on the some of the steps. But I did manage to revive some critical details from memory after seeing what I had previously slogged through. Why there is no COMPLETE set of instructing on getting to P20 is beyond me. Yes, the info is out there, just not in one place. :(

Not to 'throw' it in your face but @whitey has posted it at-least once in these forums.
I don't have the link handy or i'd link to the post / thread.

I have ~ 10 cards to flash so when I do them I'll share the link :) as I'll have to go look for it again myself, since it's been a couple months since I did my last handful.

If you need it now search WHITEY in advanced search and list by thread to make it easier/faster to avoid reading the same threads looking for the guide ;)
 

Fritz

Well-Known Member
Apr 6, 2015
3,386
1,387
113
70
Part of my gripe is this, it take a total of what? 4 commands? to get the job done. When you're searching for these magical commands you have to slog through the BS like the link you posted. Why can't people just list the pertinent info up front and then go off on an ego driven tirade. I wasn't looking for a novel on the subject, just the info needed to get it done. :(
 

rubylaser

Active Member
Jan 4, 2013
846
236
43
Michigan, USA
These are directions to flash via FreeDOS or UEFI and are thorough to explain both methods. If the page as too much content or you are an expert in the matter, just move along.

This process works and it may help others to better understand the process instead of pumping a few commands in that they don't know how to troubleshoot if things go sideways.

Also, what part of that page was an ego tirade?
 

Fritz

Well-Known Member
Apr 6, 2015
3,386
1,387
113
70
Guy, just forget it. The above was my frustration escaping at the seams. :(
 

MartiniGM

New Member
Jul 29, 2016
7
2
3
47
These directions work great. I've flashed 6 H31p's like this.

Updated: SAS HBA crossflashing or flashing to IT mode, Dell Perc H200 and H310
I just got second Dell H310 and I had planned to follow the guide you've linked to...

..but I found a much easier way - at least if you're running Windows. Just download the official P20 firmware. Unpack the archive and copy the files 2118it.bin, mptsas2.rom and sas2flash.exe (from x86 or x64 according to your Windows) to the same directory and open an elevated cmd prompt and type one command.

Code:
d:\sas2flash_win_x64_rel>sas2flash.exe -l Flashlog.txt -o -f 2118it.bin -b mptsas2.rom

LSI Corporation SAS2 Flash Utility
Version 20.00.00.00 (2014.09.18)
Copyright (c) 2008-2014 LSI Corporation. All rights reserved

  Advanced Mode Set

  Adapter Selected is a LSI SAS: SAS2008(B2)

  Executing Operation: Flash Firmware Image

  Firmware Image has a Valid Checksum.
  Firmware Version 20.00.07.00
  Firmware Image compatible with Controller.

  Valid NVDATA Image found.
  NVDATA Version 14.01.00.00
  Checking for a compatible NVData image...

  NVDATA Device ID and Chip Revision match verified.
  NVDATA Versions Compatible.
  Valid Initialization Image verified.
  Valid BootLoader Image verified.

  Beginning Firmware Download...
  Firmware Download Successful.

  Verifying Download...

  Firmware Flash Successful.

  Resetting Adapter...
  Adapter Successfully Reset.

  Executing Operation: Flash BIOS Image

  Validating BIOS Image...

  BIOS Header Signature is Valid

  BIOS Image has a Valid Checksum.

  BIOS PCI Structure Signature Valid.

  BIOS Image Compatible with the SAS Controller.

  Attempting to Flash BIOS Image...

  Verifying Download...

  Flash BIOS Image Successful.

  Updated BIOS Version in BIOS Page 3.

  Finished Processing Commands Successfully.
  Exiting SAS2Flash.
No DOS/UEFI boot disk hassle. Don't get me wrong.. I like the DOS environment but unless you're a non-windows user just flashing from Windows is the short route. Of course what you miss using this method is the feeling of technical black magic voodoo and bragging to your friends about the process afterwards. ;)

My two cents. :)
 
Last edited:
  • Like
Reactions: Sleyk and Fritz

ttabbal

Active Member
Mar 10, 2016
747
207
43
47
Nice that it's possible in Windows! That will save people some hassle for sure. Doesn't help me, but that's OK! I did one of these with DOS. The hardest thing was getting the tools to work. First the USB didn't want to boot, then I picked the wrong option at the boot menu so sasflsh.exe crashed... Took me a couple tries to get that one. I never did get the SAS address read to work, so I just made one up. :D

I'm surprised it let you jump right to IT mode. Mine complained that you can't go from IR->IT unless I used an old version (p7 I think). After that I had to reboot and upgrade it. But it's running nicely in the server now.
 

Terry Kennedy

Well-Known Member
Jun 25, 2015
1,142
594
113
New York City
www.glaver.org
Nice that it's possible in Windows! That will save people some hassle for sure. Doesn't help me, but that's OK!
Be aware when flashing any controller while running an operating system that also expects to talk to the drives on that controller:
  • If the firmware update process reboots the controller, that means that all the devices on that controller will likely disappear from the operating system and then reappear. This can cause problems (for example, if the operating system decides that the volume has been damaged / marked offline).
  • If the firmware update process doesn't reboot the controller, you won't know until a lot later on (when you reboot the system for some other reason - after all, if you were going to reboot it right away you could just use the DOS flash utility and avoid the hassle) if the new firmware will work as expected. For example, lets say you were running LSI P19, flashed the first buggy P20, and didn't reboot for a month. When your drives started dropping offline after that reboot, would you remember that you'd updated the controller a month ago, or would you think you had a drive problem?
  • While less of a problem these days, early Windows flash utilities were rather twitchy due to both problems with the utilities and the general flakiness of Windows at the time. Some manufacturers decided to permanently avoid the issue - for example, many Dell systems have a Windows-based BIOS update utility, but all it does is put the firmware blob in memory, leave some "magic footprints" for the existing BIOS to discover and perform the actual update, and reboot.
 

MartiniGM

New Member
Jul 29, 2016
7
2
3
47
Nice that it's possible in Windows! That will save people some hassle for sure. Doesn't help me, but that's OK! I did one of these with DOS. The hardest thing was getting the tools to work. First the USB didn't want to boot, then I picked the wrong option at the boot menu so sasflsh.exe crashed... Took me a couple tries to get that one. I never did get the SAS address read to work, so I just made one up. :D

I'm surprised it let you jump right to IT mode. Mine complained that you can't go from IR->IT unless I used an old version (p7 I think). After that I had to reboot and upgrade it. But it's running nicely in the server now.
flashutils.PNG
It seems that most major operating systems have flash utils and can perform in OS flashing including Linux, FreeBSD, Solaris, ESX and - as mentioned - UEFI, DOS and Windows.


Be aware when flashing any controller while running an operating system that also expects to talk to the drives on that controller:
  • If the firmware update process reboots the controller, that means that all the devices on that controller will likely disappear from the operating system and then reappear. This can cause problems (for example, if the operating system decides that the volume has been damaged / marked offline).
  • If the firmware update process doesn't reboot the controller, you won't know until a lot later on (when you reboot the system for some other reason - after all, if you were going to reboot it right away you could just use the DOS flash utility and avoid the hassle) if the new firmware will work as expected. For example, lets say you were running LSI P19, flashed the first buggy P20, and didn't reboot for a month. When your drives started dropping offline after that reboot, would you remember that you'd updated the controller a month ago, or would you think you had a drive problem?
  • While less of a problem these days, early Windows flash utilities were rather twitchy due to both problems with the utilities and the general flakiness of Windows at the time. Some manufacturers decided to permanently avoid the issue - for example, many Dell systems have a Windows-based BIOS update utility, but all it does is put the firmware blob in memory, leave some "magic footprints" for the existing BIOS to discover and perform the actual update, and reboot.
You have many valid points and I don't disagree with you. A lot of consumer grade hardware can only be upgraded in dos mode if it's even upgradeable at all. And if the firmware/bios is flashable in a Windows environment a reboot is often required for the update to "kick in".

My guess is that enterprise hardware is made for exactly this behavior - reboot free handling - from square 1? The log file from my previous post was from a flash I did on this very machine while typing the post (P20 -> P20), although that doesn't prove much since the OS will se pretty much the same hardware. :p
 

Terry Kennedy

Well-Known Member
Jun 25, 2015
1,142
594
113
New York City
www.glaver.org
My guess is that enterprise hardware is made for exactly this behavior - reboot free handling - from square 1? The log file from my previous post was from a flash I did on this very machine while typing the post (P20 -> P20), although that doesn't prove much since the OS will se pretty much the same hardware. :p
The LSI cards (at least the ones that run P20) definitely reset as part of the firmware update procedure. If you have the cover off the system (and the card is facing the right way), you can observe this as the heartbeat LED stops flashing and doesn't restart until the update is complete. The only other cards I'm sure of are the Broadcom NX/NX2 network cards, which also reboot.

The Dell Server Update Utility will do online updates of just about everything under either Windows or Linux. The individual update utilities have dire warnings about anything else going on while the updates are being performed, and the default behavior is to reboot after all updates have been applied. I run FreeBSD, so I boot the Linux version of the SUU from the Dell CDU disc (basically a Dell Linux LiveCD). So I don't know what would happen with a true on-line update of a Dell server.
 

morecomputers

New Member
Sep 15, 2016
25
2
3
49
Hi guys,
A little new to this so pardon some basic questions. I flashed the perc h310 on a windows 10 pro dell t5600. Everything went well (i think) using mattr steps. However, when i booted into windows 10 (SSD running OS is on a separate motherboard sata port as there is no bios on this card after flashing), the controller is being sensed as a dell 6gbps HBA. The zipped files used for flashing dont have a driver for windows 10 or server 2016 (hence why i posted on this thread). When i ask windows to use the driver from win 8.1, it responds that the most recent driver is already installed. Avago website also does not have a driver for win 10 or server 2016.

Now whether related or not to this, when i hook up a 3.5 HGST SATA drive to the card with the SAS cable that came with the card, i cant find the drive in windows under drive management or elsewhere. By the way, the sas cable i am talking about looks like in this link...i bought elsewhere but these guys have a good price by the way.
Dell PERC H310 RAID Controller HV52W w/2 Device Cable T3F4V No LED Cable | eBay

I hooked the power sata on the sas cable to a similar one from the motherboard so the drive is getting power as i can hear it. But i just cant see it.

Any ideas? Should i test the card from freedos/ while computer boots to check it is ok? And if so, how can i do that?

thank you
 

morecomputers

New Member
Sep 15, 2016
25
2
3
49
Hey my friend! Sorry it took awhile to get back to ya! Seems like you haven't flashed that bad boy properly. The card should show up as a lsi 9211 with the IT firmware installed.

As a side note, I know that not flashing the bios may save some bootup time, but I always flash the sas bios on all my cards for the purpose of configuration and the important, but looked over, staggered spinup.

When you turn on the pc/server, you should generally see the lsi bios prompt. It actually goes by pretty fast, so it really doesn't add much to your startup time if you were to flash the bios along with the firmware. In any case, if you aren't seeing the card as a lsi controller in windows, that means the card might not have been flashed properly. Generally, windows uses the best driver for LSI cards it has, and normally, it is usually a built in lsi 1068e/2008 built in driver.

I would try flashing again.

If you wanna test to see if the card is a lsi flashed IT card, or if the card is still on dell firmware, an easy way would be to flash the bios too. (I know, I know, I have been trying to get you to flash that bios!)

Do this in dos/freedos: (if you get the PAL error, you gotta use efi flashing method)

sas2flsh -o -f itfirmware.bin (substitute whatever the lsi IT firmware file is named) -b mptsas2.rom

Ex: sas2flsh -o -f 2118it.bin -b mptsas2.rom

This way, you will see when you turn on the pc if the card is flashed properly.

P.S. Just in case you missed it, I recommend you flash that bios!

Also, Welcome to STH my friend! Always happy and glad to see new members!

Hi sleyk and thank you replying. I thought no one read this thread anymore! I actually also posted the ebay example of the same card in the deals forum under LSI PERC H310 - LSI 9211-8i - $50 and a couple of forum readers bought the card, though they probably missed my question I asked there.

In the interim i ran the same card in my dell t20 server running win 2012 r2 essentials, and it runs fine, as in a HGST drive (you know the very one that you suggested earlier in the year for 30 buck :)) is being identified and recognized by windows and i was able to run a burst scan mode (stablebit scanner). So i am thinking it may have something to do with the dell t5600 running windows 10 where i flashes the card that had an issue. Oddly enough, even in server 12r2, windows lists it as Dell 6Gbps SAS HBA with driver from 2/19/2015, driver 2.0.76.0. I tried updating drivers from windows to the latest from avago without a change in name.

Since it is working, albeit in the server , I am hesitant flashing it again...dont want to break whats working, right??? But if things change, il flash the BIOS as you suggested. I had followed mattr directions, and it looks like he doesnt add a bios to the flash sequences.

Thank you again for taking the time reading and writing back, Best
 

morecomputers

New Member
Sep 15, 2016
25
2
3
49
No problem, and glad its working for you as it is. Yeah, i suppose you shouldn't mess with it if its working well for ya. Albeit, I wonder why Win server 2012 r2 sees the card as a Dell card, but if the driver is compatible, then that's fine.

Sorry your question got missed before! I try to stop around and help out with what little knowledge i have when i get the time.

Mattr seemed to not include the bios for the same reason most don't in their instructions: to save bootup time. Ultimately, doing either doesn't make much difference. It just comes down to personal preference i guess. I likes to see me' bios in the bootup sequence. If i get tired of seeing the lsi bios, I just hide the add on card bioses in my server bios in bios settings. That way, the server boots up and goes straight to the OS software without displaying the cards. Best of both worlds really.

Either way, glad to help! Good luck with all and pm me with yo' questions anytime mate!
Thanks Sleyk,
Il make a mental note for future upgrades to set up a bios but hide it in the bootup sequence.. Very handy, thanks

And yes, il run it this way for some time. It sounds like it thinks its a dell HBA rather than an LSI HBA so either way an IT rather than a raid card. I think i followed all the steps mattr had but who knows maybe i missed one small letter in the steps ( i will admit that i was a little tense about bricking the card but thought it was at least not an expensive one!). Oh and i dont know if i mentioned before, but i tried the windows based flashing first (no drive attached to card, OS running on a different controller) and it refused to run the command (i forget what the error message was) so i flashed using the dos method.
 

vvu

Member
Oct 24, 2016
17
37
13
43
I can answer that question. When you flash the firmware on a card you don't overwrite the PCI ID (sorta like the first bits of a mac address). See output from lspci -v on my card below. The PCI ID is burned in by the manufacture. I'm also including a link to a pci database that pertains to this card.

PCI Vendor and Device Lists

Code:
04:00.0 Serial Attached SCSI controller [0107]: LSI Logic / Symbios Logic SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] [1000:0072] (rev 03)
04:00.0 Serial Attached SCSI controller: LSI Logic / Symbios Logic SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (rev 03)
    Subsystem: Dell 6Gbps SAS HBA Adapter
    Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
    Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
    Latency: 0, Cache Line Size: 64 bytes
    Interrupt: pin A routed to IRQ 22
    Region 0: I/O ports at c000 [size=256]
    Region 1: Memory at df240000 (64-bit, non-prefetchable) [size=64K]
    Region 3: Memory at df200000 (64-bit, non-prefetchable) [size=256K]
    Expansion ROM at df100000 [disabled] [size=1M]
    Capabilities: <access denied>
    Kernel driver in use: mpt3sas
    Kernel modules: mpt3sas

No problem, and glad its working for you as it is. Yeah, i suppose you shouldn't mess with it if its working well for ya. Albeit, I wonder why Win server 2012 r2 sees the card as a Dell card, but if the driver is compatible, then that's fine.