2016-12-05 13:12:19 -06:00
|
|
|
# Mellanox SAI
|
|
|
|
|
[202211] [Mellanox] Update SDK/FW/SAI to 4.6.1020/2012.1020/SAIBuild2211.25.1.0 (#16096) (#16095)
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
2023-08-20 06:24:32 -05:00
|
|
|
MLNX_SAI_VERSION = SAIBuild2211.25.1.0
|
2023-07-23 08:12:44 -05:00
|
|
|
MLNX_SAI_ASSETS_GITHUB_URL = https://github.com/Mellanox/Spectrum-SDK-Drivers-SONiC-Bins
|
|
|
|
MLNX_SAI_ASSETS_RELEASE_TAG = sai-$(MLNX_SAI_VERSION)-$(BLDENV)-$(CONFIGURED_ARCH)
|
|
|
|
MLNX_SAI_ASSETS_URL = $(MLNX_ASSETS_GITHUB_URL)/releases/download/$(MLNX_SAI_ASSETS_RELEASE_TAG)
|
|
|
|
MLNX_SAI_DEB_VERSION = $(subst -,.,$(subst _,.,$(MLNX_SAI_VERSION)))
|
2016-12-05 13:12:19 -06:00
|
|
|
|
2023-07-23 08:12:44 -05:00
|
|
|
# Place here URL where SAI sources exist
|
|
|
|
MLNX_SAI_SOURCE_BASE_URL =
|
|
|
|
|
|
|
|
ifneq ($(MLNX_SAI_SOURCE_BASE_URL), )
|
|
|
|
SAI_FROM_SRC = y
|
|
|
|
else
|
|
|
|
SAI_FROM_SRC = n
|
|
|
|
endif
|
|
|
|
|
|
|
|
export MLNX_SAI_VERSION MLNX_SAI_SOURCE_BASE_URL
|
2016-12-05 13:12:19 -06:00
|
|
|
|
2022-07-13 08:21:33 -05:00
|
|
|
MLNX_SAI = mlnx-sai_1.mlnx.$(MLNX_SAI_VERSION)_$(CONFIGURED_ARCH).deb
|
2016-12-05 13:12:19 -06:00
|
|
|
$(MLNX_SAI)_SRC_PATH = $(PLATFORM_PATH)/mlnx-sai
|
|
|
|
$(MLNX_SAI)_DEPENDS += $(MLNX_SDK_DEBS)
|
2016-12-08 09:08:13 -06:00
|
|
|
$(MLNX_SAI)_RDEPENDS += $(MLNX_SDK_RDEBS) $(MLNX_SDK_DEBS)
|
[build]: wait for conflicts package to be uninstalled (#5039)
when parallel build is enabled, both docker-fpm-frr and docker-syncd-brcm
is built at the same time, docker-fpm-frr requires swss which requires to
install libsaivs-dev. docker-syncd-brcm requires syncd package which requires
to install libsaibcm-dev.
since libsaivs-dev and libsaibcm-dev install the sai header in the same
location, these two packages cannot be installed at the same time. Therefore,
we need to serialize the build between these two packages. Simply uninstall
the conflict package is not enough to solve this issue. The correct solution
is to have one package wait for another package to be uninstalled.
For example, if syncd is built first, then it will install libsaibcm-dev.
Meanwhile, if the swss build job starts and tries to install libsaivs-dev,
it will first try to query if libsaibcm-dev is installed or not. if it is
installed, then it will wait until libsaibcm-dev is uninstalled. After syncd
job is finished, it will uninstall libsaibcm-dev and swss build job will be
unblocked.
To solve this issue, _UNINSTALLS is introduced to uninstall a package that
is no longer needed and to allow blocked job to continue.
Signed-off-by: Guohan Lu <lguohan@gmail.com>
2020-07-27 12:46:20 -05:00
|
|
|
$(eval $(call add_conflict_package,$(MLNX_SAI),$(LIBSAIVS_DEV)))
|
2022-07-13 08:21:33 -05:00
|
|
|
MLNX_SAI_DBGSYM = mlnx-sai-dbgsym_1.mlnx.$(MLNX_SAI_VERSION)_$(CONFIGURED_ARCH).deb
|
2019-08-08 13:10:55 -05:00
|
|
|
$(eval $(call add_derived_package,$(MLNX_SAI),$(MLNX_SAI_DBGSYM)))
|
2023-07-23 08:12:44 -05:00
|
|
|
|
|
|
|
define make_url
|
|
|
|
$(1)_URL = $(MLNX_SAI_ASSETS_URL)/$(1)
|
|
|
|
|
|
|
|
endef
|
|
|
|
|
|
|
|
$(eval $(foreach deb,$(MLNX_SAI) $(MLNX_SAI_DBGSYM),$(call make_url,$(deb))))
|
|
|
|
|
|
|
|
ifeq ($(SAI_FROM_SRC), y)
|
2016-12-05 13:12:19 -06:00
|
|
|
SONIC_MAKE_DEBS += $(MLNX_SAI)
|
2023-07-23 08:12:44 -05:00
|
|
|
else
|
|
|
|
SONIC_ONLINE_DEBS += $(MLNX_SAI)
|
|
|
|
endif
|