Flashing an LSI SAS controller in 2022, AKA "IT-mode" and UEFI
Scope: #
I have a controller, LSI SAS9217-4i4e, wit IR firmware and want to switch it to IT firmware.
Why: #
For these SAS controllers there are 2 operating modes:
- IR: raid features, your machine won't see the disk directly but will see the raid volumes from the raid controller
- IT: passtrough or pure-HBA mode, you machine will see the disks directly and you'll be able to manage them
I want the IT mode because I have some SAS disks I need to format and I can't do it as I like in IR mode.
Ok, but I meant "why you need a SAS controller": #
Well it's not obvious?
In case it isn't, I have some drives lying around and wanted to wipe them.
Also I should be able to play around with some SAS drive enclosure (a box that contains many SAS drives and exits with one or more sas cables).
Steps: #
- Download the files from broadcom site:
- from here: https://www.broadcom.com/site-search?q=SAS9217-4i4e
- download: 9217_4i4e_Package_P20_IR_IT_FW_BIOS_for_MSDOS_Windows.zip
- download: Installer_P20_for_UEFI.zip
- With Rufus (on Windows, yes I know..) create a USB key
- not bootable since we are using UEFI
- Create the usb key:
- download the EFI Shell from: https://github.com/tianocore/edk/raw/master/Other/Maintained/Application/UefiShell/bin/x64/Shell_Full.efi
- add it to your usb key in the root renamed shell.efi
- Copy the SAS controller files, from the archies fcopy these files to the root of your usb drive::
- from Installer_P20_for_UEFI.zip copy:
- /Installer_P20_for_UEFI/sas2flash_efi_ebc_rel/sas2flash.efi (the flash utility)
- from 9217_4i4e_Package_P20_IR_IT_FW_BIOS_for_MSDOS_Windows.zip copy:
- /9217_4i4e_Package_P20_IR_IT_FW_BIOS_for_MSDOS_Windows/sasbios_rel/mptsas2.rom (the controller bios)
- /9217_4i4e_Package_P20_IR_IT_FW_BIOS_for_MSDOS_Windows/Firmware/HBA_9207_4i4e_IT/9207-4i4e.bin (the controller firmware)
- from Installer_P20_for_UEFI.zip copy:
- The final folder structure should be like this:
-
. ├── 9207-4i4e.bin ├── autorun.ico ├── autorun.inf ├── mptsas2.rom ├── sas2flash.efi ├── shell.efi └── System Volume Information └── WPSettings.dat
-
- Prepare the PC:
- disconnect as many disks/peripherals you can from your pc leaving just the controller if possible
- connect your usb drive
- Start the EFI shell (tested on my Asus motherboard):
- boot your pc
- go in the BIOS pressing F2 at boot
- in the last page select "Open EFI shell from USB drive"
- in the EFI shell:
- execute "map" to see the drivesm they will be "fs0, fs1 etc.."
- identify your correct disk (for example there is written "USB" in the description)
- mount the drive: "mount fs1"
- change folder "fs1:"
- list folder content: "dir"
- Flash the controller:
- execute "sas2flash.efi -listall" to list the controller
- execute "sas2flash.efi -o -e 6" to clear the controller bios
- execute "sas2flash.efi -o -f 9207-4i4e.bin -b mptsas2.rom" to flash the new firmware and bios on the controller
- execute "sas2flash.efi -listall" to list the controller
- Check your work:
- reboot the computer
- enter in the controller bios (when prompted press "CTRL+C"
- select the controller and you'll see that it's now in IT mode
- Congrats!
Sources: #
- https://digitalcardboard.com/blog/2014/07/09/flashing-it-firmware-to-the-lsi-sas-9211-8i-hba-2014-efi-recipe/
- https://www.truenas.com/community/threads/sas2flash-easier-alternative.30789/page-2
- https://forums.servethehome.com/index.php?threads/help-with-hp-9207-4i4e-needed-firmware-update-problem-lsi-sas2308.34666/
- https://www.truenas.com/community/threads/sas2flash-easier-alternative.30789/#post-199640
- https://serverfault.com/questions/679175/failed-to-initialize-pal-while-upgrading-an-lsi-9211-8i-to-it