[Mellanox] Add support to Mellanox Spectrum-4 ASIC Firmware compiling and upgrade (#12844)
- Why I did it Add support for compiling Spectrum-4 ASIC firmware to the SONiC image Add support for Spectrum-4 ASIC firmware upgrade - How I did it Update Mellanox fw make files to include Spectrum-4 ASIC firmware binaries. Update firmware upgrade scripts to be able to detect Spectrum-4 ASIC. - How to verify it Run regression tests Signed-off-by: Kebo Liu <kebol@nvidia.com>
This commit is contained in:
parent
28c8d4c88d
commit
28f8da80ea
@ -925,6 +925,7 @@ sudo mkdir -p $FILESYSTEM_ROOT/etc/mlnx/
|
||||
sudo cp $files_path/$MLNX_SPC_FW_FILE $FILESYSTEM_ROOT/etc/mlnx/fw-SPC.mfa
|
||||
sudo cp $files_path/$MLNX_SPC2_FW_FILE $FILESYSTEM_ROOT/etc/mlnx/fw-SPC2.mfa
|
||||
sudo cp $files_path/$MLNX_SPC3_FW_FILE $FILESYSTEM_ROOT/etc/mlnx/fw-SPC3.mfa
|
||||
sudo cp $files_path/$MLNX_SPC4_FW_FILE $FILESYSTEM_ROOT/etc/mlnx/fw-SPC4.mfa
|
||||
sudo cp $files_path/$ISSU_VERSION_FILE $FILESYSTEM_ROOT/etc/mlnx/issu-version
|
||||
sudo cp $files_path/$MLNX_FFB_SCRIPT $FILESYSTEM_ROOT/usr/bin/mlnx-ffb.sh
|
||||
sudo cp $files_path/$MLNX_ONIE_FW_UPDATE $FILESYSTEM_ROOT/usr/bin/$MLNX_ONIE_FW_UPDATE
|
||||
|
@ -14,3 +14,7 @@ $(MLNX_SPC2_FW_FILE)_DEP_FILES := $(DEP_FILES)
|
||||
$(MLNX_SPC3_FW_FILE)_CACHE_MODE := GIT_CONTENT_SHA
|
||||
$(MLNX_SPC3_FW_FILE)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST)
|
||||
$(MLNX_SPC3_FW_FILE)_DEP_FILES := $(DEP_FILES)
|
||||
|
||||
$(MLNX_SPC4_FW_FILE)_CACHE_MODE := GIT_CONTENT_SHA
|
||||
$(MLNX_SPC4_FW_FILE)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST)
|
||||
$(MLNX_SPC4_FW_FILE)_DEP_FILES := $(DEP_FILES)
|
||||
|
@ -42,7 +42,12 @@ MLNX_SPC3_FW_FILE = fw-SPC3-rel-$(subst .,_,$(MLNX_SPC3_FW_VERSION))-EVB.mfa
|
||||
$(MLNX_SPC3_FW_FILE)_PATH = $(MLNX_FW_BASE_PATH)
|
||||
$(MLNX_SPC3_FW_FILE)_URL = $(MLNX_FW_BASE_URL)/$(MLNX_SPC3_FW_FILE)
|
||||
|
||||
MLNX_FW_FILES = $(MLNX_SPC_FW_FILE) $(MLNX_SPC2_FW_FILE) $(MLNX_SPC3_FW_FILE)
|
||||
MLNX_SPC4_FW_VERSION = 34.2010.4026
|
||||
MLNX_SPC4_FW_FILE = fw-SPC4-rel-$(subst .,_,$(MLNX_SPC4_FW_VERSION))-EVB.mfa
|
||||
$(MLNX_SPC4_FW_FILE)_PATH = $(MLNX_FW_BASE_PATH)
|
||||
$(MLNX_SPC4_FW_FILE)_URL = $(MLNX_FW_BASE_URL)/$(MLNX_SPC4_FW_FILE)
|
||||
|
||||
MLNX_FW_FILES = $(MLNX_SPC_FW_FILE) $(MLNX_SPC2_FW_FILE) $(MLNX_SPC3_FW_FILE) $(MLNX_SPC4_FW_FILE)
|
||||
|
||||
ifeq ($(FW_FROM_URL),n)
|
||||
SONIC_COPY_FILES += $(MLNX_FW_FILES)
|
||||
@ -55,3 +60,4 @@ MLNX_FILES += $(MLNX_FW_FILES)
|
||||
export MLNX_SPC_FW_FILE
|
||||
export MLNX_SPC2_FW_FILE
|
||||
export MLNX_SPC3_FW_FILE
|
||||
export MLNX_SPC4_FW_FILE
|
||||
|
@ -28,6 +28,7 @@ declare -r LIST_CONTENT_FILE="/tmp/mlxfwmanager-list-content.log"
|
||||
declare -r SPC1_ASIC="spc1"
|
||||
declare -r SPC2_ASIC="spc2"
|
||||
declare -r SPC3_ASIC="spc3"
|
||||
declare -r SPC4_ASIC="spc4"
|
||||
declare -r UNKN_ASIC="unknown"
|
||||
declare -r UNKN_MST="unknown"
|
||||
|
||||
@ -35,6 +36,7 @@ declare -rA FW_FILE_MAP=( \
|
||||
[$SPC1_ASIC]="/etc/mlnx/fw-SPC.mfa" \
|
||||
[$SPC2_ASIC]="/etc/mlnx/fw-SPC2.mfa" \
|
||||
[$SPC3_ASIC]="/etc/mlnx/fw-SPC3.mfa" \
|
||||
[$SPC4_ASIC]="/etc/mlnx/fw-SPC4.mfa" \
|
||||
)
|
||||
|
||||
IMAGE_UPGRADE="${NO_PARAM}"
|
||||
@ -137,6 +139,7 @@ function GetAsicType() {
|
||||
local -r SPC1_PRODUCT_ID="cb84"
|
||||
local -r SPC2_PRODUCT_ID="cf6c"
|
||||
local -r SPC3_PRODUCT_ID="cf70"
|
||||
local -r SPC4_PRODUCT_ID="cf80"
|
||||
|
||||
if lspci -n | grep "${VENDOR_ID}:${SPC1_PRODUCT_ID}" &>/dev/null; then
|
||||
echo "${SPC1_ASIC}"
|
||||
@ -147,6 +150,9 @@ function GetAsicType() {
|
||||
elif lspci -n | grep "${VENDOR_ID}:${SPC3_PRODUCT_ID}" &>/dev/null; then
|
||||
echo "${SPC3_ASIC}"
|
||||
exit "${EXIT_SUCCESS}"
|
||||
elif lspci -n | grep "${VENDOR_ID}:${SPC4_PRODUCT_ID}" &>/dev/null; then
|
||||
echo "${SPC4_ASIC}"
|
||||
exit "${EXIT_SUCCESS}"
|
||||
fi
|
||||
|
||||
echo "${UNKN_ASIC}"
|
||||
|
Loading…
Reference in New Issue
Block a user