Flashing HP H220/H221 SAS cards.

Status
Not open for further replies.

Pierce

Explorer
Joined
Sep 4, 2013
Messages
64
I have a bit of a monster FreeNAS box I cobbled up out of spare parts at work.

Its a HP DL160gen8 1U server with dual E5-2665 CPUs, 128GB ram, and TWO HP SAS HBA cards, both 2308 based. One card has the 8 front panel 2.5" 15k SAS2 drives, the other card has 2 25 drive external bays (yup, 58 disks), multiported (I have another issue there, I'll post that seperately). Both cards are in IT mode (came that way, yay!).

anyways, when I installed this all a year back, FreeNAS was using the P16 firmware, and I managed to flash the cards to that. But now the new versions (running FreeNAS-9.3-STABLE-201512121950) want the P20 firmware, so I'm trying to update them. If I download the latest firmware from HP, I can only find P15 ?!?

So I got the firmware for the LSI/Avago 9207 card, which near as I can tell is virtually the same thing. I'm using the sas2flash util that came with freenas.latest... Is there some way I can force this install? I really don't care if these cards lose their 'HP'ness...

[root@freenas] ~/fw# sas2flash -o -f 9207-8.bin -b mptsas2.rom
LSI Corporation SAS2 Flash Utility
Version 16.00.00.00 (2013.03.01)
Copyright (c) 2008-2013 LSI Corporation. All rights reserved

Advanced Mode Set

Adapter Selected is a LSI SAS: SAS2308_2(D1)

Executing Operation: Flash Firmware Image

Firmware Image has a Valid Checksum.
Firmware Version 20.00.04.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.
ERROR: NVDATA Image does not match Controller SubSystem ID!
NVDATA Subsystem ID: 0x3020
Controller Subsystem ID: 0x41

ERROR: No compatible NVDATA Image(s) found!

Firmware Image Validation Failed!

Due to error remaining commands will not be executed.
Unable to Process Commands.
Exiting SAS2Flash.




for reference, this is the -list info sas2flash tells me...

[root@freenas] ~/fw# sas2flash -listall
LSI Corporation SAS2 Flash Utility
Version 16.00.00.00 (2013.03.01)
Copyright (c) 2008-2013 LSI Corporation. All rights reserved

Adapter Selected is a LSI SAS: SAS2308_2(D1)

Num Board Name FW Ver NVDATA x86-BIOS
-----------------------------------------------------------------

0 H220 16.00.00.00 10.00.00.04 07.31.00.00
1 H221 16.00.00.00 10.00.00.04 07.31.00.00

Finished Processing Commands Successfully.
Exiting SAS2Flash.
[root@freenas] ~/fw# sas2flash -list -c 0
LSI Corporation SAS2 Flash Utility
Version 16.00.00.00 (2013.03.01)
Copyright (c) 2008-2013 LSI Corporation. All rights reserved

Adapter Selected is a LSI SAS: SAS2308_2(D1)

Controller Number : 0
Controller : SAS2308_2(D1)
PCI Address : 00:04:00:00
SAS Address : 500605b-0-0724-cfa0
NVDATA Version (Default) : 10.00.00.04
NVDATA Version (Persistent) : 10.00.00.04
Firmware Product ID : 0x2214 (IT)
Firmware Version : 16.00.00.00
NVDATA Vendor : LSI
NVDATA Product ID : SAS9207-8i
BIOS Version : 07.31.00.00
UEFI BSD Version : N/A
FCODE Version : N/A
Board Name : H220
Board Assembly : H3-25278-05D
Board Tracer Number : SV34534734

Finished Processing Commands Successfully.
Exiting SAS2Flash.
[root@freenas] ~/fw# sas2flash -list -c 1
LSI Corporation SAS2 Flash Utility
Version 16.00.00.00 (2013.03.01)
Copyright (c) 2008-2013 LSI Corporation. All rights reserved

Adapter Selected is a LSI SAS: SAS2308_2(D1)

Controller Number : 1
Controller : SAS2308_2(D1)
PCI Address : 00:08:00:00
SAS Address : 500605b-0-0937-08b0
NVDATA Version (Default) : 10.00.00.04
NVDATA Version (Persistent) : 10.00.00.04
Firmware Product ID : 0x2214 (IT)
Firmware Version : 16.00.00.00
NVDATA Vendor : LSI
NVDATA Product ID : SAS9207-8i
BIOS Version : 07.31.00.00
UEFI BSD Version : N/A
FCODE Version : N/A
Board Name : H221
Board Assembly : H3-25280-02B
Board Tracer Number : SV43407232

Finished Processing Commands Successfully.
Exiting SAS2Flash.
 
Joined
Apr 9, 2015
Messages
1,258

Pierce

Explorer
Joined
Sep 4, 2013
Messages
64
If you note my -list output, these cards have 2308's on them, not the older 2008 chips used on those 9205 cards.

HP's 15.10.09.00 1 Oct 2015 is reported to be OLDER than the P16 I have now.

[root@freenas] ~/fw# sas2flash -o -f H220_it.fw -b mptsas2.rom
LSI Corporation SAS2 Flash Utility
Version 16.00.00.00 (2013.03.01)
Copyright (c) 2008-2013 LSI Corporation. All rights reserved

Advanced Mode Set

Adapter Selected is a LSI SAS: SAS2308_2(D1)

Executing Operation: Flash Firmware Image

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

Valid NVDATA Image found.
NVDATA Version 0f.00.00.00
Checking for a compatible NVData image...

NVDATA Device ID and Chip Revision match verified.
NVDATA SubSystem Vendor and SubSystem Device ID match verified.
ERROR: Cannot downgrade NVDATA version 0x10000004 to 0xf000015.

ERROR: NVDATA Image does not match Controller Chip Revision!
NVDATA Chip Revision Range: 0x1 to 0x3
Controller Chip Revision: 0x5

ERROR: No compatible NVDATA Image(s) found!

Firmware Image Validation Failed!

Due to error remaining commands will not be executed.
Unable to Process Commands.
Exiting SAS2Flash.
 

Pierce

Explorer
Joined
Sep 4, 2013
Messages
64
so no clues on how to flash LSI firmware on vendor OEM cards that report ...

ERROR: NVDATA Image does not match Controller SubSystem ID!
NVDATA Subsystem ID: 0x3020
Controller Subsystem ID: 0x41


? there's no way to override this with the bsd sas2flash util?
 

Ericloewe

Server Wrangler
Moderator
Joined
Feb 15, 2014
Messages
20,194
Wipe the card with megarec, then flash the generic firmware.
 

Pierce

Explorer
Joined
Sep 4, 2013
Messages
64
megarec ? this is a 2308 HBA card, not a megaraid.

edit: I just tried this with sas2flash, and says it can't be erased.

[root@reenas] ~# sas2flash -o -e 6 -c 1
LSI Corporation SAS2 Flash Utility
Version 16.00.00.00 (2013.03.01)
Copyright (c) 2008-2013 LSI Corporation. All rights reserved

Advanced Mode Set

Adapter Selected is a LSI SAS: SAS2308_2(D1)

Executing Operation: Erase Flash

Erasing Flash Region...

Erase Flash Command not Supported on this platform.

Resetting Adapter...
Reset Successful!

Due to Exception Command not Executed. IOCStatus=0x1, IOCLogInfo=0x0
Finished Processing Commands Successfully.
Exiting SAS2Flash.
 
Last edited:

Ericloewe

Server Wrangler
Moderator
Joined
Feb 15, 2014
Messages
20,194
megarec ? this is a 2308 HBA card, not a megaraid.
It should still work.

In any case, the UEFI version of sas2flash tends to be more successful with operations more complicated than simple upgrades.
 

Pierce

Explorer
Joined
Sep 4, 2013
Messages
64
ok, so I'm going to need to do this in person with a USB stick rather than trying to do it online remotely via the freenas shell.



I've used uefi shell exactly once, several years ago, and at that point in time, it was just this side of black magic to me (prior to that, I didn't even know efi shell was a thing...)
 

GiODi

Cadet
Joined
Feb 14, 2014
Messages
1
Were you ever able to get this to work? I tried using megarec as suggested, but "No MR controller(s) found"

I'm having a similar issue with a H221. Freenas wants version 20:
HP's site only has up to 15
LSI 9205-8e has up to 19

Is there a 9205-8e v20 somewhere that I'm not seeing? or is there a way to flash the 9207-8e firmware?
 
Last edited:
Joined
Feb 2, 2016
Messages
574
We, too, are going down this rabbit hole, not being able find recent firmware from HP.

According to this, the HP H221 HBA can either be an LSI 9205-8e or LSI 9207-8e chipset depending on when it was released.

Assuming that is true, you may be able to flash to P20 using the stock LSI firmware. We tried to load the 9205 firmware and were denied. The next maintenance window we have, we're going to give it a swing with the 9207 firmware.
 

Pierce

Explorer
Joined
Sep 4, 2013
Messages
64
sas2flash --listall identifies my cards as 2308 based, as detailed above, so I'm pretty sure they are 9207 equivs. I believe I need to clear the NVRAM stuff for it to flash with the generic firmware, but you can't use sas2flash -o -e X under BSD.

So... an update from me, I painfully managed to build a virtual floppy image I could remotely load via ILO virtual diskette, and the sas2flash.efi driver, and after spending several hours was completely unable to locate a UEFI shell on my HP DL160 gen8 BIOS, arrrrgh. so now I have to remotely build a DOS bootable FD image and try again. I need to do this stuff late at night, and doing it remotely is a bit painful (but I sure don't want to be standing around the computer room trying at midnight, hah!).
 
Joined
Feb 2, 2016
Messages
574
Mission accomplished.

Here is how we managed to get our HP H221, SAS 9207-8e HBA updated...

1. Download Rufus, create a boot USB.

2. Download the P14 version of sas2flsh. I'm serious. As the other guy noted, newer versions of sas2flash won't actually flash the card. You must use an old enough version that it doesn't notice that the card is an HP variant.

3. Download the P20 firmware.

4. Boot your host from the USB stick (or equivalent).

5. Do: sas2flsh.exe -o -f 9207-8e.bin -c 0

6. Reboot and be glad.

Ready for the weird part? Even though we flashed with 9207-8e P20 firmware, sas2flsh reported success, the server booted and is running like a champ, NVDATA Product ID is reporting as 9205-8e. Before the upgrade when we were using the HP firmware, NVDATA Product ID was 'Undefined'. I went so far as to open the server and look at the physical card. Sure enough, SAS9207-e8 with HP part number 660087-001. Freakish. Still, I'm marking this as a success.

Cheers,
Matt


Code:
# sas2flash -list -c 0
LSI Corporation SAS2 Flash Utility
Version 16.00.00.00 (2013.03.01)
Copyright (c) 2008-2013 LSI Corporation. All rights reserved

        Adapter Selected is a LSI SAS: SAS2308_2(B0)

        Controller Number              : 0
        Controller                     : SAS2308_2(B0)
        PCI Address                    : 00:14:00:00
        SAS Address                    : 500605b-0-05ca-bf00
        NVDATA Version (Default)       : 14.01.00.09
        NVDATA Version (Persistent)    : 14.01.00.09
        Firmware Product ID            : 0x2214 (IT)
        Firmware Version               : 20.00.04.00
        NVDATA Vendor                  : LSI
        NVDATA Product ID              : SAS9205-8e
        BIOS Version                   : 07.20.14.00
        UEFI BSD Version               : N/A
        FCODE Version                  : N/A
        Board Name                     : H221
        Board Assembly                 : H3-25280-01C
        Board Tracer Number            : SV30520737

        Finished Processing Commands Successfully.
        Exiting SAS2Flash.
 

Ericloewe

Server Wrangler
Moderator
Joined
Feb 15, 2014
Messages
20,194
Meh, as long as the mps driver recognizes it as an LSI SAS2 HBA...
 

Pierce

Explorer
Joined
Sep 4, 2013
Messages
64
indeed, I independently arrived at the same conclusion just now. freedos fdboot.img and remote booted from via iLO. p20 dos flash had same error, while p14 dos sas2flsh.exe worked with the p20 firmware and mptbios.

freenas is booting now (these HP proliants take fo-evuh to reboot). FreeBSD seems to take quite a long time too, with 16 cores and 128gb ram and 58 SAS disks on two 9207's...

oh, and my two boards? both report 9207, not 9205...

[root@freenas] ~# sas2flash -list -c 0
LSI Corporation SAS2 Flash Utility
Version 16.00.00.00 (2013.03.01)
Copyright (c) 2008-2013 LSI Corporation. All rights reserved

Adapter Selected is a LSI SAS: SAS2308_2(D1)

Controller Number : 0
Controller : SAS2308_2(D1)
PCI Address : 00:04:00:00
SAS Address : 500605b-0-0724-cfa0
NVDATA Version (Default) : 14.01.00.06
NVDATA Version (Persistent) : 14.01.00.06
Firmware Product ID : 0x2214 (IT)
Firmware Version : 20.00.04.00
NVDATA Vendor : LSI
NVDATA Product ID : SAS9207-8i
BIOS Version : 07.39.00.00
UEFI BSD Version : N/A
FCODE Version : N/A
Board Name : H220
Board Assembly : H3-25278-05D
Board Tracer Number : SV34534734

Finished Processing Commands Successfully.
Exiting SAS2Flash.
[root@freenas] ~# sas2flash -list -c 1
LSI Corporation SAS2 Flash Utility
Version 16.00.00.00 (2013.03.01)
Copyright (c) 2008-2013 LSI Corporation. All rights reserved

Adapter Selected is a LSI SAS: SAS2308_2(D1)

Controller Number : 1
Controller : SAS2308_2(D1)
PCI Address : 00:08:00:00
SAS Address : 500605b-0-0937-08b0
NVDATA Version (Default) : 14.01.00.06
NVDATA Version (Persistent) : 14.01.00.06
Firmware Product ID : 0x2214 (IT)
Firmware Version : 20.00.04.00
NVDATA Vendor : LSI
NVDATA Product ID : SAS9207-8i
BIOS Version : 07.39.00.00
UEFI BSD Version : N/A
FCODE Version : N/A
Board Name : H221
Board Assembly : H3-25280-02B
Board Tracer Number : SV43407232

Finished Processing Commands Successfully.
Exiting SAS2Flash.
 
Last edited:

sfcredfox

Patron
Joined
Aug 26, 2014
Messages
340
That was all excellent information, and exactly what I was looking for.

My follow up question is: Do you have a copy of the original P16 IT mode firmware for the 9205-8e card?

I can't find the 9205-8e listed on LSI/Broadcom's website anymore and I'd like to have a copy of the P16 to fall back to in case things don't work out.
 

sfcredfox

Patron
Joined
Aug 26, 2014
Messages
340
Matthew,

Yours says 9205-8e, do you still have the original P16 firmware?
 
Joined
Feb 2, 2016
Messages
574
Status
Not open for further replies.
Top