Firmware Upgrade

Firmware upgrade can be performed either by using hl-fw-loader tool as described in Firmware Update Tool section, or as described below.

Note

Make sure to review the New FW Features and Enhancements section as well as the FW Known Limitations section in the Release Notes.

Platform Level Components

Before upgrading the firmware, make sure the following platform level components are upgraded:

  • CPLD - To upgrade the CPLD, refer to the Intel Gaudi vault.

  • Platform BIOS, and BMC FW - Refer to your system vendor documentation for details.

  • (HLS-2 only) PCIe switch version - Refer to your system vendor documentation for details.

Note

Contact your local Intel Gaudi support representative if you do not have access to the Intel Gaudi vault.

Firmware Upgrade

The habanalabs-firmware-odm package must be installed before firmware upgrade. See Driver and Software Installation.

  1. Unload the drivers:

    sudo modprobe -r habanalabs && sudo modprobe -r habanalabs_cn && sudo modprobe -r habanalabs_ib && sudo modprobe -r habanalabs_en
    
  2. Check the existing Gaudi SPI FW version by running the following command:

    sudo hl-fw-loader -s 2> /dev/null | grep SPI
    

    Only the SPI FW needs to be updated at the system level. Refer to the Support Matrix for the exact version. The below shows an example output for the 1.18.0-524 release:

    Current SPI version: Preboot version hl-gaudi3-1.18.0-fw-53.1.1-sec-8 (Dec 10 2024 - 14:18:12)
    
  3. To start the firmware upgrade, run the following command:

    sudo hl-fw-loader
    

    Note

    Upgrading the firmware may take a while to complete. Make sure no network problems or power failure occurs during upgrade.

  4. Load the drivers:

    sudo modprobe habanalabs && sudo modprobe habanalabs_cn && sudo modprobe habanalabs_ib && sudo modprobe habanalabs_en
    
  5. Re-check the SPI FW version by running the hl-smi command below and verify it matches the supported versions listed in the Support Matrix according to the Gaudi device you are using. The below shows an example output of Gaudi 2:

         $ hl-smi -L | grep SPI
         Firmware [SPI] Version: Preboot version hl-gaudi2-1.19.0-fw-56.1.0-sec-9 (Jul 20 2023 - 17:57:23)
         Firmware [SPI] Version: Preboot version hl-gaudi2-1.19.0-fw-56.1.0-sec-9 (Jul 20 2023 - 17:57:23)
         Firmware [SPI] Version: Preboot version hl-gaudi2-1.19.0-fw-56.1.0-sec-9 (Jul 20 2023 - 17:57:23)
         Firmware [SPI] Version: Preboot version hl-gaudi2-1.19.0-fw-56.1.0-sec-9 (Jul 20 2023 - 17:57:23)
         Firmware [SPI] Version: Preboot version hl-gaudi2-1.19.0-fw-56.1.0-sec-9 (Jul 20 2023 - 17:57:23)
         Firmware [SPI] Version: Preboot version hl-gaudi2-1.19.0-fw-56.1.0-sec-9 (Jul 20 2023 - 17:57:23)
         Firmware [SPI] Version: Preboot version hl-gaudi2-1.19.0-fw-56.1.0-sec-9 (Jul 20 2023 - 17:57:23)
         Firmware [SPI] Version: Preboot version hl-gaudi2-1.19.0-fw-56.1.0-sec-9 (Jul 20 2023 - 17:57:23)
    

Firmware Update Lock

This feature locks the SPI FW update, and can be used only when the driver is unloaded. The below commands can be executed from the host (in-band).

Note

  • This feature is available on Gaudi 3 only.

  • Make sure that the gaudi3-sec-fit-fw-57.0.1.tgz file has already been downloaded and extracted. If not, follow Step 1 and Step 2 below.

  1. Download the gaudi3-sec-fit-fw-57.0.1.tgz file in /lib/firmware/habanalabs/gaudi3/:

    wget https://vault.habana.ai/artifactory/gaudi-odm/{Version/gaudi3/gaudi3-sec-fit/gaudi3-sec-fit-fw-57.0.1.tgz
    
  2. Extract the gaudi3-sec-fit-fw-57.0.1.tgz file:

    sudo tar -xvf gaudi3-sec-fit-fw-57.0.1.tgz
    
  3. Lock the SPI FW update:

    sudo hl-fw-loader -f /lib/firmware/habanalabs/gaudi3/gaudi3-fw_upd_closure.itb
    

eROM Upgrade

When upgrading the FW, the eROM should also be upgraded. Before running the procedure, make sure you have the following:

  • Root privileges

  • BMC access

Note

  • Refer to the Support Matrix for the latest eROM version.

  • To verify the installed eROM version, run sudo hl-smi --fw-version.

To upgrade the eROM, perform the following:

  1. Unload the drivers:

    sudo modprobe -r habanalabs && sudo modprobe -r habanalabs_cn && sudo modprobe -r habanalabs_ib && sudo modprobe -r habanalabs_en
    
  2. Upgrade the eROM by running the following command:

    cd /opt/habanalabs/qual/gaudi3/bin
    sudo hl-fw-loader -f /lib/firmware/habanalabs/gaudi3/gaudi3-agent-fw_loader-fit_erom.itb
    
  3. Load the drivers:

    sudo modprobe habanalabs && sudo modprobe habanalabs_cn && sudo modprobe habanalabs_ib && sudo modprobe habanalabs_en
    

Note

For the out-of-band upgrade instructions, refer to Gaudi 3 OOB Management Specification available the Intel Gaudi vault.

To upgrade the eROM, perform the following:

  1. Unload the drivers:

    sudo modprobe -r habanalabs && sudo modprobe -r habanalabs_cn && sudo modprobe -r habanalabs_ib && sudo modprobe -r habanalabs_en
    
  2. Disable the eROM write protection:

    1. Read the current value of CPLD register 0x8:

      sudo i2cget -y -f <i2c_bus> 0x25 0x8
      
    2. Write 1 to bit 3 of CPLD register 0x8:

      sudo i2cset -y -f <i2c_bus> 0x25 0x8 <Val | 0x8> # Val is read in step a
      
  3. Upgrade the eROM by running the following command:

    cd /opt/habanalabs/qual/gaudi2/bin
    sudo hl-fw-loader -f /lib/firmware/habanalabs/gaudi2/gaudi2-agent-fw_loader-fit_erom.itb
    
  4. Enable the eROM write protection:

    1. Read the current value of CPLD register 0x8:

      sudo i2cget -y -f <i2c_bus> 0x25 0x8
      
    2. Write 0 to bit 3 of CPLD register 0x8:

      sudo i2cset -y -f <i2c_bus> 0x25 0x8 <val & ~0x8> # Val is read in step a
      
  5. Load the drivers:

    sudo modprobe habanalabs && sudo modprobe habanalabs_cn && sudo modprobe habanalabs_ib && sudo modprobe habanalabs_en