2019-10-08 09:57:13 -05:00
|
|
|
MLNX_SDK_BASE_PATH = $(PLATFORM_PATH)/sdk-src/sx-kernel/Switch-SDK-drivers/bin/
|
Update SAI to 1.16.6, SDK to 4.4.1014, FW to *.2008.1032 (#5056)
SAI:
Fix ECMP max groups logic
add set issu log level for spc2/spc3, as now issu is supported
set vlan max swid = 0 on sdk init, as only single swid is needed, for efficient resource usage
Fix traffic lost during FFB related to buffer config + optimize buffer config timing for FB
Add ACL fields BTH, IP flags
Add ACL infrastructure of different fields per ASIC type
Add port stat ether rx/tx oversize pkts
SDK/FW:
Added support for Finisar 100GbE SWDM Transceiver FTLC9152RGPL.
Spectrum-2 Added support for 10G BaseT modules
Added link LED support for SN4600C.
Counters | In SDK debug dump, the incorrect counter type appears for vtraps.
WJH | Without any traffic or events on the idle system, the CPU load is constantly above 4%
WJH | WJH filter currently cannot filter by PORT for buffer drop reason.
Spectrum | ACL, Unbind, Lazy Delete | Running Lazy Delete together with auto_unbind may cause rate condition errors. To work work with Lazy Delete use new INIT parameter "acl_manual_unbind" so that ACLs will notbe removed automatically when binding point is deleted.
Spectrum | ISSU | In ISSU mode, when querying for the number of configurable buffers, using the API sx_api_cos_port_buff_type_get with the count parameter as 0, the API returns the number for NORMAL mode instead.
Spectrum-2 | BER | BER monitor counts raw errors instead of effective errors
Spectrum-2 | BER | Connecting to ConnectX-5 adapter card with copper splitter cable MCP7H50-V001R30 in 1
Spectrum-2 | Cables | Link flaps in 200GbE with AOM Optic cable MMA1T00-VS
Spectrum-3 | Speeds, Link | When moving from a 400GbE link to a 1GbE link, packets may drop for 1msec right after link up
Spectrum-3 | Cables, Speeds | Using 400GbE with 3rd party systems is not supported
Spectrum-3 | LAG | After a while, LAG members become out of sync with one another
Spectrum-3 | VLAN, Ports | Packets with VLAN headers are sent to
2020-07-30 05:37:54 -05:00
|
|
|
MLNX_SDK_PKG_BASE_PATH = $(MLNX_SDK_BASE_PATH)/$(BLDENV)/
|
2021-03-27 13:51:49 -05:00
|
|
|
MLNX_SDK_VERSION = 4.4.2508
|
2019-06-18 12:00:16 -05:00
|
|
|
MLNX_SDK_ISSU_VERSION = 101
|
2019-03-27 20:32:25 -05:00
|
|
|
|
|
|
|
MLNX_SDK_DEB_VERSION = $(subst _,.,$(MLNX_SDK_VERSION))
|
|
|
|
|
|
|
|
# Place here URL where SDK sources exist
|
2019-06-18 12:00:16 -05:00
|
|
|
MLNX_SDK_SOURCE_BASE_URL =
|
2019-03-27 20:32:25 -05:00
|
|
|
|
2019-08-08 13:10:55 -05:00
|
|
|
ifneq ($(MLNX_SDK_SOURCE_BASE_URL), )
|
|
|
|
SDK_FROM_SRC = y
|
|
|
|
else
|
|
|
|
SDK_FROM_SRC = n
|
|
|
|
endif
|
|
|
|
|
2019-03-27 20:32:25 -05:00
|
|
|
export MLNX_SDK_SOURCE_BASE_URL MLNX_SDK_VERSION MLNX_SDK_ISSU_VERSION MLNX_SDK_DEB_VERSION
|
2019-02-14 01:08:04 -06:00
|
|
|
|
2019-10-07 09:13:47 -05:00
|
|
|
MLNX_SDK_RDEBS += $(APPLIBS) $(IPROUTE2_MLNX) $(SX_COMPLIB) $(SX_EXAMPLES) \
|
|
|
|
$(SX_GEN_UTILS) $(SX_SCEW) $(SXD_LIBS) $(WJH_LIBS) $(SX_ACL_HELPER)
|
2016-12-05 13:12:19 -06:00
|
|
|
|
2019-10-07 09:13:47 -05:00
|
|
|
MLNX_SDK_DEBS += $(APPLIBS_DEV) $(IPROUTE2_MLNX_DEV) $(SX_COMPLIB_DEV) \
|
|
|
|
$(SX_COMPLIB_DEV_STATIC) $(SX_EXAMPLES_DEV) $(SX_GEN_UTILS_DEV) \
|
|
|
|
$(SX_SCEW_DEV) $(SX_SCEW_DEV_STATIC) $(SXD_LIBS_DEV)\
|
|
|
|
$(SXD_LIBS_DEV_STATIC) $(WJH_LIBS_DEV) $(SX_ACL_HELPER_DEV)
|
2016-12-05 13:12:19 -06:00
|
|
|
|
2019-08-08 13:10:55 -05:00
|
|
|
MLNX_SDK_DBG_DEBS += $(APPLIBS_DBGSYM) $(IPROUTE2_MLNX_DBGSYM) $(SX_COMPLIB_DBGSYM) \
|
|
|
|
$(SX_EXAMPLES_DBGSYM) $(SX_GEN_UTILS_DBGSYM) $(SX_SCEW_DBGSYM) \
|
2019-10-07 09:13:47 -05:00
|
|
|
$(SXD_LIBS_DBGSYM) $(WJH_LIBS_DBGSYM) $(SX_ACL_HELPER_DBGSYM)
|
2019-08-08 13:10:55 -05:00
|
|
|
|
2019-03-27 20:32:25 -05:00
|
|
|
APPLIBS = applibs_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
$(APPLIBS)_SRC_PATH = $(PLATFORM_PATH)/sdk-src/applibs
|
|
|
|
$(APPLIBS)_DEPENDS += $(SX_COMPLIB_DEV) $(SX_GEN_UTILS_DEV) $(SXD_LIBS_DEV) $(LIBNL3_DEV) $(LIBNL_GENL3_DEV)
|
2018-11-14 03:15:31 -06:00
|
|
|
$(APPLIBS)_RDEPENDS += $(SX_COMPLIB) $(SX_GEN_UTILS) $(SXD_LIBS) $(LIBNL3) $(LIBNL_GENL3)
|
2019-03-27 20:32:25 -05:00
|
|
|
APPLIBS_DEV = applibs-dev_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
2016-12-05 13:12:19 -06:00
|
|
|
$(eval $(call add_derived_package,$(APPLIBS),$(APPLIBS_DEV)))
|
2019-08-08 13:10:55 -05:00
|
|
|
APPLIBS_DBGSYM = applibs-dbgsym_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
|
|
$(eval $(call add_derived_package,$(APPLIBS),$(APPLIBS_DBGSYM)))
|
|
|
|
endif
|
2019-03-27 20:32:25 -05:00
|
|
|
|
|
|
|
IPROUTE2_MLNX = iproute2_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
$(IPROUTE2_MLNX)_SRC_PATH = $(PLATFORM_PATH)/sdk-src/iproute2
|
|
|
|
IPROUTE2_MLNX_DEV = iproute2-dev_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
2017-11-30 16:59:25 -06:00
|
|
|
$(eval $(call add_derived_package,$(IPROUTE2_MLNX),$(IPROUTE2_MLNX_DEV)))
|
2019-08-08 13:10:55 -05:00
|
|
|
IPROUTE2_MLNX_DBGSYM = iproute2-dbgsym_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
|
|
$(eval $(call add_derived_package,$(IPROUTE2_MLNX),$(IPROUTE2_MLNX_DBGSYM)))
|
|
|
|
endif
|
2019-03-27 20:32:25 -05:00
|
|
|
|
|
|
|
SX_COMPLIB = sx-complib_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
$(SX_COMPLIB)_SRC_PATH = $(PLATFORM_PATH)/sdk-src/sx-complib
|
|
|
|
SX_COMPLIB_DEV = sx-complib-dev_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
2016-12-05 13:12:19 -06:00
|
|
|
$(eval $(call add_derived_package,$(SX_COMPLIB),$(SX_COMPLIB_DEV)))
|
2019-08-08 13:10:55 -05:00
|
|
|
SX_COMPLIB_DBGSYM = sx-complib-dbgsym_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
|
|
$(eval $(call add_derived_package,$(SX_COMPLIB),$(SX_COMPLIB_DBGSYM)))
|
|
|
|
endif
|
2019-03-27 20:32:25 -05:00
|
|
|
|
|
|
|
SX_EXAMPLES = sx-examples_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
$(SX_EXAMPLES)_SRC_PATH = $(PLATFORM_PATH)/sdk-src/sx-examples
|
|
|
|
$(SX_EXAMPLES)_DEPENDS += $(APPLIBS_DEV) $(SX_SCEW_DEV) $(SXD_LIBS_DEV)
|
2018-11-14 03:15:31 -06:00
|
|
|
$(SX_EXAMPLES)_RDEPENDS += $(APPLIBS) $(SX_SCEW) $(SXD_LIBS)
|
2019-03-27 20:32:25 -05:00
|
|
|
SX_EXAMPLES_DEV = sx-examples-dev_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
2016-12-05 13:12:19 -06:00
|
|
|
$(eval $(call add_derived_package,$(SX_EXAMPLES),$(SX_EXAMPLES_DEV)))
|
2019-08-08 13:10:55 -05:00
|
|
|
SX_EXAMPLES_DBGSYM = sx-examples-dbgsym_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
|
|
$(eval $(call add_derived_package,$(SX_EXAMPLES),$(SX_EXAMPLES_DBGSYM)))
|
|
|
|
endif
|
2019-03-27 20:32:25 -05:00
|
|
|
|
|
|
|
SX_GEN_UTILS = sx-gen-utils_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
$(SX_GEN_UTILS)_SRC_PATH += $(PLATFORM_PATH)/sdk-src/sx-gen-utils
|
2019-10-07 09:13:47 -05:00
|
|
|
$(SX_GEN_UTILS)_DEPENDS += $(SX_COMPLIB_DEV)
|
2018-11-14 03:15:31 -06:00
|
|
|
$(SX_GEN_UTILS)_RDEPENDS += $(SX_COMPLIB)
|
2019-03-27 20:32:25 -05:00
|
|
|
SX_GEN_UTILS_DEV = sx-gen-utils-dev_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
2016-12-05 13:12:19 -06:00
|
|
|
$(eval $(call add_derived_package,$(SX_GEN_UTILS),$(SX_GEN_UTILS_DEV)))
|
2019-08-08 13:10:55 -05:00
|
|
|
SX_GEN_UTILS_DBGSYM = sx-gen-utils-dbgsym_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
|
|
$(eval $(call add_derived_package,$(SX_GEN_UTILS),$(SX_GEN_UTILS_DBGSYM)))
|
|
|
|
endif
|
2019-03-27 20:32:25 -05:00
|
|
|
|
|
|
|
SX_SCEW = sx-scew_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
$(SX_SCEW)_SRC_PATH = $(PLATFORM_PATH)/sdk-src/sx-scew
|
|
|
|
SX_SCEW_DEV = sx-scew-dev_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
2016-12-05 13:12:19 -06:00
|
|
|
$(eval $(call add_derived_package,$(SX_SCEW),$(SX_SCEW_DEV)))
|
2019-08-08 13:10:55 -05:00
|
|
|
SX_SCEW_DBGSYM = sx-scew-dbgsym_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
|
|
$(eval $(call add_derived_package,$(SX_SCEW),$(SX_SCEW_DBGSYM)))
|
|
|
|
endif
|
2019-03-27 20:32:25 -05:00
|
|
|
|
|
|
|
SXD_LIBS = sxd-libs_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
$(SXD_LIBS)_SRC_PATH = $(PLATFORM_PATH)/sdk-src/sxd-libs
|
2019-10-07 09:13:47 -05:00
|
|
|
$(SXD_LIBS)_DEPENDS += $(SX_COMPLIB_DEV) $(SX_GEN_UTILS_DEV)
|
2019-03-27 20:32:25 -05:00
|
|
|
SXD_LIBS_DEV = sxd-libs-dev_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
2016-12-05 13:12:19 -06:00
|
|
|
$(eval $(call add_derived_package,$(SXD_LIBS),$(SXD_LIBS_DEV)))
|
2019-08-08 13:10:55 -05:00
|
|
|
SXD_LIBS_DBGSYM = sxd-libs-dbgsym_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
|
|
$(eval $(call add_derived_package,$(SXD_LIBS),$(SXD_LIBS_DBGSYM)))
|
|
|
|
endif
|
2019-03-27 20:32:25 -05:00
|
|
|
|
2016-12-08 12:31:02 -06:00
|
|
|
#packages that are required for runtime only
|
2019-03-27 20:32:25 -05:00
|
|
|
PYTHON_SDK_API = python-sdk-api_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
$(PYTHON_SDK_API)_SRC_PATH = $(PLATFORM_PATH)/sdk-src/python-sdk-api
|
2019-05-17 15:45:33 -05:00
|
|
|
$(PYTHON_SDK_API)_DEPENDS += $(APPLIBS_DEV) $(SXD_LIBS_DEV) $(SWIG)
|
2018-11-14 03:15:31 -06:00
|
|
|
$(PYTHON_SDK_API)_RDEPENDS += $(APPLIBS) $(SXD_LIBS)
|
2019-08-08 13:10:55 -05:00
|
|
|
PYTHON_SDK_API_DBGSYM = python-sdk-api-dbgsym_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
|
|
$(eval $(call add_derived_package,$(PYTHON_SDK_API),$(PYTHON_SDK_API_DBGSYM)))
|
|
|
|
endif
|
2016-12-05 13:12:19 -06:00
|
|
|
|
2019-10-07 09:13:47 -05:00
|
|
|
SX_ACL_HELPER = sx-acl-helper_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
$(SX_ACL_HELPER)_SRC_PATH = $(PLATFORM_PATH)/sdk-src/sx-acl-helper
|
|
|
|
$(SX_ACL_HELPER)_DEPENDS += $(SX_COMPLIB_DEV) $(SXD_LIBS_DEV) $(APPLIBS_DEV)
|
|
|
|
$(SX_ACL_HELPER)_RDEPENDS += $(SX_COMPLIB) $(PYTHON_SDK_API)
|
|
|
|
SX_ACL_HELPER_DEV = sx-acl-helper-dev_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
$(eval $(call add_derived_package,$(SX_ACL_HELPER),$(SX_ACL_HELPER_DEV)))
|
|
|
|
SX_ACL_HELPER_DBGSYM = sx-acl-helper-dbgsym_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
|
|
$(eval $(call add_derived_package,$(SX_ACL_HELPER),$(SX_ACL_HELPER_DBGSYM)))
|
|
|
|
endif
|
|
|
|
|
2019-06-18 12:00:16 -05:00
|
|
|
WJH_LIBS = wjh-libs_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
$(WJH_LIBS)_SRC_PATH = $(PLATFORM_PATH)/sdk-src/wjh-libs
|
2019-10-07 09:13:47 -05:00
|
|
|
$(WJH_LIBS)_DEPENDS += $(SX_COMPLIB_DEV) $(SXD_LIBS_DEV) $(APPLIBS_DEV) $(SX_ACL_HELPER_DEV) $(SX_SCEW_DEV)
|
|
|
|
$(WJH_LIBS)_RDEPENDS += $(SX_COMPLIB) $(PYTHON_SDK_API) $(SX_ACL_HELPER)
|
2019-06-18 12:00:16 -05:00
|
|
|
WJH_LIBS_DEV = wjh-libs-dev_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
$(eval $(call add_derived_package,$(WJH_LIBS),$(WJH_LIBS_DEV)))
|
2019-08-08 13:10:55 -05:00
|
|
|
WJH_LIBS_DBGSYM = wjh-libs-dbgsym_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
ifeq ($(SDK_FROM_SRC),y)
|
|
|
|
$(eval $(call add_derived_package,$(WJH_LIBS),$(WJH_LIBS_DBGSYM)))
|
|
|
|
endif
|
|
|
|
|
|
|
|
SX_KERNEL = sx-kernel_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
$(SX_KERNEL)_DEPENDS += $(LINUX_HEADERS) $(LINUX_HEADERS_COMMON)
|
|
|
|
$(SX_KERNEL)_SRC_PATH = $(PLATFORM_PATH)/sdk-src/sx-kernel
|
|
|
|
SX_KERNEL_DEV = sx-kernel-dev_1.mlnx.$(MLNX_SDK_DEB_VERSION)_amd64.deb
|
|
|
|
$(eval $(call add_derived_package,$(SX_KERNEL),$(SX_KERNEL_DEV)))
|
2019-06-18 12:00:16 -05:00
|
|
|
|
2019-10-08 09:57:13 -05:00
|
|
|
define make_path
|
Update SAI to 1.16.6, SDK to 4.4.1014, FW to *.2008.1032 (#5056)
SAI:
Fix ECMP max groups logic
add set issu log level for spc2/spc3, as now issu is supported
set vlan max swid = 0 on sdk init, as only single swid is needed, for efficient resource usage
Fix traffic lost during FFB related to buffer config + optimize buffer config timing for FB
Add ACL fields BTH, IP flags
Add ACL infrastructure of different fields per ASIC type
Add port stat ether rx/tx oversize pkts
SDK/FW:
Added support for Finisar 100GbE SWDM Transceiver FTLC9152RGPL.
Spectrum-2 Added support for 10G BaseT modules
Added link LED support for SN4600C.
Counters | In SDK debug dump, the incorrect counter type appears for vtraps.
WJH | Without any traffic or events on the idle system, the CPU load is constantly above 4%
WJH | WJH filter currently cannot filter by PORT for buffer drop reason.
Spectrum | ACL, Unbind, Lazy Delete | Running Lazy Delete together with auto_unbind may cause rate condition errors. To work work with Lazy Delete use new INIT parameter "acl_manual_unbind" so that ACLs will notbe removed automatically when binding point is deleted.
Spectrum | ISSU | In ISSU mode, when querying for the number of configurable buffers, using the API sx_api_cos_port_buff_type_get with the count parameter as 0, the API returns the number for NORMAL mode instead.
Spectrum-2 | BER | BER monitor counts raw errors instead of effective errors
Spectrum-2 | BER | Connecting to ConnectX-5 adapter card with copper splitter cable MCP7H50-V001R30 in 1
Spectrum-2 | Cables | Link flaps in 200GbE with AOM Optic cable MMA1T00-VS
Spectrum-3 | Speeds, Link | When moving from a 400GbE link to a 1GbE link, packets may drop for 1msec right after link up
Spectrum-3 | Cables, Speeds | Using 400GbE with 3rd party systems is not supported
Spectrum-3 | LAG | After a while, LAG members become out of sync with one another
Spectrum-3 | VLAN, Ports | Packets with VLAN headers are sent to
2020-07-30 05:37:54 -05:00
|
|
|
$(1)_PATH = $(MLNX_SDK_PKG_BASE_PATH)
|
2016-12-05 13:12:19 -06:00
|
|
|
|
|
|
|
endef
|
|
|
|
|
2019-10-08 09:57:13 -05:00
|
|
|
$(eval $(foreach deb,$(MLNX_SDK_DEBS),$(call make_path,$(deb))))
|
|
|
|
$(eval $(foreach deb,$(MLNX_SDK_RDEBS),$(call make_path,$(deb))))
|
|
|
|
$(eval $(foreach deb,$(PYTHON_SDK_API) $(SX_KERNEL) $(SX_KERNEL_DEV),$(call make_path,$(deb))))
|
|
|
|
|
|
|
|
SONIC_MAKE_DEBS += $(SX_KERNEL)
|
2016-12-05 13:12:19 -06:00
|
|
|
|
2019-08-08 13:10:55 -05:00
|
|
|
ifeq ($(SDK_FROM_SRC), y)
|
2019-10-08 09:57:13 -05:00
|
|
|
SONIC_MAKE_DEBS += $(MLNX_SDK_RDEBS) $(PYTHON_SDK_API)
|
2019-03-27 20:32:25 -05:00
|
|
|
else
|
2019-10-08 09:57:13 -05:00
|
|
|
SONIC_COPY_DEBS += $(MLNX_SDK_RDEBS) $(PYTHON_SDK_API)
|
2019-03-27 20:32:25 -05:00
|
|
|
endif
|
|
|
|
|
2019-02-05 00:06:37 -06:00
|
|
|
SONIC_STRETCH_DEBS += $(SX_KERNEL)
|
2019-03-27 20:32:25 -05:00
|
|
|
|
|
|
|
mlnx-sdk-packages: $(addprefix $(DEBS_PATH)/, $(MLNX_SDK_RDEBS) $(PYTHON_SDK_API) $(SX_KERNEL))
|
|
|
|
|
|
|
|
SONIC_PHONY_TARGETS += mlnx-sdk-packages
|