Skip to content

Instantly share code, notes, and snippets.

@buswedg
Created August 2, 2024 22:55
Show Gist options
  • Select an option

  • Save buswedg/f94a7978b07c1976e81e6d456ec37853 to your computer and use it in GitHub Desktop.

Select an option

Save buswedg/f94a7978b07c1976e81e6d456ec37853 to your computer and use it in GitHub Desktop.

Lenovo 430-x HBA Firmware/BIOS Update

What?

Guide on how to update the firmware and BIOS of a Lenovo ThinkSystem 430-x SAS/SATA 12Gb HBA.

References

Steps

  1. Download the latest STORCLI utility for LSI SAS3.5 Controllers per the reference above.
  2. Download the latest HBA (Windows) driver package per the reference above.
  3. Extract the packages to a folder on your local (Windows) machine.
  4. Copy the relevant files to a FAT32 formatted USB, for example:
    • storcli.efi
    • 16i_24_00_07_00.fw
    • mpt35sas_x64_24_00_05_00.rom
    • mpt35sas_legacy_9_47_03_00.rom
  5. Boot to the USB via EFI shell.
  6. Identify the relevant (cX) HBA:
    storcli.efi show all
  7. Confirm the relevant HBA:
    storcli.efi /c0 show
  8. Backup STORCLI output to the USB:
    storcli.efi /c0 show all > backup\output.txt
  9. Backup current controller bios, firmware etc. to the USB:
    storcli.efi /c0 get bios file=backup\bios
    storcli.efi /c0 get firmware file=backup\firmware
    storcli.efi /c0 get mpb file=backup\mpb
    storcli.efi /c0 get fwbackup file=backup\fwbackup
    storcli.efi /c0 get nvdata file=backup\nvdata
    storcli.efi /c0 get flash file=backup\flash
  10. Update the firmware:
    storcli.efi /c0 download file=16i_24_00_07_00.fw
  11. Update the EFI BIOS:
    storcli.efi /c0 download efibios file=mpt35sas_x64_24_00_05_00.rom
  12. Update the BIOS:
    storcli.efi /c0 download bios file=mpt35sas_legacy_9_47_03_00.rom
  13. Check HBA versions have updated:
    storcli.efi /c0 show
  14. Power cycle the machine.
@cannondale0815
Copy link

cannondale0815 commented Nov 27, 2025

I purchased one of these Lenovo 430-16i cards on eBay and now wait its delivery. However now I have a concern that it won't work at all, i.e. not be recognised, by my HP ML10 v2 server, which has no UEFI, but only a legacy BIOS. Has anyone ever tried a 9400-16i PCIe card on a system that only has a Legacy BIOS? Should I order a 9305-16i instead, which supposedly is supported by Legacy BIOS?

It'll work fine, but you won't have access to the settings. Which isn't really needed anyway. At boot, you will still see a list of the drives it detected.

Have you got this 9400-16i (or its Lenovo counterpart) running on an (older) server that hasn't got UEFI? It goes against everything I'm reading about it. As the BIOS doesn't recognise the card, it won't recognise the disks either, as such it is impossible to forward the disk information on to the OS (that being Linux or whatever).

My server had UEFI disabled and was set to Legacy Only, yet the card still worked, and it still shows a list of drives it detects at boot time in Legacy Mode. Also see this link here for details on the 9400 series and UEFI vs. Legacy.

And yes, I have the 430-16i with the latest Lenovo firmware that is linked in the original post. I also inbetween cross-flashed it to the latest Broadcom/LSI firmware of the 9400, which also worked, but then I realized that the Lenovo firmware is newer, so I went back to the Lenovo firmware.

Anyway, it will work in Legacy, but you won't be able to to change any settings. Which isn't really much of an issue. Even though I do have access to the UEFI Advanced menu of this card, I gave it a glance and there's nothing I have changed in terms of the default settings.

@lux73
Copy link

lux73 commented Nov 28, 2025

Thx!

i'll be able to flash my recently brought 430-16i (with very old FW 11.x delivered) to latest 24.x via EFI Shell with an old X9SCA-F Supermicro Board

another Asus P8Z77-V LK Board was unable to flash

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment