LSI HBA adapter notes - Background
If you want to add significant amounts of storage to your computer, you may find that getting a decent SATA controller for a good price is pretty challenging. I’ve had some success with these, but have also found some of them a bit flaky or very expensive. However, it turns out that LSI based adapter cards for SAS drives offer a very performant option, for not a lot of money.
I’ve bought two of these, the first was pretty much plug and play, I think an IBM H1110, already in IT mode: https://www.ebay.co.uk/itm/124168996493 Once I got the right cables to connect it to SATA drives.
lspci output: 28:00.0 RAID bus controller: Broadcom / LSI SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (rev 03)
The second one I bough more recently gave me some problems. Sold as an HP H220 card, I was initially a bit disappointed:
- Very slow boot times (seemed to hang the system, though it did boot eventually
- The firmware was only P14, so earlier than the most recent P20 firmware that is recommended. I hadn’t expected to need to do any firmware/bios flashing, but ended up going that route.
I’m going to collect here some of the resources that I found helpful, and then summarise the specific things I needed to do with my own card.
Guides and Documentation
Collecting here some good resources, and how I used them.
- TrueNAS Detailed Guide to Crossflashing. This is a brilliant resource, though it’s tremendously long. Should get you from where-ever you are to where you need be. Includes the steps required to get from OEM firmware to LSI firmware, and from there up to the more recent version. Also a lot of practical information on “unbricking” cards (clue: turns out they’re almost never really bricked)
- Flashing HP H220/H221 SAS cards this is just a forum thread, but was nevertheless helpful in highlighting some of the inconsistencies regarding labelling and identification of HP OEM cards.
- Updating your LSI SAS Controller with a UEFI Motherboard Helpful in particular in relation to how to setup a USB drive to boot into a UEFI shell for running some of the LSI tools.
- SAS HBA crossflashing or flashing to IT mode, Dell Perc H200 and H310 Yet another guide. In particular has the tip regarding covering a couple of pins on the PCI connector so that boot doesn’t get blocked on some card/mboard combos (I didn’t actually have to do this). Reddit thread discussing this further
- Note regarding finding the relevant firmware
This is where you get the firmware files and also the tools for
flashing firmware and BIOS to the cards.
- Key thing is that you go to the Broadcom support site: https://www.broadcom.com/support , then navigate to support and services, from there select Documents, Downloads and Support > Support Documents and Downloads
- This brings you to the relevant search page: https://www.broadcom.com/support/download-search
- Choose Legacy Products for Product Group
- Choose Legacy Host Bus Adapters for Product Family
- Type in relevant product name, and search
Specific steps for HP HBA card
The guides above are where you’re likely to find your solution, however just in case the specifics of my case are relevant, here are a couple of high level observations.
The card did come with an IT mode firmware, and as far as I could tell, it was already an LSI firmware (as opposed to an HP OEM firmware). This simplifies the process when compared to the true cross-flashing process described in the “Detailed Guide” above.
The card was labelled as an SAS9205-8i, and I downloaded the relevant firmware from here. Note that this is a 9205-8e firmware, while the card is labelled 9205-8i. I expected this to work, and I could not find an 8i firmware in the database.
I tood a dead end trying to set up a FreeDOS boot-drive to run the relevant tools. As my MBoard is UEFI booting, this could not work (this is very obvious I’m sure). I didn’t spend long trying to switch the MBoard to legacy booting as that was not straightforward.
The EFI-boot guide above was very helpful in switching tack to using the EFI tools. The guide is redundant, but in any case it worked fine. Unfortunately I hit problems trying to sas2flash the firmware on to the board.
LSI Corporation SAS2 Flash Utility
Version 10.00.00.00 (2011.05.13)
Copyright (c) 2008-2011 LSI Corporation. All rights reserved
Advanced Mode Set
Adapter Selected is a LSI SAS: SAS2308_2(Rev 5)
Executing Operation: Flash Firmware Image
Firmware Image has a Valid Checksum.
Firmware Image compatible with Controller.
Valid NVDATA Image found.
ERROR: NVDATA Image does not match Controller Chip Revision!
NVDATA Chip Revision Range: 0x1 to 0x3
Controller Chip Revision: 0x5
Firmware Image Validation Failed!
Due to error remaining commands will not be executed.
Unable to Process Commands.
I later discovered that there are also Linux native versions of sas2flash. They gave me the same error as the EFI version. Trying different versions of the flashing tool (e.g. going back to P12 an P14) were no more successful (apparently some of the older versions are less picky about the specifics of the board, which can help when making the jump from OEM firmware to the first LSI firmware.
Finally, after looking more at the HP links above, and a bit emboldened by the reassurances in the Detailed Guide on how salvagable almost all outcomes are, I decided to just try another “credible” firmware. I downloaded the 9207-8i firmware, and this finally worked!
sudo ./sas2flash -c 0 -o -f ../../9207_8i_Package_P20_IR_IT_FW_BIOS_for_MSDOS_Windows/Firmware/HBA_9207_8i_IT/9207-8.bin
I cannot of course vouch for the suitability of this firmware, however it has been working fine for me so far, and some of the discussion above seems to indicate that HP has been very slapdash in the labelling and naming of cards.
replacing or removing the BIOS to speed up boot. First try, from the linux command line tool (P14) was not successful, but I haven’t pursued it further.>> Home