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.
@glaserf
Copy link

glaserf commented Sep 25, 2025

If you look at it it seems there are only genuine cables which connect 2x SAS8643 to 2x U.2. I would speculate that this is for some reason... https://www.genuinemodules.de/05-50065-00

Damn.. there's also this https://www.genuinemodules.de/05-50061-00 which further cements our suspicion about the 2x 8643 being necessary. And now I really wonder if these cables work with what I originally had in mind (see above).

@glaserf
Copy link

glaserf commented Oct 10, 2025

Well, what should I say?

It bloody works - finally!

Turns out, the cable from Ali was dodgy - who would've thought! Not sure if only mine or they don't work in general, either way it is straight going back and my money refunded.
The cable from Amazon just works, is cheaper, and in general looks like its built with higher quality.

What a journey. Sadly, temperature reporting for the NVMe drive connected to the HBA does not work, as has been mentioned here and elsewhere already. Apart from that, it absolutely fits my use case, given the PCIe limitations of my MoBo/platform.

@webermar

@cannondale0815
Copy link

although the HBA seems to be working fine, (I did some speed tests in Windows) I am not able to boot into the HBA BIOS. Have tried changing many settings in host BIOS to accomadate legacy/EFI/CSM etc. and the most I'm seeing is a "Broadcom MPT35 HBA BIOS" splash screen on boot, where it "initializes" and then checks for disks attached to the HBA, but It never shows the option to load the BIOS with "Ctrl + C". It just finishes checking for disks and then the server boots into the OS. Anyways..

@CodeRipley Did you ever figure this out? I just performed the cross-flash and am having the same issue not being able to get into the card's BIOS setup screens.

@glaserf
Copy link

glaserf commented Nov 21, 2025

Wait, the card does have a BIOS setup menu? I thought more than showing the detected disks is anyways not possible.

@dgaglioni
Copy link

@glaserf @cannondale0815

From Broadcom 9400 series or newer the card setup is accessed through motherboard BIOS.

@webermar
Copy link

@glaserf @cannondale0815

From Broadcom 9400 series or newer the card setup is accessed through motherboard BIOS.

What Firmware did you use/flash?

It does not make sense to have a bootable card BIOS, because it is a HBA, not a RAID card. But it can be possible with correct firmware.
Keep in mind that configuration can be done with the storcli utility.

@nielsroskam
Copy link

nielsroskam commented Nov 23, 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?

@cannondale0815
Copy link

cannondale0815 commented Nov 24, 2025

I figured out why I couldn't access the BIOS settings of the 9400 card. This page here pointed me in the right direction. I basically needed to disable Secure Boot and set the "Launch Storage OpROM policy" in my SuperMicro BIOS to UEFI only. From the next reboot onwards, I now have an "Avago" section under "Advanced" in my SuperMicro BIOS.

Differently put, the 9400 series behaves differently from the 9300. Whereas the older cards had their settings accessible via Ctrl+C at boot, the newer 9400 series integrates their settings into the motherboards BIOS via UEFI (and do not have the settings pages for legacy BIOS anymore).

@cannondale0815
Copy link

I purchased one of these Lenove 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.

@nielsroskam
Copy link

nielsroskam commented Nov 26, 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).

@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