Flashing HP H220 SAS card to latest FW

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

rmflint

New Member
Dec 12, 2017
14
1
3
61
Slovak, can you help me find the 2308T207.ROM (latest version 20.00.07.00-IT) firmware file which you used? I did not discover your thread until after I tried to flash my HP branded SAS9217 / SAS2308 card with LSI's version 20 package. I am hoping to use your method to recover my card.

Is the 2308T207.ROM file buried somewhere in the HP rpm download? I couldn't find it.

Could I just use the sas2flash version 14 and the P20 firmware (bin) which I downloaded from LSI/Broadcom site?

Please help since after running the version 20 sas2flash to clean the ROM followed by the version 20 firmware update (which failed with errors) my card is no longer usable. I am HOPING your method and save it!
 

BLinux

cat lover server enthusiast
Jul 7, 2016
2,669
1,081
113
artofserver.com
Slovak, can you help me find the 2308T207.ROM (latest version 20.00.07.00-IT) firmware file which you used? I did not discover your thread until after I tried to flash my HP branded SAS9217 / SAS2308 card with LSI's version 20 package. I am hoping to use your method to recover my card.

Is the 2308T207.ROM file buried somewhere in the HP rpm download? I couldn't find it.

Could I just use the sas2flash version 14 and the P20 firmware (bin) which I downloaded from LSI/Broadcom site?

Please help since after running the version 20 sas2flash to clean the ROM followed by the version 20 firmware update (which failed with errors) my card is no longer usable. I am HOPING your method and save it!
I don't believe HP provides any P20 firmware for the SAS2308 chipset. You can find it from Broadcom/Avago/LSI or also from Supermicro's FTP site.

If you had a FW flash failure, I would erase the flash (-o -e 6) using either the UEFI or DOS version of the sas2flash utility (I think the other versions don't have the -o advanced option to enable erasing). Then, try to flash again.

You can use any version of the sas2flash to flash the firmware. But in this case, I've found there's no reason to use an older version (on other cards, the method was used to by-pass checks that would prevent the program from proceeding with flashing the firmware). I usually just use the Linux P20 version of sas2flash and just flash LSI P20 IT firmware onto the H220 in 1 command (no erase even) and it works fine.
 

rmflint

New Member
Dec 12, 2017
14
1
3
61
I don't believe HP provides any P20 firmware for the SAS2308 chipset. You can find it from Broadcom/Avago/LSI or also from Supermicro's FTP site.

If you had a FW flash failure, I would erase the flash (-o -e 6) using either the UEFI or DOS version of the sas2flash utility (I think the other versions don't have the -o advanced option to enable erasing). Then, try to flash again.

You can use any version of the sas2flash to flash the firmware. But in this case, I've found there's no reason to use an older version (on other cards, the method was used to by-pass checks that would prevent the program from proceeding with flashing the firmware). I usually just use the Linux P20 version of sas2flash and just flash LSI P20 IT firmware onto the H220 in 1 command (no erase even) and it works fine.
I am still getting the same sas2flash errors which started after I initially ran the clean flash command (sas2flash.efi -o -e 6) and then ran the sas2flash.efi

Now when I try to run the clean flash command I get the following error:

"Controller is not operational. A firmware Hostboot is required."

I then attempted to run the command "sas2flash.efi -f 2118it.bin" which errors out with the message.
"ERROR: Firmware image does not support Target Adapter Device ID". The 2118it.bin file is the one I originally extracted from the LSI download.

Is my card toast?
 

BLinux

cat lover server enthusiast
Jul 7, 2016
2,669
1,081
113
artofserver.com
I am still getting the same sas2flash errors which started after I initially ran the clean flash command (sas2flash.efi -o -e 6) and then ran the sas2flash.efi

Now when I try to run the clean flash command I get the following error:

"Controller is not operational. A firmware Hostboot is required."

I then attempted to run the command "sas2flash.efi -f 2118it.bin" which errors out with the message.
"ERROR: Firmware image does not support Target Adapter Device ID". The 2118it.bin file is the one I originally extracted from the LSI download.

Is my card toast?
Your problem is that you are using the wrong firmware file. 2118it.bin is for the sas2008 chipset, not the sas2308 that is on this card. Download the correct firmware from broadcom website and try again.
 

rmflint

New Member
Dec 12, 2017
14
1
3
61
Your problem is that you are using the wrong firmware file. 2118it.bin is for the sas2008 chipset, not the sas2308 that is on this card. Download the correct firmware from broadcom website and try again.
Blinux, you saved me and my card! I've spent 2 days chasing my tail on this one. You were 100% correct on the problem.

It did not matter which version of sas2flash I used. Version 20 worked once I used the correct firmware file for the sas2308 chipset. Not sure how I got the wrong version initially but I went back to the Broadcom site and downloaded the the following zip file, 9207-4i4e_Package_P20_IR_IT_Firmware_BIOS_for_MSDOS_Windows
extracted the 9207-4i4e.bin file, copied to usb and re-flashed with no error.

Yea!!

Here is the details of what worked for me to flash HP-branded LSI SAS 9217-4i4e to IT-mode:

Note: I did all the flashing from an EFI shell

1. Download the zip file with the correct firmware and sas2flash version (currently version 20) for this card from LSI/Broadcom website. I used '9207-4i4e_Package_P20_IR_IT_Firmware_BIOS_for_MSDOS_Windows.zip' which contains the firmware file '9207-4i4e.bin' for the LSI SAS2308 chipset.

2. Create bootable USB using Rufus.

3. Extract and copy files to USB root directory. This makes it easier so you don't have to navigate to any sub directories. The only extracted files I needed were the sas2flash.efi and the firmware file 9217-4i4e.bin (besides the boot files created by Rufus).

4. Write down sas address on card (16 digits), install card and USB stick then boot system into efi shell and navigate to the USB root directory (type fs0: )

5. Verify correct to flash with command: sas2flash -listall

6. Erase card's exist ROM with command: sas2flash.efi -o -e 6

7. Flash new firmware to card with command: sas2flash.efi -f 9217-4i4e.bin

8. Reset sas address to card with command: sas2flash.efi -o -sasadd XXXXXXXXXXX

That's it. Hope this helps someone else!
 
Last edited:

BLinux

cat lover server enthusiast
Jul 7, 2016
2,669
1,081
113
artofserver.com
Blinux, you saved me and my card! I've spent 2 days chasing my tail on this one. You were 100% correct on the problem.

It did not matter which version of sas2flash I used. Version 20 worked once I used the correct firmware file for the sas2308 chipset. Not sure how I got the wrong version initially but I went back to the Broadcom site and downloaded the the following zip file, 9207-4i4e_Package_P20_IR_IT_Firmware_BIOS_for_MSDOS_Windows
extracted the 9207-4i4e.bin file, copied to usb and re-flashed with no error.

Yea!!

Here is the details of what worked for me to flash HP-branded LSI SAS 9217-4i4e to IT-mode:

Note: I did all the flashing from an EFI shell

1. Download the zip file with the correct firmware and sas2flash version (currently version 20) for this card from LSI/Broadcom website. I used '9207-4i4e_Package_P20_IR_IT_Firmware_BIOS_for_MSDOS_Windows.zip' which contains the firmware file '9207-4i4e.bin' for the LSI SAS2308 chipset.

2. Create bootable USB using Rufus.

3. Extract and copy files to USB root directory. This makes it easier so you don't have to navigate to any sub directories. The only extracted files I needed were the sas2flash.efi and the firmware file 9217-4i4e.bin (besides the boot files created by Rufus).

4. Write down sas address on card (16 digits), install card and USB stick then boot system into efi shell and navigate to the USB root directory (type fs0: )

5. Verify correct to flash with command: sas2flash -listall

6. Erase card's exist ROM with command: sas2flash.efi -o -e 6

7. Flash new firmware to card with command: sas2flash.efi -f 9217-4i4e.bin

8. Reset sas address to card with command: sas2flash.efi -o -sasadd XXXXXXXXXXX

That's it. Hope this helps someone else!
glad it all worked out. if using UEFI shell, you don't really need a "bootable USB" drive; just a USB drive will do. Also, if you care, you might want to flash the serial number (Board Tracer) and assembly number back. see the -tracer and -assem options. The board tracer number and assembly number are also on stickers on the card. when I flash the H220, I don't even bother with erase, so it leaves this stuff intact, but since you did erase, you may no longer have that information in your flash.
 

craigr

New Member
Jan 19, 2017
4
2
3
60
glad it all worked out. if using UEFI shell, you don't really need a "bootable USB" drive; just a USB drive will do. Also, if you care, you might want to flash the serial number (Board Tracer) and assembly number back. see the -tracer and -assem options. The board tracer number and assembly number are also on stickers on the card. when I flash the H220, I don't even bother with erase, so it leaves this stuff intact, but since you did erase, you may no longer have that information in your flash.
Can the "Board Name" be changed and what's the comand for that? I'd like to make mine something custom instead of the default "H220," perhaps "unRAID" for example.

Also, I was not able to flash my card with one comand. I had to erase first (-e 6) and then use sas2flash.efi version 14. Version 20 would not write to the card. I was just flashing IT 2308T207.ROM without a bios though. I suspect if I had done a full erase I could have used sas2flash v20, but I will never know.

Thanks,
craigr
 
Last edited:

DWP

New Member
Apr 15, 2019
1
0
1
So, thanks for all of the work to get this figured out. My issue is that I followed these steps and successfully flashed my HP220. It now shows up as LSI2308_1. However, no devices are listed. Any ideas?
 

thingy2098

New Member
Mar 16, 2018
15
8
3
41
Thanks everyone for the guide! I did this in Win10 x64 just by downloading the V14 Installer and V20 firmware package from Broadcom's site. No need to fiddle with UEFI shells, Linux, or DOS boot disks if you have a Windows machine available.

Just needed to run 'sas2flash -c 0 -f 9207-8.bin -b mptsas2.rom' and all was well.
 

thingy2098

New Member
Mar 16, 2018
15
8
3
41
It sure can, so long as it's running an operating system that has support for the card. As in my post above, it worked no problem in Windows 10.
 

MarcoP82

New Member
Feb 3, 2016
24
4
3
38
EDIT: got it working, found the P14 version of the SAS2FLASH.EFI with Slovak's post on the first page ! I remember seeing it earlier but somehow missed it when I needed it.

EDIT2: apparently this is a 9205-8i card instead of a 9207-8i card. Strange, I thought the HP H220 D1 cards were all 9207-8i cards.

Original post: I'm having trouble gettting my H220 updated. I tried with the Windows binaries (P14 and P20), it didn't see the adapter. I tried with the DOS binaries (P14 and P20), it gave me the PAL error because I'm on UEFI, I tried with the EFI binaries (P15). The last one saw the card, I succeeded in erasing it with "sas2flash.efi -o -e 7" but when I proceeded to write the new firmware, it decided to give me an error on the ID (probably because it was P15, but EFI isn't available for P14).

Anyway, now I'm stuck. I can't even get the HP H220 firmware on there as in Windows it says no LSI SAS adapters found. I can still reach it via the EFI but I'm stuck how I'd get P20.07 on there. It's about the last piece of the puzzle for my server build.
 
Last edited:

mervincm

Active Member
Jun 18, 2014
159
39
28
I finally got around to flashing mine from hp 15.10.7 to the latest 20.0.0.7 and I found that I had to do it as thingy2098 describes. added in a spare hdd that boots win 10 and flash the bin/rom with the old v14 flash tool. I skipped the rom the first time and while it still flashed, it wasn't functional. repeated with both and then it worked again. I am not sure the improvements made from but at least it's now done!
 

Pheckphul

Better than being feckless.
Feb 28, 2013
38
16
8
SF Bay Area
<SNIP>

You can use any version of the sas2flash to flash the firmware. But in this case, I've found there's no reason to use an older version (on other cards, the method was used to by-pass checks that would prevent the program from proceeding with flashing the firmware). I usually just use the Linux P20 version of sas2flash and just flash LSI P20 IT firmware onto the H220 in 1 command (no erase even) and it works fine.
Is this still the case? Perhaps it depends on the revision of the H220? As two others in this thread say they had to use sas2flash P14 to flash a P20 firmware and BIOS.

I've got three H220 cards that I want to upgrade to the most current firmware and BIOS, and I wouldn't want to hose them beyond recovery.

Also, Supermicro appears to have removed their repository of LSI firmware.

Hopefully I do not offend by necroposting.
 

BLinux

cat lover server enthusiast
Jul 7, 2016
2,669
1,081
113
artofserver.com
Is this still the case? Perhaps it depends on the revision of the H220? As two others in this thread say they had to use sas2flash P14 to flash a P20 firmware and BIOS.

I've got three H220 cards that I want to upgrade to the most current firmware and BIOS, and I wouldn't want to hose them beyond recovery.

Also, Supermicro appears to have removed their repository of LSI firmware.

Hopefully I do not offend by necroposting.
As far as I know, everything I've said is still true. There are 2 revisions of the SAS2308, Rev B0 and D1. B0 is PCIe 2.0 only, while D1 is PCIe 3.0. However, I have *never* seen a H220 with Rev B0, only the H221, which I've *only* ever found with B0. So, I suspect people confuse H220 and H221.. both are 2308, but different rev., but they are also different cards.

These cards are not as easy to "hose them beyond recovery" as one might think. Don't be afraid to mess with them, they are really not that fragile.

Yeah, I don't know what happened to Supermicro FTP. But I usually just get the firmware from broadcom.com.
 

schander

New Member
Mar 23, 2021
5
1
3
Hi All,
Wondering if anyone can help.
I have a couple of h220's, I have flashed them with the V20 firmware (from supermicro). However whenever I try to configure them I get NMI errors.
Tried one in my DL380e and my Microserver Gen8 with the same red screen of death happening when I ctrl-c to configure the board.
The output for sas2flsh -list (V14) is:
Controller Number : 0
Controller : SAS2308_2(D1)
PCI Address : 00:07:00:00
SAS Address : 500605b-0-09d3-2ab0
NVDATA Version (Default) : 14.01.30.16
NVDATA Version (Persistent) : 14.01.30.16
Firmware Product ID : 0x2214 (IT)
Firmware Version : 20.00.07.00
NVDATA Vendor : LSI
NVDATA Product ID : LSI2308-IT
BIOS Version : 07.39.02.00
UEFI BSD Version : 07.27.01.00
FCODE Version : N/A
Board Name : LSI2308-IT
Board Assembly : N/A
Board Tracer Number : N/A


This are the commands i used from FreeDOS:

sas2flsh -o -e 7
sas2flsh -f 2308T207.ROM
sas2flsh -b mptsas2.rom
sas2flsh -b x64sas2.rom
sas2flsh -o -sasaddhi 500605b


Grateful for any help on this.
Satpal
 

BLinux

cat lover server enthusiast
Jul 7, 2016
2,669
1,081
113
artofserver.com
Hi All,
Wondering if anyone can help.
I have a couple of h220's, I have flashed them with the V20 firmware (from supermicro). However whenever I try to configure them I get NMI errors.
Tried one in my DL380e and my Microserver Gen8 with the same red screen of death happening when I ctrl-c to configure the board.
The output for sas2flsh -list (V14) is:
Controller Number : 0
Controller : SAS2308_2(D1)
PCI Address : 00:07:00:00
SAS Address : 500605b-0-09d3-2ab0
NVDATA Version (Default) : 14.01.30.16
NVDATA Version (Persistent) : 14.01.30.16
Firmware Product ID : 0x2214 (IT)
Firmware Version : 20.00.07.00
NVDATA Vendor : LSI
NVDATA Product ID : LSI2308-IT
BIOS Version : 07.39.02.00
UEFI BSD Version : 07.27.01.00
FCODE Version : N/A
Board Name : LSI2308-IT
Board Assembly : N/A
Board Tracer Number : N/A


This are the commands i used from FreeDOS:

sas2flsh -o -e 7
sas2flsh -f 2308T207.ROM
sas2flsh -b mptsas2.rom
sas2flsh -b x64sas2.rom
sas2flsh -o -sasaddhi 500605b


Grateful for any help on this.
Satpal
The problem is likely some conflict between HP Proliant system BIOS and the LSI BIOS ROM. I don't think HP will care to fix it from their end, so the only 2 options you have:

1) Remove the LSI BIOS ROM from the card if you don't need to boot from it.
2) Downgrade to the LSI BIOS ROM from version P19. Basically, download the P19 version of mptsas2.rom and apply that instead.

These workarounds have worked for several of my customers who had the same issue with some HP Proliant systems. Give it a try and see if that helps.
 
  • Like
Reactions: schander

schander

New Member
Mar 23, 2021
5
1
3
The problem is likely some conflict between HP Proliant system BIOS and the LSI BIOS ROM. I don't think HP will care to fix it from their end, so the only 2 options you have:

1) Remove the LSI BIOS ROM from the card if you don't need to boot from it.
2) Downgrade to the LSI BIOS ROM from version P19. Basically, download the P19 version of mptsas2.rom and apply that instead.

These workarounds have worked for several of my customers who had the same issue with some HP Proliant systems. Give it a try and see if that helps.
Thanks for the reply. You got me thinking if its the efi bios that's causing the problem? Both card came without an efi bios.
I will erase and flash the firmware and bios only see if makes a difference, if not I'll try without the bios aswell.

Cheers
Satpal
 

BLinux

cat lover server enthusiast
Jul 7, 2016
2,669
1,081
113
artofserver.com
Thanks for the reply. You got me thinking if its the efi bios that's causing the problem? Both card came without an efi bios.
I will erase and flash the firmware and bios only see if makes a difference, if not I'll try without the bios aswell.

Cheers
Satpal
You don't need to erase the flash. Just the UEFI or BIOS ROM. Here's a video I made showing how to do that without erasing everything:

 

schander

New Member
Mar 23, 2021
5
1
3
You don't need to erase the flash. Just the UEFI or BIOS ROM. Here's a video I made showing how to do that without erasing everything:


I saw this video last night :) However upon trying to use lsitutil (after getting dos4gw, I'm on freedos)
lsiutil -s shows 0 MPT ports found - not sure why it doesn't find the card
However sas2flsh finds the card. I have reflashed the firmware the old skool way, flashing only the bios without the efi bios and I still get a RSOD :(
So it looks like I can only use the card for data drives and not to boot from :( , which I would like on my DL380e Gen8

Also, any ideas where could I find the previous version (V19) of the bios? If i wanted to try that.