Skip to content

Commit d514988

Browse files
authored
Add Mellanox-SN4600C-D100C12S2 SKU (#8754)
*[mellanox] Add D100C12S2 SKU to 4600C
1 parent ce000ea commit d514988

File tree

10 files changed

+861
-0
lines changed

10 files changed

+861
-0
lines changed
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../ACS-MSN4600C/buffers.json.j2
Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
{% set default_cable = '5m' %}
2+
{% set ingress_lossless_pool_size = '48228352' %}
3+
{% set ingress_lossless_xoff_size = '2287616' %}
4+
{% set egress_lossless_pool_size = '60817392' %}
5+
{% set egress_lossy_pool_size = '48228352' %}
6+
7+
{%- macro generate_port_lists(PORT_ALL) %}
8+
{# Generate list of ports #}
9+
{%- for port_idx in range(0, 32) %}
10+
{%- if PORT_ALL.append("Ethernet%d" % (port_idx)) %}{%- endif %}
11+
{%- endfor %}
12+
{%- endmacro %}
13+
14+
{%- macro generate_buffer_pool_and_profiles() %}
15+
"BUFFER_POOL": {
16+
"ingress_lossless_pool": {
17+
{%- if dynamic_mode is not defined %}
18+
"size": "{{ ingress_lossless_pool_size }}",
19+
"xoff": "{{ ingress_lossless_xoff_size }}",
20+
{%- endif %}
21+
"type": "ingress",
22+
"mode": "dynamic"
23+
},
24+
"egress_lossless_pool": {
25+
"size": "{{ egress_lossless_pool_size }}",
26+
"type": "egress",
27+
"mode": "dynamic"
28+
},
29+
"egress_lossy_pool": {
30+
{%- if dynamic_mode is not defined %}
31+
"size": "{{ egress_lossy_pool_size }}",
32+
{%- endif %}
33+
"type": "egress",
34+
"mode": "dynamic"
35+
}
36+
},
37+
"BUFFER_PROFILE": {
38+
"ingress_lossless_profile": {
39+
"pool":"[BUFFER_POOL|ingress_lossless_pool]",
40+
"size":"0",
41+
"dynamic_th":"7"
42+
},
43+
"ingress_lossy_profile": {
44+
"pool":"[BUFFER_POOL|ingress_lossless_pool]",
45+
"size":"0",
46+
"dynamic_th":"3"
47+
},
48+
"egress_lossless_profile": {
49+
"pool":"[BUFFER_POOL|egress_lossless_pool]",
50+
"size":"0",
51+
"dynamic_th":"7"
52+
},
53+
"egress_lossy_profile": {
54+
"pool":"[BUFFER_POOL|egress_lossy_pool]",
55+
"size":"9216",
56+
"dynamic_th":"7"
57+
},
58+
"q_lossy_profile": {
59+
"pool":"[BUFFER_POOL|egress_lossy_pool]",
60+
"size":"0",
61+
"dynamic_th":"3"
62+
}
63+
},
64+
{%- endmacro %}
65+
66+
{%- macro generate_profile_lists(port_names) %}
67+
"BUFFER_PORT_INGRESS_PROFILE_LIST": {
68+
{% for port in port_names.split(',') %}
69+
"{{ port }}": {
70+
"profile_list" : "[BUFFER_PROFILE|ingress_lossless_profile]"
71+
}{% if not loop.last %},{% endif %}
72+
73+
{% endfor %}
74+
},
75+
"BUFFER_PORT_EGRESS_PROFILE_LIST": {
76+
{% for port in port_names.split(',') %}
77+
"{{ port }}": {
78+
"profile_list" : "[BUFFER_PROFILE|egress_lossless_profile],[BUFFER_PROFILE|egress_lossy_profile]"
79+
}{% if not loop.last %},{% endif %}
80+
81+
{% endfor %}
82+
}
83+
{%- endmacro %}
84+
85+
{%- macro generate_queue_buffers(port_names) %}
86+
"BUFFER_QUEUE": {
87+
{% for port in port_names.split(',') %}
88+
"{{ port }}|3-4": {
89+
"profile" : "[BUFFER_PROFILE|egress_lossless_profile]"
90+
},
91+
{% endfor %}
92+
{% for port in port_names.split(',') %}
93+
"{{ port }}|0-2": {
94+
"profile" : "[BUFFER_PROFILE|q_lossy_profile]"
95+
},
96+
{% endfor %}
97+
{% for port in port_names.split(',') %}
98+
"{{ port }}|5-6": {
99+
"profile" : "[BUFFER_PROFILE|q_lossy_profile]"
100+
}{% if not loop.last %},{% endif %}
101+
102+
{% endfor %}
103+
}
104+
{%- endmacro %}
Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
{% set default_cable = '5m' %}
2+
{% set ingress_lossless_pool_size = '46315520' %}
3+
{% set ingress_lossless_xoff_size = '4200448' %}
4+
{% set egress_lossless_pool_size = '60817392' %}
5+
{% set egress_lossy_pool_size = '46315520' %}
6+
7+
{%- macro generate_port_lists(PORT_ALL) %}
8+
{# Generate list of ports #}
9+
{%- for port_idx in range(0, 32) %}
10+
{%- if PORT_ALL.append("Ethernet%d" % (port_idx)) %}{%- endif %}
11+
{%- endfor %}
12+
{%- endmacro %}
13+
14+
{%- macro generate_buffer_pool_and_profiles() %}
15+
"BUFFER_POOL": {
16+
"ingress_lossless_pool": {
17+
{%- if dynamic_mode is not defined %}
18+
"size": "{{ ingress_lossless_pool_size }}",
19+
"xoff": "{{ ingress_lossless_xoff_size }}",
20+
{%- endif %}
21+
"type": "ingress",
22+
"mode": "dynamic"
23+
},
24+
"egress_lossless_pool": {
25+
"size": "{{ egress_lossless_pool_size }}",
26+
"type": "egress",
27+
"mode": "dynamic"
28+
},
29+
"egress_lossy_pool": {
30+
{%- if dynamic_mode is not defined %}
31+
"size": "{{ egress_lossy_pool_size }}",
32+
{%- endif %}
33+
"type": "egress",
34+
"mode": "dynamic"
35+
}
36+
},
37+
"BUFFER_PROFILE": {
38+
"ingress_lossless_profile": {
39+
"pool":"[BUFFER_POOL|ingress_lossless_pool]",
40+
"size":"0",
41+
"dynamic_th":"7"
42+
},
43+
"ingress_lossy_profile": {
44+
"pool":"[BUFFER_POOL|ingress_lossless_pool]",
45+
"size":"0",
46+
"dynamic_th":"3"
47+
},
48+
"egress_lossless_profile": {
49+
"pool":"[BUFFER_POOL|egress_lossless_pool]",
50+
"size":"0",
51+
"dynamic_th":"7"
52+
},
53+
"egress_lossy_profile": {
54+
"pool":"[BUFFER_POOL|egress_lossy_pool]",
55+
"size":"9216",
56+
"dynamic_th":"7"
57+
},
58+
"q_lossy_profile": {
59+
"pool":"[BUFFER_POOL|egress_lossy_pool]",
60+
"size":"0",
61+
"dynamic_th":"3"
62+
}
63+
},
64+
{%- endmacro %}
65+
66+
{%- macro generate_profile_lists(port_names) %}
67+
"BUFFER_PORT_INGRESS_PROFILE_LIST": {
68+
{% for port in port_names.split(',') %}
69+
"{{ port }}": {
70+
"profile_list" : "[BUFFER_PROFILE|ingress_lossless_profile]"
71+
}{% if not loop.last %},{% endif %}
72+
73+
{% endfor %}
74+
},
75+
"BUFFER_PORT_EGRESS_PROFILE_LIST": {
76+
{% for port in port_names.split(',') %}
77+
"{{ port }}": {
78+
"profile_list" : "[BUFFER_PROFILE|egress_lossless_profile],[BUFFER_PROFILE|egress_lossy_profile]"
79+
}{% if not loop.last %},{% endif %}
80+
81+
{% endfor %}
82+
}
83+
{%- endmacro %}
84+
85+
{%- macro generate_queue_buffers(port_names) %}
86+
"BUFFER_QUEUE": {
87+
{% for port in port_names.split(',') %}
88+
"{{ port }}|3-4": {
89+
"profile" : "[BUFFER_PROFILE|egress_lossless_profile]"
90+
},
91+
{% endfor %}
92+
{% for port in port_names.split(',') %}
93+
"{{ port }}|0-2": {
94+
"profile" : "[BUFFER_PROFILE|q_lossy_profile]"
95+
},
96+
{% endfor %}
97+
{% for port in port_names.split(',') %}
98+
"{{ port }}|5-6": {
99+
"profile" : "[BUFFER_PROFILE|q_lossy_profile]"
100+
}{% if not loop.last %},{% endif %}
101+
102+
{% endfor %}
103+
}
104+
{%- endmacro %}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../x86_64-mlnx_msn2700-r0/ACS-MSN2700/buffers_dynamic.json.j2
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../Mellanox-SN4600C-D112C8/pg_profile_lookup.ini
Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
# name lanes alias index speed
2+
Ethernet0 0,1 etp1a 1 50000
3+
Ethernet2 2,3 etp1b 1 50000
4+
Ethernet4 8,9 etp2a 2 50000
5+
Ethernet6 10,11 etp2b 2 50000
6+
Ethernet8 16,17 etp3a 3 50000
7+
Ethernet10 18,19 etp3b 3 50000
8+
Ethernet12 24,25 etp4a 4 50000
9+
Ethernet14 26,27 etp4b 4 50000
10+
Ethernet16 32,33 etp5a 5 50000
11+
Ethernet18 34,35 etp5b 5 50000
12+
Ethernet20 40,41 etp6a 6 50000
13+
Ethernet22 42,43 etp6b 6 50000
14+
Ethernet24 48,49 etp7a 7 50000
15+
Ethernet26 50,51 etp7b 7 50000
16+
Ethernet28 56,57 etp8a 8 50000
17+
Ethernet30 58,59 etp8b 8 50000
18+
Ethernet32 64,65 etp9a 9 50000
19+
Ethernet34 66,67 etp9b 9 50000
20+
Ethernet36 72,73 etp10a 10 50000
21+
Ethernet38 74,75 etp10b 10 50000
22+
Ethernet40 80,81 etp11a 11 50000
23+
Ethernet42 82,83 etp11b 11 50000
24+
Ethernet44 88,89 etp12a 12 50000
25+
Ethernet46 90,91 etp12b 12 50000
26+
Ethernet48 96,97,98,99 etp13 13 100000
27+
Ethernet52 104,105 etp14a 14 50000
28+
Ethernet54 106,107 etp14b 14 50000
29+
Ethernet56 112,113 etp15a 15 50000
30+
Ethernet58 114,115 etp15b 15 50000
31+
Ethernet60 120,121,122,123 etp16 16 100000
32+
Ethernet64 128,129 etp17a 17 50000
33+
Ethernet66 130,131 etp17b 17 50000
34+
Ethernet68 136,137 etp18a 18 50000
35+
Ethernet70 138,139 etp18b 18 50000
36+
Ethernet72 144,145 etp19a 19 50000
37+
Ethernet74 146,147 etp19b 19 50000
38+
Ethernet76 152,153 etp20a 20 50000
39+
Ethernet78 154,155 etp20b 20 50000
40+
Ethernet80 160,161 etp21a 21 50000
41+
Ethernet82 162,163 etp21b 21 50000
42+
Ethernet84 168,169 etp22a 22 50000
43+
Ethernet86 170,171 etp22b 22 50000
44+
Ethernet88 176,177 etp23a 23 50000
45+
Ethernet90 178,179 etp23b 23 50000
46+
Ethernet92 184,185 etp24a 24 50000
47+
Ethernet94 186,187 etp24b 24 50000
48+
Ethernet96 192,193 etp25a 25 50000
49+
Ethernet98 194,195 etp25b 25 50000
50+
Ethernet100 200,201 etp26a 26 50000
51+
Ethernet102 202,203 etp26b 26 50000
52+
Ethernet104 208,209 etp27a 27 50000
53+
Ethernet106 210,211 etp27b 27 50000
54+
Ethernet108 216,217 etp28a 28 50000
55+
Ethernet110 218,219 etp28b 28 50000
56+
Ethernet112 224,225 etp29a 29 50000
57+
Ethernet114 226,227 etp29b 29 50000
58+
Ethernet116 232,233 etp30a 30 50000
59+
Ethernet118 234,235 etp30b 30 50000
60+
Ethernet120 240,241 etp31a 31 50000
61+
Ethernet122 242,243 etp31b 31 50000
62+
Ethernet124 248,249 etp32a 32 50000
63+
Ethernet126 250,251 etp32b 32 50000
64+
Ethernet128 256,257,258,259 etp33 33 100000
65+
Ethernet132 264,265 etp34a 34 50000
66+
Ethernet134 266,267 etp34b 34 50000
67+
Ethernet136 272,273 etp35a 35 50000
68+
Ethernet138 274,275 etp35b 35 50000
69+
Ethernet140 280,281,282,283 etp36 36 100000
70+
Ethernet144 288,289 etp37a 37 50000
71+
Ethernet146 290,291 etp37b 37 50000
72+
Ethernet148 296,297,298,299 etp38 38 10000
73+
Ethernet152 304,305 etp39a 39 50000
74+
Ethernet154 306,307 etp39b 39 50000
75+
Ethernet156 312,313,314,315 etp40 40 10000
76+
Ethernet160 320,321 etp41a 41 50000
77+
Ethernet162 322,323 etp41b 41 50000
78+
Ethernet164 328,329 etp42a 42 50000
79+
Ethernet166 330,331 etp42b 42 50000
80+
Ethernet168 336,337 etp43a 43 50000
81+
Ethernet170 338,339 etp43b 43 50000
82+
Ethernet172 344,345 etp44a 44 50000
83+
Ethernet174 346,347 etp44b 44 50000
84+
Ethernet176 352,353 etp45a 45 50000
85+
Ethernet178 354,355 etp45b 45 50000
86+
Ethernet180 360,361 etp46a 46 50000
87+
Ethernet182 362,363 etp46b 46 50000
88+
Ethernet184 368,369 etp47a 47 50000
89+
Ethernet186 370,371 etp47b 47 50000
90+
Ethernet188 376,377 etp48a 48 50000
91+
Ethernet190 378,379 etp48b 48 50000
92+
Ethernet192 384,385 etp49a 49 50000
93+
Ethernet194 386,387 etp49b 49 50000
94+
Ethernet196 392,393 etp50a 50 50000
95+
Ethernet198 394,395 etp50b 50 50000
96+
Ethernet200 400,401 etp51a 51 50000
97+
Ethernet202 402,403 etp51b 51 50000
98+
Ethernet204 408,409 etp52a 52 50000
99+
Ethernet206 410,411 etp52b 52 50000
100+
Ethernet208 416,417,418,419 etp53 53 100000
101+
Ethernet212 424,425,426,427 etp54 54 100000
102+
Ethernet216 432,433,434,435 etp55 55 100000
103+
Ethernet220 440,441,442,443 etp56 56 100000
104+
Ethernet224 448,449,450,451 etp57 57 100000
105+
Ethernet228 456,457,458,459 etp58 58 100000
106+
Ethernet232 464,465,466,467 etp59 59 100000
107+
Ethernet236 472,473,474,475 etp60 60 100000
108+
Ethernet240 480,481 etp61a 61 50000
109+
Ethernet242 482,483 etp61b 61 50000
110+
Ethernet244 488,489 etp62a 62 50000
111+
Ethernet246 490,491 etp62b 62 50000
112+
Ethernet248 496,497 etp63a 63 50000
113+
Ethernet250 498,499 etp63b 63 50000
114+
Ethernet252 504,505 etp64a 64 50000
115+
Ethernet254 506,507 etp64b 64 50000
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../ACS-MSN4600C/qos.json.j2
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
SAI_VXLAN_SRCPORT_RANGE_ENABLE=1
2+
SAI_INIT_CONFIG_FILE=/usr/share/sonic/hwsku/sai_4600c_100x50g_12x100g_2x10g.xml
3+
SAI_DUMP_STORE_PATH=/var/log/mellanox/sdk-dumps
4+
SAI_DUMP_STORE_AMOUNT=10

0 commit comments

Comments
 (0)