[mellanox] Update SAI to SAIBuild2311.25.0.36, SDK/FW to 4.6.2104/2012.2104 (#17131)
Why I did it Update SDK/SAI and FW for Mellanox Platform How I did it Update SDK/FW to v4.6.2104/v2012.2104 Fixed Issues: Some of the Warmboot related files which were created by SDK during switch create are now generated during pre shutdown flow New Features: Debian 12 and kernel 6.1 support Update SAI New Features: Auto Fec Support FDB entries are now restored after warmboot to prevent temporary system flooding. Minor Enhancement and Bug Fix in integrate-mlnx-sdk How to verify it Build Image and run tests Signed-off-by: Vivek Reddy <vkarri@nvidia.com>
This commit is contained in:
parent
787dd7221d
commit
b8548439b7
@ -21,33 +21,33 @@ MLNX_FW_BASE_PATH = $(MLNX_SDK_BASE_PATH)
|
|||||||
# Place an URL here to FW if you want to download FW instead
|
# Place an URL here to FW if you want to download FW instead
|
||||||
MLNX_FW_BASE_URL =
|
MLNX_FW_BASE_URL =
|
||||||
|
|
||||||
SIMX_VERSION = 23.7-1086
|
SIMX_VERSION = 24.1-1007
|
||||||
|
|
||||||
FW_FROM_URL = y
|
FW_FROM_URL = y
|
||||||
|
|
||||||
MLNX_FW_ASSETS_RELEASE_TAG = fw-2012.1062
|
MLNX_FW_ASSETS_RELEASE_TAG = fw-2012.2104
|
||||||
MLNX_FW_ASSETS_URL = $(MLNX_ASSETS_GITHUB_URL)/releases/download/$(MLNX_FW_ASSETS_RELEASE_TAG)
|
MLNX_FW_ASSETS_URL = $(MLNX_ASSETS_GITHUB_URL)/releases/download/$(MLNX_FW_ASSETS_RELEASE_TAG)
|
||||||
|
|
||||||
ifeq ($(MLNX_FW_BASE_URL), )
|
ifeq ($(MLNX_FW_BASE_URL), )
|
||||||
MLNX_FW_BASE_URL = $(MLNX_FW_ASSETS_URL)
|
MLNX_FW_BASE_URL = $(MLNX_FW_ASSETS_URL)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
MLNX_SPC_FW_VERSION = 13.2012.1062
|
MLNX_SPC_FW_VERSION = 13.2012.2104
|
||||||
MLNX_SPC_FW_FILE = fw-SPC-rel-$(subst .,_,$(MLNX_SPC_FW_VERSION))-EVB.mfa
|
MLNX_SPC_FW_FILE = fw-SPC-rel-$(subst .,_,$(MLNX_SPC_FW_VERSION))-EVB.mfa
|
||||||
$(MLNX_SPC_FW_FILE)_PATH = $(MLNX_FW_BASE_PATH)
|
$(MLNX_SPC_FW_FILE)_PATH = $(MLNX_FW_BASE_PATH)
|
||||||
$(MLNX_SPC_FW_FILE)_URL = $(MLNX_FW_BASE_URL)/$(MLNX_SPC_FW_FILE)
|
$(MLNX_SPC_FW_FILE)_URL = $(MLNX_FW_BASE_URL)/$(MLNX_SPC_FW_FILE)
|
||||||
|
|
||||||
MLNX_SPC2_FW_VERSION = 29.2012.1062
|
MLNX_SPC2_FW_VERSION = 29.2012.2104
|
||||||
MLNX_SPC2_FW_FILE = fw-SPC2-rel-$(subst .,_,$(MLNX_SPC2_FW_VERSION))-EVB.mfa
|
MLNX_SPC2_FW_FILE = fw-SPC2-rel-$(subst .,_,$(MLNX_SPC2_FW_VERSION))-EVB.mfa
|
||||||
$(MLNX_SPC2_FW_FILE)_PATH = $(MLNX_FW_BASE_PATH)
|
$(MLNX_SPC2_FW_FILE)_PATH = $(MLNX_FW_BASE_PATH)
|
||||||
$(MLNX_SPC2_FW_FILE)_URL = $(MLNX_FW_BASE_URL)/$(MLNX_SPC2_FW_FILE)
|
$(MLNX_SPC2_FW_FILE)_URL = $(MLNX_FW_BASE_URL)/$(MLNX_SPC2_FW_FILE)
|
||||||
|
|
||||||
MLNX_SPC3_FW_VERSION = 30.2012.1062
|
MLNX_SPC3_FW_VERSION = 30.2012.2104
|
||||||
MLNX_SPC3_FW_FILE = fw-SPC3-rel-$(subst .,_,$(MLNX_SPC3_FW_VERSION))-EVB.mfa
|
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)_PATH = $(MLNX_FW_BASE_PATH)
|
||||||
$(MLNX_SPC3_FW_FILE)_URL = $(MLNX_FW_BASE_URL)/$(MLNX_SPC3_FW_FILE)
|
$(MLNX_SPC3_FW_FILE)_URL = $(MLNX_FW_BASE_URL)/$(MLNX_SPC3_FW_FILE)
|
||||||
|
|
||||||
MLNX_SPC4_FW_VERSION = 34.2012.1062
|
MLNX_SPC4_FW_VERSION = 34.2012.2104
|
||||||
MLNX_SPC4_FW_FILE = fw-SPC4-rel-$(subst .,_,$(MLNX_SPC4_FW_VERSION))-EVB.mfa
|
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)_PATH = $(MLNX_FW_BASE_PATH)
|
||||||
$(MLNX_SPC4_FW_FILE)_URL = $(MLNX_FW_BASE_URL)/$(MLNX_SPC4_FW_FILE)
|
$(MLNX_SPC4_FW_FILE)_URL = $(MLNX_FW_BASE_URL)/$(MLNX_SPC4_FW_FILE)
|
||||||
|
@ -82,7 +82,7 @@ class SDKAction(Action):
|
|||||||
major_kernel_path = os.path.join(KERNEL_BACKPORTS, "{}.{}".format(kernel, major))
|
major_kernel_path = os.path.join(KERNEL_BACKPORTS, "{}.{}".format(kernel, major))
|
||||||
|
|
||||||
# if the k_dir with actual minor doesn't exit, use the closest minor version
|
# if the k_dir with actual minor doesn't exit, use the closest minor version
|
||||||
for minor_i in range(minor_int, 0, -1):
|
for minor_i in range(minor_int, -1, -1):
|
||||||
path = os.path.join(major_kernel_path, "{}.{}.{}".format(kernel, major, minor_i))
|
path = os.path.join(major_kernel_path, "{}.{}.{}".format(kernel, major, minor_i))
|
||||||
if os.path.exists(os.path.join(self.args.patches, path)):
|
if os.path.exists(os.path.join(self.args.patches, path)):
|
||||||
minor = str(minor_i)
|
minor = str(minor_i)
|
||||||
@ -137,6 +137,18 @@ class SDKAction(Action):
|
|||||||
Data.new_patches = FileHandler.read_dir(patches_path, "*.patch")
|
Data.new_patches = FileHandler.read_dir(patches_path, "*.patch")
|
||||||
Data.new_patches.sort()
|
Data.new_patches.sort()
|
||||||
|
|
||||||
|
def cleanup_old_patches(self):
|
||||||
|
patches_del = copy.deepcopy(Data.old_patches)
|
||||||
|
for patch in Data.new_patches:
|
||||||
|
if patch in Data.old_patches:
|
||||||
|
patches_del.remove(patch)
|
||||||
|
print(f" -> Patches to be removed are : {patches_del}")
|
||||||
|
for patch in patches_del:
|
||||||
|
file_n = os.path.join(self.args.build_root, os.path.join(SLK_PATCH_LOC, patch))
|
||||||
|
if os.path.exists(file_n):
|
||||||
|
print(f"{file_n} is deleted")
|
||||||
|
os.remove(file_n)
|
||||||
|
|
||||||
def refresh_markers(self):
|
def refresh_markers(self):
|
||||||
print("-> INFO Refreshing Markers ")
|
print("-> INFO Refreshing Markers ")
|
||||||
(Data.i_sdk_start, Data.i_sdk_end) = FileHandler.find_marker_indices(Data.old_series, SDK_MARKER)
|
(Data.i_sdk_start, Data.i_sdk_end) = FileHandler.find_marker_indices(Data.old_series, SDK_MARKER)
|
||||||
@ -187,6 +199,7 @@ class SDKAction(Action):
|
|||||||
self.refresh_markers()
|
self.refresh_markers()
|
||||||
self.add_new_patch_series()
|
self.add_new_patch_series()
|
||||||
self.process_update()
|
self.process_update()
|
||||||
|
self.cleanup_old_patches()
|
||||||
patch_table = self.fetch_patch_table(os.path.join(self.args.patches, Data.k_dir))
|
patch_table = self.fetch_patch_table(os.path.join(self.args.patches, Data.k_dir))
|
||||||
slk_msg = self.create_commit_msg(patch_table)
|
slk_msg = self.create_commit_msg(patch_table)
|
||||||
if self.args.slk_msg:
|
if self.args.slk_msg:
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# Mellanox SAI
|
# Mellanox SAI
|
||||||
|
|
||||||
MLNX_SAI_VERSION = SAIBuild2211.25.1.4
|
MLNX_SAI_VERSION = SAIBuild2311.25.0.36
|
||||||
MLNX_SAI_ASSETS_GITHUB_URL = https://github.com/Mellanox/Spectrum-SDK-Drivers-SONiC-Bins
|
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_RELEASE_TAG = sai-$(MLNX_SAI_VERSION)-$(BLDENV)-$(CONFIGURED_ARCH)
|
||||||
MLNX_SAI_ASSETS_URL = $(MLNX_SAI_ASSETS_GITHUB_URL)/releases/download/$(MLNX_SAI_ASSETS_RELEASE_TAG)
|
MLNX_SAI_ASSETS_URL = $(MLNX_SAI_ASSETS_GITHUB_URL)/releases/download/$(MLNX_SAI_ASSETS_RELEASE_TAG)
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
#
|
#
|
||||||
MLNX_SDK_VERSION = 4.6.1062
|
MLNX_SDK_VERSION = 4.6.2104
|
||||||
MLNX_SDK_ISSU_VERSION = 101
|
MLNX_SDK_ISSU_VERSION = 101
|
||||||
|
|
||||||
MLNX_SDK_DRIVERS_GITHUB_URL = https://github.com/Mellanox/Spectrum-SDK-Drivers
|
MLNX_SDK_DRIVERS_GITHUB_URL = https://github.com/Mellanox/Spectrum-SDK-Drivers
|
||||||
|
Reference in New Issue
Block a user