Skip to content

Commit 6a4acc9

Browse files
authored
[Mellanox] Add x86_64-nvidia_sn5610n-r0 new platform and SKUs (sonic-net#598)
<!-- Please make sure you've read and understood our contributing guidelines: https://github.com/Azure/SONiC/blob/gh-pages/CONTRIBUTING.md failure_prs.log Make sure all your commits include a signature generated with `git commit -s` ** If this is a bug fix, make sure your description includes "fixes #xxxx", or "closes #xxxx" or "resolves #xxxx" Please provide the following information: --> This PR has a dependency with sonic-net/sonic-utilities#3658 #### Why I did it To support new Mellanox platform - SN5610N. ##### Work item tracking - Microsoft ADO **(number only)**: #### How I did it Add new platform folder under device/mellanox. Also updated the new platform under asic_table.j2 file, and device_data.py. #### How to verify it Run sonic-mgmt tests on SN5610N Mellanox platform <!-- If PR needs to be backported, then the PR must be tested against the base branch and the earliest backport release branch and provide tested image version on these two branches. For example, if the PR is requested for master, 202211 and 202012, then the requester needs to provide test results on master and 202012. --> #### Which release branch to backport (provide reason below if selected) <!-- - Note we only backport fixes to a release branch, *not* features! - Please also provide a reason for the backporting below. - e.g. - [x] 202006 --> - [ ] 201811 - [ ] 201911 - [ ] 202006 - [ ] 202012 - [ ] 202106 - [ ] 202111 - [ ] 202205 - [ ] 202211 - [ ] 202305 #### Tested branch (Please provide the tested image version) <!-- - Please provide tested image version - e.g. - [x] 20201231.100 --> - [ ] <!-- image version 1 --> - [ ] <!-- image version 2 --> #### Description for the changelog <!-- Write a short (one line) summary that describes the changes in this pull request for inclusion in the changelog: --> <!-- Ensure to add label/tag for the feature raised. example - PR#2174 under sonic-utilities repo. where, Generic Config and Update feature has been labelled as GCU. --> #### Link to config_db schema for YANG module changes <!-- Provide a link to config_db schema for the table for which YANG model is defined Link should point to correct section on https://github.com/Azure/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md --> #### A picture of a cute animal (not mandatory but encouraged)
1 parent d831309 commit 6a4acc9

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+4644
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../x86_64-mlnx_msn2700-r0/ACS-MSN2700/buffers.json.j2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../Mellanox-SN5610N-C256S2/buffers_defaults_objects.j2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
{#
2+
SPDX-FileCopyrightText: NVIDIA CORPORATION & AFFILIATES
3+
Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
4+
Apache-2.0
5+
6+
Licensed under the Apache License, Version 2.0 (the "License");
7+
you may not use this file except in compliance with the License.
8+
You may obtain a copy of the License at
9+
10+
http://www.apache.org/licenses/LICENSE-2.0
11+
12+
Unless required by applicable law or agreed to in writing, software
13+
distributed under the License is distributed on an "AS IS" BASIS,
14+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
See the License for the specific language governing permissions and
16+
limitations under the License.
17+
#}
18+
{% set default_cable = '0m' %}
19+
{%-set ports2cable = {
20+
'torrouter_server' : '0m',
21+
'leafrouter_torrouter' : '0m',
22+
'spinerouter_leafrouter' : '0m'
23+
}
24+
-%}
25+
{% set ingress_lossless_pool_size = '144189440' %}
26+
{% set ingress_lossless_pool_xoff = '0' %}
27+
{% set egress_lossless_pool_size = '158229504' %}
28+
{% set egress_lossy_pool_size = '144189440' %}
29+
30+
{% import 'buffers_defaults_objects.j2' as defs with context %}
31+
32+
{%- macro generate_buffer_pool_and_profiles_with_inactive_ports(port_names_inactive) %}
33+
{{ defs.generate_buffer_pool_and_profiles_with_inactive_ports(port_names_inactive) }}
34+
{%- endmacro %}
35+
36+
{%- macro generate_profile_lists_with_inactive_ports(port_names_active, port_names_inactive) %}
37+
{{ defs.generate_profile_lists(port_names_active, port_names_inactive) }}
38+
{%- endmacro %}
39+
40+
{%- macro generate_queue_buffers_with_extra_lossless_queues_with_inactive_ports(port_names_active, port_names_extra_queues, port_names_inactive) %}
41+
{{ defs.generate_queue_buffers_with_extra_lossless_queues(port_names_active, port_names_extra_queues, port_names_inactive) }}
42+
{%- endmacro %}
43+
44+
{%- macro generate_queue_buffers_with_inactive_ports(port_names_active, port_names_inactive) %}
45+
{{ defs.generate_queue_buffers(port_names_active, port_names_inactive) }}
46+
{%- endmacro %}
47+
48+
{%- macro generate_pg_profiles_with_extra_lossless_pgs_with_inactive_ports(port_names_active, port_names_extra_pgs, port_names_inactive) %}
49+
{{ defs.generate_pg_profiles_with_extra_lossless_pgs(port_names_active, port_names_extra_pgs, port_names_inactive) }}
50+
{%- endmacro %}
51+
52+
{%- macro generate_pg_profiles_with_inactive_ports(port_names_active, port_names_inactive) %}
53+
{{ defs.generate_pg_profiles(port_names_active, port_names_inactive) }}
54+
{%- endmacro %}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
{#
2+
SPDX-FileCopyrightText: NVIDIA CORPORATION & AFFILIATES
3+
Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
4+
Apache-2.0
5+
6+
Licensed under the Apache License, Version 2.0 (the "License");
7+
you may not use this file except in compliance with the License.
8+
You may obtain a copy of the License at
9+
10+
http://www.apache.org/licenses/LICENSE-2.0
11+
12+
Unless required by applicable law or agreed to in writing, software
13+
distributed under the License is distributed on an "AS IS" BASIS,
14+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
See the License for the specific language governing permissions and
16+
limitations under the License.
17+
#}
18+
{% set default_cable = '0m' %}
19+
{%-set ports2cable = {
20+
'torrouter_server' : '0m',
21+
'leafrouter_torrouter' : '0m',
22+
'spinerouter_leafrouter' : '0m'
23+
}
24+
-%}
25+
{% set ingress_lossless_pool_size = '144189440' %}
26+
{% set ingress_lossless_pool_xoff = '0' %}
27+
{% set egress_lossless_pool_size = '158229504' %}
28+
{% set egress_lossy_pool_size = '144189440' %}
29+
30+
{% import 'buffers_defaults_objects.j2' as defs with context %}
31+
32+
{%- macro generate_buffer_pool_and_profiles_with_inactive_ports(port_names_inactive) %}
33+
{{ defs.generate_buffer_pool_and_profiles_with_inactive_ports(port_names_inactive) }}
34+
{%- endmacro %}
35+
36+
{%- macro generate_profile_lists_with_inactive_ports(port_names_active, port_names_inactive) %}
37+
{{ defs.generate_profile_lists(port_names_active, port_names_inactive) }}
38+
{%- endmacro %}
39+
40+
{%- macro generate_queue_buffers_with_extra_lossless_queues_with_inactive_ports(port_names_active, port_names_extra_queues, port_names_inactive) %}
41+
{{ defs.generate_queue_buffers_with_extra_lossless_queues(port_names_active, port_names_extra_queues, port_names_inactive) }}
42+
{%- endmacro %}
43+
44+
{%- macro generate_queue_buffers_with_inactive_ports(port_names_active, port_names_inactive) %}
45+
{{ defs.generate_queue_buffers(port_names_active, port_names_inactive) }}
46+
{%- endmacro %}
47+
48+
{%- macro generate_pg_profiles_with_extra_lossless_pgs_with_inactive_ports(port_names_active, port_names_extra_pgs, port_names_inactive) %}
49+
{{ defs.generate_pg_profiles_with_extra_lossless_pgs(port_names_active, port_names_extra_pgs, port_names_inactive) }}
50+
{%- endmacro %}
51+
52+
{%- macro generate_pg_profiles_with_inactive_ports(port_names_active, port_names_inactive) %}
53+
{{ defs.generate_pg_profiles(port_names_active, port_names_inactive) }}
54+
{%- endmacro %}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../x86_64-mlnx_msn2700-r0/ACS-MSN2700/buffers_dynamic.json.j2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"DEVICE_METADATA": {
3+
"localhost": {
4+
"create_only_config_db_buffers": "true"
5+
}
6+
}
7+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../x86_64-nvidia_sn5600-r0/Mellanox-SN5600-V256/media_settings.json
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../x86_64-nvidia_sn5600-r0/Mellanox-SN5600-V256/optics_si_settings.json
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
##
2+
## SPDX-FileCopyrightText: NVIDIA CORPORATION & AFFILIATES
3+
## Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
4+
## Apache-2.0
5+
##
6+
## Licensed under the Apache License, Version 2.0 (the "License");
7+
## you may not use this file except in compliance with the License.
8+
## You may obtain a copy of the License at
9+
##
10+
## http://www.apache.org/licenses/LICENSE-2.0
11+
##
12+
## Unless required by applicable law or agreed to in writing, software
13+
## distributed under the License is distributed on an "AS IS" BASIS,
14+
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
## See the License for the specific language governing permissions and
16+
## limitations under the License.
17+
##
18+
# PG lossless profiles.
19+
# speed cable size xon xoff threshold
20+
10000 5m 19456 19456 20480 0
21+
25000 5m 19456 19456 21504 0
22+
40000 5m 19456 19456 24576 0
23+
50000 5m 19456 19456 26624 0
24+
100000 5m 19456 19456 44032 0
25+
200000 5m 19456 19456 50176 0
26+
400000 5m 19456 19456 86016 0
27+
800000 5m 38912 38912 95232 0
28+
10000 40m 19456 19456 20480 0
29+
25000 40m 19456 19456 22528 0
30+
40000 40m 19456 19456 25600 0
31+
50000 40m 19456 19456 28672 0
32+
100000 40m 19456 19456 49152 0
33+
200000 40m 19456 19456 60416 0
34+
400000 40m 19456 19456 104448 0
35+
800000 40m 38912 38912 132096 0
36+
10000 250m 19456 19456 14336 0
37+
25000 250m 19456 19456 20480 0
38+
40000 250m 19456 19456 28672 0
39+
50000 250m 19456 19456 33792 0
40+
100000 250m 19456 19456 68608 0
41+
200000 250m 19456 19456 107520 0
42+
400000 250m 19456 19456 208896 0
43+
800000 250m 38912 38912 349184 0
44+
10000 1000m 19456 19456 24576 0
45+
25000 1000m 19456 19456 46080 0
46+
40000 1000m 19456 19456 68608 0
47+
50000 1000m 19456 19456 83968 0
48+
100000 1000m 19456 19456 168960 0
49+
200000 1000m 19456 19456 308224 0
50+
400000 1000m 19456 19456 610304 0
51+
800000 1000m 38912 38912 1153024 0
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"skip_ledd": true,
3+
"skip_fancontrol": true,
4+
"skip_xcvrd_cmis_mgr": false
5+
}
6+

0 commit comments

Comments
 (0)