SOLVED Flashing Dell Perc H310, H200, IBM M1015 to LSI 9211-8i under UEFI: Solution to „ERROR: Cannot Flash IT Firmware over IR Firmware“

TheWoo

Explorer
Joined
Jan 2, 2015
Messages
58
This post is to prevent more people from getting insane over trying to re-flash their HBAs (Host-Bus-Adapter)/SAS Controller in order to make them FreeNAS compatible. I spend an entire night finding the solution...

There are countless instructions on the web on how to re-flash your IBM M1015, Dell Perc H310, Dell Perc H200 etc. SAS controller, on this forum and across the web. The procedure is more or less always the same, and looks something like this:
  1. Create a bootable DOS-USB-Stick, i.e. using rufus.ie
  2. Copy the flash tools and required firmware onto the stick.
  3. Install the SAS card.
  4. Boot from that stick into DOS.
  5. Figure out and write down the SAS address of the card prior to swiping: megacli.exe -AdpAllInfo -aAll -page 20
  6. Write some empty file onto the card: megarec.exe -writesbr 0 sbrempty.bin
  7. Clean the flash: megarec.exe -cleanflash 0
  8. Reboot.
  9. Write a specific old Firmware onto the card: sas2flsh.exe -o -f 6GBPSAS.fw
  10. Write the desired, latest Firmware onto the card: sas2flsh.exe -o -f 2118it.bin (There are countless versions of that file, and while the filename is always identical, you must ensure to have the appropriate version. P20 is the latest, but note that there exists a buggy 20.00.04.00, and a bug fixed 20.00.07.00)
  11. Reprogram the original/former SAS address: sas2flsh.exe -o -sasadd yourinstep5writtendownaddresshere
If you have a Server mainboard (e.g. I have the ASRock E3C226D2i), you have to reboot in step 8 not into the DOS, but into the board’s BIOS, launch from there the UEFI shell (an EFI shell app on the USB stick might be required), and continue not using the DOS’ sas2flsh.exe, but the EFI shell’s sas2flash.efi. So far, so good.

Here comes the problem: „ERROR: Cannot Flash IT Firmware over IR Firmware“

In step 10 (in UEFI that’s sas2flash.efi -o -f 2118it.bin), you’ll very likely run over and over again into the same problem: Flashing quits unsuccessfully with „ERROR: Cannot Flash IT Firmware over IR Firmware“. (I'm not sure if this problem occurs solely when having to take the UEFI path, or also when you can walk down the DOS only path (as described above).

In other words that old 6GBPSAS.fw is an IR Firmware, that 2118it.bin is – as the filename says – an IT Firmware. For a minute I tried look for an IT version of that old 6GBPSAS.fw, but immediately gave up, not knowing where to look (most cards are more than a decade old).

Digging deeper I came across a table on the Broadcom website (LSI successor), which claims that one can indeed flash IT over IR Firmware ... at least theoretically, because it just doesn't work.

What nobody tells you: sas2flash.efi ≠ sas2flash.efi

Every instruction describes the flashing process using the sas2flash.efi command (or sas2flsh.exe on DOS). However nobody clearly points out that
  • a) this app exists in several versions (despite having all the same filename)
  • b) Broadcom broke in newer versions the ability to write IT over IR Firmware, thus an old version of sas2flash.efi is required to succeed.
I found the general info of b) in this FreeBSD forum post from 2014, but with no further details ... the links to the LSI Knowledge Base in that post are long gone.

Long story short

I ultimately came across this article on techmattr, which has quite good instructions for both DOS and UEFI flashing, but most importantly a download link to the required flashtools and firmware files (LSI-9211-8i.zip) including the old, version 5.00 of the sas2flash:

„The main firmware file in this ZIP is P20. This has been updated to support the latest version of FreeNAS. The ZIP also contains versions of the tools that will make this process a bit easier. The default sas2flash tools are P05 (= version 5.00) which allow downgrading and flashing of non-compatible firmware in many cases.“

sas2flash.efi in Version 5.00 (and probably sas2flsh.exe v5.00 on DOS as well) will pause when it comes across the IT over IR Firmware hurdle, but then doesn't abort – as newer versions of this flasher do –, but instead asks the user to confirm the overwrite by entering Y for yes. Phew!

Hope I've saved you some time and headache!
 
Last edited:

Chris Moore

Hall of Famer
Joined
May 2, 2015
Messages
10,080

TrumanHW

Contributor
Joined
Apr 17, 2018
Messages
197
People gotta get in the habit of using Ventoy (vs Rufus, as good as Rufus is v nothing) as ventoy is just SUPERIOR & the BEST utility.

No wearing out (even good) USB Flash drives with repetitive re-writes each time you need a different image.
Yes, it'll also write to an SSD & after initially formatting (partial is fine), ventoy allows images to be made bootable via DRAG and DROP!

Drag & Drop as many img | dmg | iso, etc., images as you like ... and they'll all be available to choose from via a GUI window at boot.

You can also preserve a partition for data.

DRAG & DROP as many images as you like.
No ... dd if=/ of= ... etc., ... no "burning" an image, just delete or rename whatever you like.
and all on one drive simultaneously .. ?
 
Top