Skip to content

Instantly share code, notes, and snippets.

@buswedg
Created August 2, 2024 22:55
Show Gist options
  • Save buswedg/f94a7978b07c1976e81e6d456ec37853 to your computer and use it in GitHub Desktop.
Save buswedg/f94a7978b07c1976e81e6d456ec37853 to your computer and use it in GitHub Desktop.

Revisions

  1. buswedg created this gist Aug 2, 2024.
    63 changes: 63 additions & 0 deletions lenovo_430-x_hba_firmware_BIOS_update.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,63 @@
    # 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

    - [Broadcom Support Download Search](https://www.broadcom.com/support/download-search?dk=storcli)
    - [STORCLI SAS3.5 P31](https://docs.broadcom.com/docs/STORCLI_SAS3.5_P31.zip)
    - [STORCLI Documentation](https://docs.broadcom.com/doc/12352476)
    - [Lenovo Support Search](https://support.lenovo.com/us/en/search?query=mpt3.5.430&SearchType=Customer%20search&searchLocation=Masthead)
    - [Lenovo Storage Host Bus Adapter HBA Windows Firmware](https://support.lenovo.com/us/en/downloads/ds569134-lenovo-storage-host-bus-adapter-hba-windows-firmware)

    ### 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:
    ```sh
    storcli.efi show all
    ```
    6. Confirm the relevant HBA:
    ```sh
    storcli.efi /c0 show
    ```
    7. Backup STORCLI output to the USB:
    ```sh
    storcli.efi /c0 show all > backup\output.txt
    ```
    8. Backup current controller bios, firmware etc. to the USB:
    ```sh
    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
    ```
    9. Update the firmware:
    ```sh
    storcli.efi /c0 download file=16i_24_00_07_00.fw
    ```
    10. Update the EFI BIOS:
    ```sh
    storcli.efi /c0 download efibios file=mpt35sas_x64_24_00_05_00.rom
    ```
    11. Update the BIOS:
    ```sh
    storcli.efi /c0 download bios file=mpt35sas_legacy_9_47_03_00.rom
    ```
    12. Check HBA versions have updated:
    ```sh
    storcli.efi /c0 show
    ```
    13. Power cycle the machine.