4f403c9079
This is to backport #16096 Why I did it SONiC changes: Support Spectrum4 ASIC FW binary building. Support new SDK sx-obj-desc lib building since new SAI need it. Remove SX_SCEW debian package from Mellanox SDK build since we are no longer using it (we use libxml2 instead). Update SAI, SDK, FW to version 4.6.1020/2012.1020/SAIBuild2211.25.1.0 SDK/FW bug fixes In SPC-1 platforms: Fastboot mode is not operational for Split port with Force mode in 50G speed SFP modules are kept in disabled state after set LPM (low power mode) on/off for at least 3 minutes. When preforming fast boot from an old SDK version (currently installed) to a newer one (target version), and the system was initially loaded with a new SDK version (past version), and the system has not been wiped, under specific conditions, the fast boot would use the past version's data and may fail. SDK/FW Features On SN2700 all ports can support y cable by credo SAI bug Fixes When creating an ACL rule with SAI_ACL_ENTRY_ATTR_FIELD_SRC_IP/SAI_ACL_ENTRY_ATTR_FIELD_DST_IP enabled, and then disabling the field by setting enable=false, a match on L3_type=IPv4 will remain programmed for the rule Issue resolved after the fix Allow the max scale of virtual routers to be configure for SPC-1, SPC-2, SPC-3 when fastboot enable Remove default hash key of SRC_MAC, DST_MAC and ETH_TYPE SAI features Port init profile Dual ToR Active-Standby | Additional MAC support Work item tracking Microsoft ADO (number only): How I did it Update SDK/FW/SAI make files How to verify it Run full sonic-mgmt regression on Mellanox platform
232 lines
8.4 KiB
Plaintext
232 lines
8.4 KiB
Plaintext
# DPKG FRK
|
|
|
|
# Append MLNX_SDK_DEB_VERSION to flags list.
|
|
# We use SONIC_OVERRIDE_BUILD_VARS in order to build SONiC with any SDK we want
|
|
# by passing it in environment variable. This approach does not work well with
|
|
# caching framework which assumes that if the corresponding makefile didn't change
|
|
# the version didn't change neither. There is no ultimate solution to support
|
|
# caching and anything user can pass in SONIC_OVERRIDE_BUILD_VARS, so as a W/A
|
|
# we append MLNX_SDK_DEB_VERSION to flags to invalidate cache in case we use
|
|
# SONIC_OVERRIDE_BUILD_VARS.
|
|
MLNX_SDK_COMMON_FLAGS_LIST = $(SONIC_COMMON_FLAGS_LIST) $(MLNX_SDK_DEB_VERSION)
|
|
|
|
# APPLIBS
|
|
|
|
SPATH := $($(APPLIBS)_SRC_PATH)
|
|
DEP_FILES := $(SONIC_COMMON_FILES_LIST) $(PLATFORM_PATH)/sdk.mk $(PLATFORM_PATH)/sdk.dep
|
|
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
|
DEP_FILES += $(shell git ls-files -- $(SPATH))
|
|
|
|
$(APPLIBS)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(APPLIBS)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(APPLIBS)_DEP_FILES := $(DEP_FILES)
|
|
|
|
$(APPLIBS_DEV)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(APPLIBS_DEV)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(APPLIBS_DEV)_DEP_FILES := $(DEP_FILES)
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
$(APPLIBS_DBGSYM)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(APPLIBS_DBGSYM)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(APPLIBS_DBGSYM)_DEP_FILES := $(DEP_FILES)
|
|
endif
|
|
|
|
# SX_COMPLIB
|
|
|
|
SPATH := $($(SX_COMPLIB)_SRC_PATH)
|
|
DEP_FILES := $(SONIC_COMMON_FILES_LIST) $(PLATFORM_PATH)/sdk.mk $(PLATFORM_PATH)/sdk.dep
|
|
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
|
DEP_FILES += $(shell git ls-files -- $(SPATH))
|
|
|
|
$(SX_COMPLIB)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_COMPLIB)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_COMPLIB)_DEP_FILES := $(DEP_FILES)
|
|
|
|
$(SX_COMPLIB_DEV)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_COMPLIB_DEV)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_COMPLIB_DEV)_DEP_FILES := $(DEP_FILES)
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
$(SX_COMPLIB_DBGSYM)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_COMPLIB_DBGSYM)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_COMPLIB_DBGSYM)_DEP_FILES := $(DEP_FILES)
|
|
endif
|
|
|
|
# SX_EXAMPLES
|
|
|
|
SPATH := $($(SX_EXAMPLES)_SRC_PATH)
|
|
DEP_FILES := $(SONIC_COMMON_FILES_LIST) $(PLATFORM_PATH)/sdk.mk $(PLATFORM_PATH)/sdk.dep
|
|
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
|
DEP_FILES += $(shell git ls-files -- $(SPATH))
|
|
|
|
$(SX_EXAMPLES)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_EXAMPLES)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_EXAMPLES)_DEP_FILES := $(DEP_FILES)
|
|
|
|
$(SX_EXAMPLES_DEV)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_EXAMPLES_DEV)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_EXAMPLES_DEV)_DEP_FILES := $(DEP_FILES)
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
$(SX_EXAMPLES_DBGSYM)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_EXAMPLES_DBGSYM)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_EXAMPLES_DBGSYM)_DEP_FILES := $(DEP_FILES)
|
|
endif
|
|
|
|
# SX_GEN_UTILS
|
|
|
|
SPATH := $($(SX_GEN_UTILS)_SRC_PATH)
|
|
DEP_FILES := $(SONIC_COMMON_FILES_LIST) $(PLATFORM_PATH)/sdk.mk $(PLATFORM_PATH)/sdk.dep
|
|
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
|
DEP_FILES += $(shell git ls-files -- $(SPATH))
|
|
|
|
$(SX_GEN_UTILS)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_GEN_UTILS)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_GEN_UTILS)_DEP_FILES := $(DEP_FILES)
|
|
|
|
$(SX_GEN_UTILS_DEV)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_GEN_UTILS_DEV)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_GEN_UTILS_DEV)_DEP_FILES := $(DEP_FILES)
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
$(SX_GEN_UTILS_DBGSYM)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_GEN_UTILS_DBGSYM)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_GEN_UTILS_DBGSYM)_DEP_FILES := $(DEP_FILES)
|
|
endif
|
|
|
|
# SXD_LIBS
|
|
|
|
SPATH := $($(SXD_LIBS)_SRC_PATH)
|
|
DEP_FILES := $(SONIC_COMMON_FILES_LIST) $(PLATFORM_PATH)/sdk.mk $(PLATFORM_PATH)/sdk.dep
|
|
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
|
DEP_FILES += $(shell git ls-files -- $(SPATH))
|
|
|
|
$(SXD_LIBS)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SXD_LIBS)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SXD_LIBS)_DEP_FILES := $(DEP_FILES)
|
|
|
|
$(SXD_LIBS_DEV)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SXD_LIBS_DEV)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SXD_LIBS_DEV)_DEP_FILES := $(DEP_FILES)
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
$(SXD_LIBS_DBGSYM)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SXD_LIBS_DBGSYM)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SXD_LIBS_DBGSYM)_DEP_FILES := $(DEP_FILES)
|
|
endif
|
|
|
|
# PYTHON_SDK_API
|
|
|
|
SPATH := $($(PYTHON_SDK_API)_SRC_PATH)
|
|
DEP_FILES := $(SONIC_COMMON_FILES_LIST) $(PLATFORM_PATH)/sdk.mk $(PLATFORM_PATH)/sdk.dep
|
|
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
|
DEP_FILES += $(shell git ls-files -- $(SPATH))
|
|
|
|
$(PYTHON_SDK_API)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(PYTHON_SDK_API)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(PYTHON_SDK_API)_DEP_FILES := $(DEP_FILES)
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
$(PYTHON_SDK_API_DBGSYM)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(PYTHON_SDK_API_DBGSYM)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(PYTHON_SDK_API_DBGSYM)_DEP_FILES := $(DEP_FILES)
|
|
endif
|
|
|
|
# SX_ACL_HELPER
|
|
|
|
SPATH := $($(SX_ACL_HELPER)_SRC_PATH)
|
|
DEP_FILES := $(SONIC_COMMON_FILES_LIST) $(PLATFORM_PATH)/sdk.mk $(PLATFORM_PATH)/sdk.dep
|
|
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
|
DEP_FILES += $(shell git ls-files -- $(SPATH))
|
|
|
|
$(SX_ACL_HELPER)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_ACL_HELPER)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_ACL_HELPER)_DEP_FILES := $(DEP_FILES)
|
|
|
|
$(SX_ACL_HELPER_DEV)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_ACL_HELPER_DEV)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_ACL_HELPER_DEV)_DEP_FILES := $(DEP_FILES)
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
$(SX_ACL_HELPER_DBGSYM)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_ACL_HELPER_DBGSYM)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_ACL_HELPER_DBGSYM)_DEP_FILES := $(DEP_FILES)
|
|
endif
|
|
|
|
# WJH_LIBS
|
|
|
|
SPATH := $($(WJH_LIBS)_SRC_PATH)
|
|
DEP_FILES := $(SONIC_COMMON_FILES_LIST) $(PLATFORM_PATH)/sdk.mk $(PLATFORM_PATH)/sdk.dep
|
|
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
|
DEP_FILES += $(shell git ls-files -- $(SPATH))
|
|
|
|
$(WJH_LIBS)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(WJH_LIBS)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(WJH_LIBS)_DEP_FILES := $(DEP_FILES)
|
|
|
|
$(WJH_LIBS_DEV)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(WJH_LIBS_DEV)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(WJH_LIBS_DEV)_DEP_FILES := $(DEP_FILES)
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
$(WJH_LIBS_DBGSYM)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(WJH_LIBS_DBGSYM)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(WJH_LIBS_DBGSYM)_DEP_FILES := $(DEP_FILES)
|
|
endif
|
|
|
|
# SX_HASH_CALC
|
|
|
|
SPATH := $($(SX_HASH_CALC)_SRC_PATH)
|
|
DEP_FILES := $(SONIC_COMMON_FILES_LIST) $(PLATFORM_PATH)/sdk.mk $(PLATFORM_PATH)/sdk.dep
|
|
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
|
DEP_FILES += $(shell git ls-files -- $(SPATH))
|
|
|
|
$(SX_HASH_CALC)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_HASH_CALC)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_HASH_CALC)_DEP_FILES := $(DEP_FILES)
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
$(SX_HASH_CALC_DBGSYM)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_HASH_CALC_DBGSYM)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_HASH_CALC_DBGSYM)_DEP_FILES := $(DEP_FILES)
|
|
endif
|
|
|
|
# SX_OBJ_DESC_LIB
|
|
|
|
SPATH := $($(SX_OBJ_DESC_LIB)_SRC_PATH)
|
|
DEP_FILES := $(SONIC_COMMON_FILES_LIST) $(PLATFORM_PATH)/sdk.mk $(PLATFORM_PATH)/sdk.dep
|
|
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
|
DEP_FILES += $(shell git ls-files -- $(SPATH))
|
|
|
|
$(SX_OBJ_DESC_LIB)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_OBJ_DESC_LIB)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_OBJ_DESC_LIB)_DEP_FILES := $(DEP_FILES)
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
$(SX_OBJ_DESC_LIB_DBGSYM)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_OBJ_DESC_LIB_DBGSYM)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_OBJ_DESC_LIB_DBGSYM)_DEP_FILES := $(DEP_FILES)
|
|
endif
|
|
|
|
# SX_KERNEL
|
|
|
|
SPATH := $($(SX_KERNEL)_SRC_PATH)
|
|
SLINKS := $(shell find $(SPATH) -type l -exec echo {} \; | grep -Ev ' ')
|
|
SMDEP_PATHS := $(shell git submodule status --recursive -- $(SPATH) | awk '{print $$2}' | grep -Ev ' ')
|
|
SMDEP_FILES := $(foreach path,$(SMDEP_PATHS),$(filter-out $(SMDEP_PATHS),$(addprefix $(path)/,$(shell cd $(path) && git ls-files | grep -Ev ' '))))
|
|
DEP_FILES := $(SONIC_COMMON_FILES_LIST) $(PLATFORM_PATH)/sdk.mk $(PLATFORM_PATH)/sdk.dep
|
|
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
|
DEP_FILES += $(filter-out $(SMDEP_PATHS),$(shell git ls-files -- $(SPATH) | grep -Ev ' '))
|
|
|
|
$(SX_KERNEL)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_KERNEL)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_KERNEL)_DEP_FILES := $(filter-out $(SLINKS),$(DEP_FILES))
|
|
$(SX_KERNEL)_SMDEP_FILES := $(filter-out $(SLINKS),$(SMDEP_FILES))
|
|
$(SX_KERNEL)_SMDEP_PATHS := $(SMDEP_PATHS)
|
|
|
|
$(SX_KERNEL_DEV)_CACHE_MODE := GIT_CONTENT_SHA
|
|
$(SX_KERNEL_DEV)_DEP_FLAGS := $(MLNX_SDK_COMMON_FLAGS_LIST)
|
|
$(SX_KERNEL_DEV)_DEP_FILES := $(filter-out $(SLINKS),$(DEP_FILES))
|
|
$(SX_KERNEL_DEV)_SMDEP_FILES := $(filter-out $(SLINKS),$(SMDEP_FILES))
|
|
$(SX_KERNEL_DEV)_SMDEP_PATHS := $(SMDEP_PATHS)
|