Skip to content

Commit ee598de

Browse files
authored
[Mellanox][SKU] Adding Mellanox-SN4700-O8V48 SKU (#17425)
- Why I did it To add new SKU Mellanox-SN4700-O8V48 with following requirements: - How I did it Create new SKU files based on the below definition: * Port Mapping: 1-12 2x200G, 13-20 1x400G, 21-32 2x200G T0 topology: 48x200G Downlinks 8x400G uplinks. Length of downlink: 5m Length of uplink: 40m * Auto-negotiation enable/disable: Yes * FEC mode: RS * Shared headroom: Enabled * Shared headroom pool factor: 2 * Warmboot enabled: yes - How to verify it SONiC build with new SKU finish init, all ports up, qos tests suite from sonic-mgmt
1 parent 278a958 commit ee598de

11 files changed

+662
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{#
2+
Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES.
3+
Apache-2.0
4+
5+
Licensed under the Apache License, Version 2.0 (the "License");
6+
you may not use this file except in compliance with the License.
7+
You may obtain a copy of the License at
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
#}
16+
{%- set default_topo = 't0' %}
17+
{%- include 'buffers_config.j2' %}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../x86_64-mlnx_msn2700-r0/Mellanox-SN2700-D48C8/buffers_defaults_objects.j2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
{#
2+
Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES.
3+
Apache-2.0
4+
5+
Licensed under the Apache License, Version 2.0 (the "License");
6+
you may not use this file except in compliance with the License.
7+
You may obtain a copy of the License at
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
#}
16+
{% set default_cable = '5m' %}
17+
{% set ingress_lossless_pool_size = '49946624' %}
18+
{% set ingress_lossless_pool_xoff = '4063232' %}
19+
{% set egress_lossless_pool_size = '60817392' %}
20+
{% set egress_lossy_pool_size = '49946624' %}
21+
22+
{% import 'buffers_defaults_objects.j2' as defs with context %}
23+
24+
{%- macro generate_buffer_pool_and_profiles_with_inactive_ports(port_names_inactive) %}
25+
{{ defs.generate_buffer_pool_and_profiles_with_inactive_ports(port_names_inactive) }}
26+
{%- endmacro %}
27+
28+
{%- macro generate_profile_lists_with_inactive_ports(port_names_active, port_names_inactive) %}
29+
{{ defs.generate_profile_lists(port_names_active, port_names_inactive) }}
30+
{%- endmacro %}
31+
32+
{%- macro generate_queue_buffers_with_inactive_ports(port_names_active, port_names_inactive) %}
33+
{{ defs.generate_queue_buffers(port_names_active, port_names_inactive) }}
34+
{%- endmacro %}
35+
36+
{%- macro generate_pg_profiles_with_inactive_ports(port_names_active, port_names_inactive) %}
37+
{{ defs.generate_pg_profiles(port_names_active, port_names_inactive) }}
38+
{%- endmacro %}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
{#
2+
Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES.
3+
Apache-2.0
4+
5+
Licensed under the Apache License, Version 2.0 (the "License");
6+
you may not use this file except in compliance with the License.
7+
You may obtain a copy of the License at
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
#}
16+
{% set default_cable = '300m' %}
17+
{% set ingress_lossless_pool_size = '47546368' %}
18+
{% set ingress_lossless_pool_xoff = '6463488' %}
19+
{% set egress_lossless_pool_size = '60817392' %}
20+
{% set egress_lossy_pool_size = '47546368' %}
21+
22+
{% import 'buffers_defaults_objects.j2' as defs with context %}
23+
24+
{%- macro generate_buffer_pool_and_profiles_with_inactive_ports(port_names_inactive) %}
25+
{{ defs.generate_buffer_pool_and_profiles_with_inactive_ports(port_names_inactive) }}
26+
{%- endmacro %}
27+
28+
{%- macro generate_profile_lists_with_inactive_ports(port_names_active, port_names_inactive) %}
29+
{{ defs.generate_profile_lists(port_names_active, port_names_inactive) }}
30+
{%- endmacro %}
31+
32+
{%- macro generate_queue_buffers_with_inactive_ports(port_names_active, port_names_inactive) %}
33+
{{ defs.generate_queue_buffers(port_names_active, port_names_inactive) }}
34+
{%- endmacro %}
35+
36+
{%- macro generate_pg_profiles_with_inactive_ports(port_names_active, port_names_inactive) %}
37+
{{ defs.generate_pg_profiles(port_names_active, port_names_inactive) }}
38+
{%- endmacro %}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
{#
2+
Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES.
3+
Apache-2.0
4+
5+
Licensed under the Apache License, Version 2.0 (the "License");
6+
you may not use this file except in compliance with the License.
7+
You may obtain a copy of the License at
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
#}
16+
{%- set default_topo = 't0' %}
17+
{%- set dynamic_mode = 'true' %}
18+
{%- include 'buffers_config.j2' %}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,172 @@
1+
{
2+
"interfaces": {
3+
"Ethernet0": {
4+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
5+
},
6+
"Ethernet4": {
7+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
8+
},
9+
"Ethernet8": {
10+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
11+
},
12+
"Ethernet12": {
13+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
14+
},
15+
"Ethernet16": {
16+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
17+
},
18+
"Ethernet20": {
19+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
20+
},
21+
"Ethernet24": {
22+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
23+
},
24+
"Ethernet28": {
25+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
26+
},
27+
"Ethernet32": {
28+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
29+
},
30+
"Ethernet36": {
31+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
32+
},
33+
"Ethernet40": {
34+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
35+
},
36+
"Ethernet44": {
37+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
38+
},
39+
"Ethernet48": {
40+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
41+
},
42+
"Ethernet52": {
43+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
44+
},
45+
"Ethernet56": {
46+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
47+
},
48+
"Ethernet60": {
49+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
50+
},
51+
"Ethernet64": {
52+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
53+
},
54+
"Ethernet68": {
55+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
56+
},
57+
"Ethernet72": {
58+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
59+
},
60+
"Ethernet76": {
61+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
62+
},
63+
"Ethernet80": {
64+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
65+
},
66+
"Ethernet84": {
67+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
68+
},
69+
"Ethernet88": {
70+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
71+
},
72+
"Ethernet92": {
73+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
74+
},
75+
"Ethernet96": {
76+
"default_brkout_mode": "1x400G[200G,100G,50G,40G,25G,10G,1G]"
77+
},
78+
"Ethernet104": {
79+
"default_brkout_mode": "1x400G[200G,100G,50G,40G,25G,10G,1G]"
80+
},
81+
"Ethernet112": {
82+
"default_brkout_mode": "1x400G[200G,100G,50G,40G,25G,10G,1G]"
83+
},
84+
"Ethernet120": {
85+
"default_brkout_mode": "1x400G[200G,100G,50G,40G,25G,10G,1G]"
86+
},
87+
"Ethernet128": {
88+
"default_brkout_mode": "1x400G[200G,100G,50G,40G,25G,10G,1G]"
89+
},
90+
"Ethernet136": {
91+
"default_brkout_mode": "1x400G[200G,100G,50G,40G,25G,10G,1G]"
92+
},
93+
"Ethernet144": {
94+
"default_brkout_mode": "1x400G[200G,100G,50G,40G,25G,10G,1G]"
95+
},
96+
"Ethernet152": {
97+
"default_brkout_mode": "1x400G[200G,100G,50G,40G,25G,10G,1G]"
98+
},
99+
"Ethernet160": {
100+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
101+
},
102+
"Ethernet164": {
103+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
104+
},
105+
"Ethernet168": {
106+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
107+
},
108+
"Ethernet172": {
109+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
110+
},
111+
"Ethernet176": {
112+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
113+
},
114+
"Ethernet180": {
115+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
116+
},
117+
"Ethernet184": {
118+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
119+
},
120+
"Ethernet188": {
121+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
122+
},
123+
"Ethernet192": {
124+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
125+
},
126+
"Ethernet196": {
127+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
128+
},
129+
"Ethernet200": {
130+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
131+
},
132+
"Ethernet204": {
133+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
134+
},
135+
"Ethernet208": {
136+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
137+
},
138+
"Ethernet212": {
139+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
140+
},
141+
"Ethernet216": {
142+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
143+
},
144+
"Ethernet220": {
145+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
146+
},
147+
"Ethernet224": {
148+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
149+
},
150+
"Ethernet228": {
151+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
152+
},
153+
"Ethernet232": {
154+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
155+
},
156+
"Ethernet236": {
157+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
158+
},
159+
"Ethernet240": {
160+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
161+
},
162+
"Ethernet244": {
163+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
164+
},
165+
"Ethernet248": {
166+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
167+
},
168+
"Ethernet252": {
169+
"default_brkout_mode": "2x200G[100G,50G,40G,25G,10G,1G]"
170+
}
171+
}
172+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../Mellanox-SN4700-C128/pg_profile_lookup.ini
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
##
2+
## Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES.
3+
## Apache-2.0
4+
##
5+
## Licensed under the Apache License, Version 2.0 (the "License");
6+
## you may not use this file except in compliance with the License.
7+
## You may obtain a copy of the License at
8+
##
9+
## http://www.apache.org/licenses/LICENSE-2.0
10+
##
11+
## Unless required by applicable law or agreed to in writing, software
12+
## distributed under the License is distributed on an "AS IS" BASIS,
13+
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
## See the License for the specific language governing permissions and
15+
## limitations under the License.
16+
##
17+
18+
# name lanes alias index speed
19+
Ethernet0 0,1,2,3 etp1a 1 200000
20+
Ethernet4 4,5,6,7 etp1b 1 200000
21+
Ethernet8 8,9,10,11 etp2a 2 200000
22+
Ethernet12 12,13,14,15 etp2b 2 200000
23+
Ethernet16 16,17,18,19 etp3a 3 200000
24+
Ethernet20 20,21,22,23 etp3b 3 200000
25+
Ethernet24 24,25,26,27 etp4a 4 200000
26+
Ethernet28 28,29,30,31 etp4b 4 200000
27+
Ethernet32 32,33,34,35 etp5a 5 200000
28+
Ethernet36 36,37,38,39 etp5b 5 200000
29+
Ethernet40 40,41,42,43 etp6a 6 200000
30+
Ethernet44 44,45,46,47 etp6b 6 200000
31+
Ethernet48 48,49,50,51 etp7a 7 200000
32+
Ethernet52 52,53,54,55 etp7b 7 200000
33+
Ethernet56 56,57,58,59 etp8a 8 200000
34+
Ethernet60 60,61,62,63 etp8b 8 200000
35+
Ethernet64 64,65,66,67 etp9a 9 200000
36+
Ethernet68 68,69,70,71 etp9b 9 200000
37+
Ethernet72 72,73,74,75 etp10a 10 200000
38+
Ethernet76 76,77,78,79 etp10b 10 200000
39+
Ethernet80 80,81,82,83 etp11a 11 200000
40+
Ethernet84 84,85,86,87 etp11b 11 200000
41+
Ethernet88 88,89,90,91 etp12a 12 200000
42+
Ethernet92 92,93,94,95 etp12b 12 200000
43+
Ethernet96 96,97,98,99,100,101,102,103 etp13 13 400000
44+
Ethernet104 104,105,106,107,108,109,110,111 etp14 14 400000
45+
Ethernet112 112,113,114,115,116,117,118,119 etp15 15 400000
46+
Ethernet120 120,121,122,123,124,125,126,127 etp16 16 400000
47+
Ethernet128 128,129,130,131,132,133,134,135 etp17 17 400000
48+
Ethernet136 136,137,138,139,140,141,142,143 etp18 18 400000
49+
Ethernet144 144,145,146,147,148,149,150,151 etp19 19 400000
50+
Ethernet152 152,153,154,155,156,157,158,159 etp20 20 400000
51+
Ethernet160 160,161,162,163 etp21a 21 200000
52+
Ethernet164 164,165,166,167 etp21b 21 200000
53+
Ethernet168 168,169,170,171 etp22a 22 200000
54+
Ethernet172 172,173,174,175 etp22b 22 200000
55+
Ethernet176 176,177,178,179 etp23a 23 200000
56+
Ethernet180 180,181,182,183 etp23b 23 200000
57+
Ethernet184 184,185,186,187 etp24a 24 200000
58+
Ethernet188 188,189,190,191 etp24b 24 200000
59+
Ethernet192 192,193,194,195 etp25a 25 200000
60+
Ethernet196 196,197,198,199 etp25b 25 200000
61+
Ethernet200 200,201,202,203 etp26a 26 200000
62+
Ethernet204 204,205,206,207 etp26b 26 200000
63+
Ethernet208 208,209,210,211 etp27a 27 200000
64+
Ethernet212 212,213,214,215 etp27b 27 200000
65+
Ethernet216 216,217,218,219 etp28a 28 200000
66+
Ethernet220 220,221,222,223 etp28b 28 200000
67+
Ethernet224 224,225,226,227 etp29a 29 200000
68+
Ethernet228 228,229,230,231 etp29b 29 200000
69+
Ethernet232 232,233,234,235 etp30a 30 200000
70+
Ethernet236 236,237,238,239 etp30b 30 200000
71+
Ethernet240 240,241,242,243 etp31a 31 200000
72+
Ethernet244 244,245,246,247 etp31b 31 200000
73+
Ethernet248 248,249,250,251 etp32a 32 200000
74+
Ethernet252 252,253,254,255 etp32b 32 200000
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../x86_64-mlnx_msn2700-r0/ACS-MSN2700/qos.json.j2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
SAI_INIT_CONFIG_FILE=/usr/share/sonic/hwsku/sai_4700_8x400g_48x200g.xml
2+
SAI_DUMP_STORE_PATH=/var/log/mellanox/sdk-dumps
3+
SAI_DUMP_STORE_AMOUNT=10
4+
SAI_DUMP_MFT_CFG_PATH=/etc/sonic/mft/fwtrace_cfg
5+
SAI_DEFAULT_SWITCHING_MODE_STORE_FORWARD=1

0 commit comments

Comments
 (0)