Updating LSI 9500-8i Firmware
A complete guide to updating the firmware on Broadcom LSI 9500-8i HBA cards.
Blog Post Overview
Updating LSI 9500-8i Firmware
You're probably wondering why there are so many posts about HBA controllers on this blog.
The truth is, the power consumption of my previous cards was always bugging me. I chased efficiency until I ended up here. When you run a server 24/7 in a home lab, every watt counts—not just for the electricity bill, but for the heat dumped into the chassis.
I did some testing, and the difference is actually staggering:
| Model | Power Consumption (approx.) | Temperature (in my case (literally lol)) |
|---|---|---|
| LSI 9305-16i | 16.2 W | ~100°C |
| LSI 9400-16i | 11.95 W | ~70°C |
| LSI 9500-8i | 5.96 W | ~50°C |
That drop to ~50°C is huge. It means I don't have to worry about screaming fans or my HBA cooking itself.
Why Update?
Keeping your HBA firmware up-to-date ensures:
- Improved stability and compatibility
- Better drive support (especially newer models)
- Performance optimizations and bug fixes
- Security patches
The Update Process
While updating the 9500-8i is very similar to the other cards I covered before, there is one critical new step (the PSOC update).
What You'll Need
1. Firmware Package
Download the latest firmware from Broadcom:
2. PSOC Firmware (Critical for 9500 series)
The 9500 series requires an additional PSOC (Programmable System-on-Chip) update:
3. STORCLI Flashing Software
Download the STORCLI utility (required for flashing):
4. USB Flash Drive
Critical: The USB drive must be formatted with FAT32 file system, as the EFI shell cannot read other filesystems.
# Replace sdX with your USB drive identifier (check with lsblk)
mkfs.fat -F32 /dev/sdX1
⚠️ Warning: This will erase all data on the USB drive. Back up any important files first!
Step-by-Step Guide
1. Prepare the USB Drive
Extract your downloaded Broadcom zip files and copy these four specific files to the root of your USB drive:
storcli.efi(The flashing tool)HBA_9500-8i_Mixed_Profile.binorHBA_9500-8i_SAS_SATA_Profile.bin(The Firmware)IT_HBA_X64_BIOS_PKG_E6.rom(The BIOS)pblp_catalog.signed.rom(The PSOC file)
Choosing the Right Firmware Profile:
-
HBA_9500-8i_SAS_SATA_Profile.bin
- For SAS and SATA drives only
- Recommended if you don't need NVMe (I've read somewhere that it offers better performance when you're not using NVMe drives)
- This is what I use
-
HBA_9500-8i_Mixed_Profile.bin (SAS/SATA/NVMe)
- Required for NVMe drive support
⚠️ Important: Make absolutely sure you're using the x64 versions of all files.
2. Boot into EFI Shell
- Plug the USB drive into your server
- Reboot your system
- Enter your BIOS/UEFI settings (common keys: F2, F10, F12, or Del - check during POST)
- Look for an option to boot into EFI Shell or UEFI Shell
- Select it and boot
Sometimes there's no direct way to enter the EFI shell from BIOS. I recommend keeping a bootable USB with something like Arch Linux around, as it typically includes both a memory tester (often useful) and EFI shell access built in.
3. Navigate to Your USB Drive
Once in the EFI Shell, you'll see a command prompt. Your USB drive will be mounted as a filesystem (fs0:, fs1:, etc.).
# List all available filesystems
map
# Try fs0: first (most common for USB drives)
fs0:
# List files to verify you're on the correct drive
ls
# If you don't see the firmware files, try other drives:
fs1:
ls
# Continue until you find the correct filesystem
fs2:
ls
Tip: The map command shows all available storage devices and their assigned filesystem labels.
4. Flash the Firmware
Important: For the 9500 series, the update order matters. Start with the firmware.
# For SAS/SATA only setup:
storcli.efi /c0 download file=HBA_9500-8i_SAS_SATA_Profile.bin
# OR for SAS/SATA/NVMe setup:
storcli.efi /c0 download file=HBA_9500-8i_Mixed_Profile.bin
Understanding the command:
/c0refers to controller 0 (your first LSI controller)- If you have multiple LSI controllers, use
/c1,/c2, etc. - To list all controllers, run:
storcli.efi show
Note: Some sources suggest using download firmware instead of just download, but in my experience, the shorter command works fine. If one doesn't work, try the other.
The flashing process will take a short while. Do not interrupt it or power off the system.
5. Flash the BIOS
Next, update the boot ROM (MPTSAS3).
storcli.efi /c0 download file=IT_HBA_X64_BIOS_PKG_E6.rom
Note: Some sources suggest using download bios instead of just download, but in my experience, the shorter command works fine. If one doesn't work, try the other.
The BIOS update will also take a short while.
6. Flash the PSOC (Critical for 9500 Series)
This is where the 9500 differs from older models like the 9400. The PSOC (Programmable System-on-Chip) manages low-level hardware signals and power management.
storcli.efi /c0 download psoc file=pblp_catalog.signed.rom
The PSOC update will take a short while.
7. Verify and Reboot
After all three updates complete successfully:
# Verify the firmware, BIOS, and PSOC versions
storcli.efi /c0 show all
# Look for "FW Package Build", "BIOS Version", and "PSOC Version" in the output
Once verified, exit the EFI shell and reboot:
exit
# Or simply press the power button
Verification After Reboot
Once your system boots back into Linux, verify the update:
# Install storcli on your system if not already present
sudo ./storcli64 /c0 show all | grep -E "FW Package Build|BIOS Version|PSOC"
# Or check dmesg for LSI controller information
dmesg | grep -i mpt3sas
You should see the updated firmware version.


