Sunday, December 4, 2016

Updating LSI Logic SAS 9211-8i IT Firmware

Some time ago I have cross-flashed my IBM ServeRAID M1015 SAS/SATA controller to an LSI SAS 9211-8i in IT mode. I did that using version 17 of the firmware. FreeNAS was now complaining for some time on the old version. It recommended upgrading to version 21 to be fully compatible with the driver. It turned out that version 20 was the newest version. I took the following steps to upgrade my firmware.

I download the newest firmware from Avago (part of Broadcom), who bought LSI Logic. Their site links to the Broadcom site.

Download Firmware

I downloaded the "9211-8i_Package_P20_IR_IT_Firmware_BIOS_for_MSDOS_Window". The ZIP contains both the 2118it.bin (in Firmware/HBA_9211_8i_IT) and sas2flsh.exe (in sas2flash_dos_rel).

Next I created a USB Drive that boots FreeDOS by using Rufus 2.11. I had some issues booting of the Flash Drive. Make sure that USB Compatibility Mode is set to auto (or enabled) and use F8 for the BIOS/UEFI boot menu while booting. I was not able to set the correct drive in the BIOS Setup itself, but I was able to choose it in the boot menu.

I copied both files (2118it.bin and sas2flsh.exe) to the root of the flash drive and booted FreeDOS. First I executed the command to see which SAS cards are in your system and the versions that go with it.

C:\>sas2flsh -listall
LSI Corporation SAS2 Flash Utility
Version 20.00.00.00 (2014.09.10)
Copyright (c) 2008-2014 LSI Corporation. All rights reserved

        Adapter Selected is a LSI SAS: SAS2008(B1)

Num Ctlr         FW Ver       NVDATA       x86-BIOS     PCI Addr
-------------------------------------------------------------------
0   SAS2008(B1)  17.00.01.00  11.00.00.07  07.33.00.00  00:02:00:00

        Finished Processing Commands Successfully.
        Exiting SAS2Flash

After that the firmware ROM needs to be deleted (do not reboot your system during or after this)

C:\>sas2flsh -c 0 -o -e 6

Then flash the new firmware.

C:\>sas2flsh -c 0 -f 2118it.bin

I did not flash the boot ROM with it, because I boot from a 'normal' SATA disk connected to the mainboard. If you need to (and I probably did that the first time I cross flashed the card), you can find the boot ROM in the same ZIP (sasbios_rel/mptsas2.rom) and use the following command:

C:\>sas2flsh -c 0 -f 2118it.bin -b mptsas2.rom

With sas2flsh -listall you can verify if the update was successful. If so, you should restart your system.