2015-01-22
I came at this from several directions, trying to avoid the need to lay hands on the machine. But if you want to get on with it already, just prepare a FreeDOS USB flash boot disk, copy the firmware, ROM, and flash utility to it, and flash the firmware with that.
This procedure generally applies to all LSI 2000-series controllers. I have a four-lane controller, the 9211-4i, which uses the “LSISAS2004” chip. It’s effectively the same for, say, an 9211-8i, which would use the LSISAS2008” chip.
#Prepare the boot disk
bunzip
your downloaded image file.diskutil list
to get the /dev/diskn path to the drivediskutil unmountDisk /dev/disk*n*
to unmount itdd if=path/to/Freedos.img of=/dev/rdisk*n* bs=512
to write it to the diskfdisk -e /dev/disk*n*
to fix the boot partitionf 1
to flag the first partition “bootable”w
to write the partition tableq
to quit fdiskI believe at this point the disk re-mounts on a Mac automatically.
Now you’ll want to copy the .bin, .rom, and sas2flsh.exe files and executable from LSI to your USB drive:
9211-4i_Package_P19_IR_IT_Firmware_BIOS_for_MSDOS_Windows
cd ~/Downloads
unzip 9211-4i_Package_P19_IR_IT_Firmware_BIOS_for_MSDOS_Windows.zip
cd 9211-4i_Package_P19_IR_IT_Firmware_BIOS_for_MSDOS_Windows
mkdir -p /Volumes/FreeDOS/lsi/19
cp sas2flash_dos_rel/sas2flsh.exe /Volumes/FreeDOS/lsi/19/
cp Firmware/HBA_9211_4i_IT/2114it.bin /Volumes/FreeDOS/lsi/19/
cp sasbios_rel/mptsas2.rom /Volumes/FreeDOS/lsi/19/
diskutil eject /Volumes/FreeDOS
Now you’re ready to boot up the machine from the USB drive.
#Flash the card For the actual flashing, these instructions proved helpful and concise: http://lime-technology.com/forum/index.php?topic=34081.5;wap2
Everything you’ll read on this should warn you not to reboot the machine between erasing the old flash and flashing the new flash. To do so will apparently brick your card.
sas2flsh -list
to identify the card you want to flash. If you have only one controller installed, it will be “controller 0”. Otherwise, it’ll be “controller something else”.sas2flsh -listall
to verify your choice.sas2flsh -o -e 6 -c 0
to erase the flash area on controller 0.sas2flsh -o -f 2114it.bin -c 0
to write the IT flash image to controller 0.sas2flsh -o -b mptsas2.rom -c 0
to write the BIOS ROM to controller 0.sas2flsh -list
to verify the new version.sas2flsh -listall
to verify again.Now you can reboot. When the machine comes back up, the card will be factory-fresh with version 19 of the initiator-target flavored firmware.
On my SuperMicro board, this meant I needed to enter the LSI configuration BIOS tool (ctrl-C when prompted) to disable boot support. LSI boot support blocks booting from a USB flash drive.
Once that was done, I was booting back up into SmartOS from my normal USB drive.