Skip to content

Commit d2f6fe7

Browse files
authored
Add support for Accton wedge100bf_32qs platform to SONiC master (#9257)
* Add support for Accton wedge100bf_32qs platform This pull request is based on wedge100bf_32x. The components on the mainboard are the same as wedge100bf_32x, except for tofino 32Q and COMe models, so it refers to wedge100bf_32x to create new model: wedge100bf_32qs. Signed-off-by: alvin_feng <[email protected]> * Fix lgtm alerts issues Signed-off-by: alvin_feng <[email protected]> * Modify some file permissions and use symlink to link wedge100bf-32qs/sonic_platform Signed-off-by: alvin_feng <[email protected]> * Remove switch-sai.conf file Signed-off-by: alvin_feng <[email protected]> * Modify platform.json to avoid platform TCs issues and changes for correct generating BUFFER_QUEUE values in DB. Signed-off-by: alvin_feng <[email protected]> * Fix error name in platform.json
1 parent 2210c82 commit d2f6fe7

35 files changed

+1593
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
montara t1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
CONSOLE_SPEED=57600
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
{%- set default_topo = 't0' %}
2+
{%- include 'buffers_config.j2' %}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
{% set default_cable = '5m' %}
2+
{% set ingress_lossless_pool_size = '4194304' %}
3+
{% set ingress_lossy_pool_size = '7340032' %}
4+
{% set egress_lossless_pool_size = '16777152' %}
5+
{% set egress_lossy_pool_size = '7340032' %}
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 * 4)) %}{%- endif %}
11+
{%- endfor %}
12+
{%- endmacro %}
13+
14+
{%- macro generate_buffer_pool_and_profiles() %}
15+
"BUFFER_POOL": {
16+
"ingress_lossless_pool": {
17+
"size": "{{ ingress_lossless_pool_size }}",
18+
"type": "ingress",
19+
"mode": "dynamic"
20+
},
21+
"ingress_lossy_pool": {
22+
"size": "{{ ingress_lossy_pool_size }}",
23+
"type": "ingress",
24+
"mode": "dynamic"
25+
},
26+
"egress_lossless_pool": {
27+
"size": "{{ egress_lossless_pool_size }}",
28+
"type": "egress",
29+
"mode": "dynamic"
30+
},
31+
"egress_lossy_pool": {
32+
"size": "{{ egress_lossy_pool_size }}",
33+
"type": "egress",
34+
"mode": "dynamic"
35+
}
36+
},
37+
"BUFFER_PROFILE": {
38+
"ingress_lossless_profile": {
39+
"pool":"ingress_lossless_pool",
40+
"size":"4096",
41+
"dynamic_th":"0"
42+
},
43+
"ingress_lossy_profile": {
44+
"pool":"ingress_lossy_pool",
45+
"size":"4096",
46+
"dynamic_th":"3"
47+
},
48+
"egress_lossless_profile": {
49+
"pool":"egress_lossless_pool",
50+
"size":"4096",
51+
"dynamic_th":"7"
52+
},
53+
"egress_lossy_profile": {
54+
"pool":"egress_lossy_pool",
55+
"size":"4096",
56+
"dynamic_th":"3"
57+
},
58+
"q_lossy_profile": {
59+
"pool":"egress_lossy_pool",
60+
"size":"4096",
61+
"dynamic_th":"3"
62+
}
63+
},
64+
{%- endmacro %}
65+
66+
{%- macro generate_queue_buffers(port_names) %}
67+
"BUFFER_QUEUE": {
68+
{% for port in port_names.split(',') %}
69+
"{{ port }}|0-1": {
70+
"profile" : "q_lossy_profile"
71+
},
72+
{% endfor %}
73+
{% for port in port_names.split(',') %}
74+
"{{ port }}|3-4": {
75+
"profile" : "egress_lossless_profile"
76+
}{% if not loop.last %},{% endif %}
77+
{% endfor %}
78+
}
79+
{%- endmacro %}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
{% set default_cable = '5m' %}
2+
{% set ingress_lossless_pool_size = '2097152' %}
3+
{% set ingress_lossy_pool_size = '5242880' %}
4+
{% set egress_lossless_pool_size = '16777152' %}
5+
{% set egress_lossy_pool_size = '5242880' %}
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 * 4)) %}{%- endif %}
11+
{%- endfor %}
12+
{%- endmacro %}
13+
14+
{%- macro generate_buffer_pool_and_profiles() %}
15+
"BUFFER_POOL": {
16+
"ingress_lossless_pool": {
17+
"size": "{{ ingress_lossless_pool_size }}",
18+
"type": "ingress",
19+
"mode": "dynamic"
20+
},
21+
"ingress_lossy_pool": {
22+
"size": "{{ ingress_lossy_pool_size }}",
23+
"type": "ingress",
24+
"mode": "dynamic"
25+
},
26+
"egress_lossless_pool": {
27+
"size": "{{ egress_lossless_pool_size }}",
28+
"type": "egress",
29+
"mode": "dynamic"
30+
},
31+
"egress_lossy_pool": {
32+
"size": "{{ egress_lossy_pool_size }}",
33+
"type": "egress",
34+
"mode": "dynamic"
35+
}
36+
},
37+
"BUFFER_PROFILE": {
38+
"ingress_lossless_profile": {
39+
"pool":"ingress_lossless_pool",
40+
"size":"4096",
41+
"dynamic_th":"0"
42+
},
43+
"ingress_lossy_profile": {
44+
"pool":"ingress_lossy_pool",
45+
"size":"4096",
46+
"dynamic_th":"3"
47+
},
48+
"egress_lossless_profile": {
49+
"pool":"egress_lossless_pool",
50+
"size":"4096",
51+
"dynamic_th":"7"
52+
},
53+
"egress_lossy_profile": {
54+
"pool":"egress_lossy_pool",
55+
"size":"4096",
56+
"dynamic_th":"3"
57+
},
58+
"q_lossy_profile": {
59+
"pool":"egress_lossy_pool",
60+
"size":"4096",
61+
"dynamic_th":"3"
62+
}
63+
},
64+
{%- endmacro %}
65+
66+
{%- macro generate_queue_buffers(port_names) %}
67+
"BUFFER_QUEUE": {
68+
{% for port in port_names.split(',') %}
69+
"{{ port }}|0-1": {
70+
"profile" : "q_lossy_profile"
71+
},
72+
{% endfor %}
73+
{% for port in port_names.split(',') %}
74+
"{{ port }}|3-4": {
75+
"profile" : "egress_lossless_profile"
76+
}{% if not loop.last %},{% endif %}
77+
{% endfor %}
78+
}
79+
{%- endmacro %}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,164 @@
1+
{
2+
"interfaces": {
3+
"Ethernet0": {
4+
"default_brkout_mode": "1x100G[40G]",
5+
"autoneg": "off",
6+
"fec": "rs"
7+
},
8+
"Ethernet4": {
9+
"default_brkout_mode": "1x100G[40G]",
10+
"autoneg": "off",
11+
"fec": "rs"
12+
},
13+
"Ethernet8": {
14+
"default_brkout_mode": "1x100G[40G]",
15+
"autoneg": "off",
16+
"fec": "rs"
17+
},
18+
"Ethernet12": {
19+
"default_brkout_mode": "1x100G[40G]",
20+
"autoneg": "off",
21+
"fec": "rs"
22+
},
23+
"Ethernet16": {
24+
"default_brkout_mode": "1x100G[40G]",
25+
"autoneg": "off",
26+
"fec": "rs"
27+
},
28+
"Ethernet20": {
29+
"default_brkout_mode": "1x100G[40G]",
30+
"autoneg": "off",
31+
"fec": "rs"
32+
},
33+
"Ethernet24": {
34+
"default_brkout_mode": "1x100G[40G]",
35+
"autoneg": "off",
36+
"fec": "rs"
37+
},
38+
"Ethernet28": {
39+
"default_brkout_mode": "1x100G[40G]",
40+
"autoneg": "off",
41+
"fec": "rs"
42+
},
43+
"Ethernet32": {
44+
"default_brkout_mode": "1x100G[40G]",
45+
"autoneg": "off",
46+
"fec": "rs"
47+
},
48+
"Ethernet36": {
49+
"default_brkout_mode": "1x100G[40G]",
50+
"autoneg": "off",
51+
"fec": "rs"
52+
},
53+
"Ethernet40": {
54+
"default_brkout_mode": "1x100G[40G]",
55+
"autoneg": "off",
56+
"fec": "rs"
57+
},
58+
"Ethernet44": {
59+
"default_brkout_mode": "1x100G[40G]",
60+
"autoneg": "off",
61+
"fec": "rs"
62+
},
63+
"Ethernet48": {
64+
"default_brkout_mode": "1x100G[40G]",
65+
"autoneg": "off",
66+
"fec": "rs"
67+
},
68+
"Ethernet52": {
69+
"default_brkout_mode": "1x100G[40G]",
70+
"autoneg": "off",
71+
"fec": "rs"
72+
},
73+
"Ethernet56": {
74+
"default_brkout_mode": "1x100G[40G]",
75+
"autoneg": "off",
76+
"fec": "rs"
77+
},
78+
"Ethernet60": {
79+
"default_brkout_mode": "1x100G[40G]",
80+
"autoneg": "off",
81+
"fec": "rs"
82+
},
83+
"Ethernet64": {
84+
"default_brkout_mode": "1x100G[40G]",
85+
"autoneg": "off",
86+
"fec": "rs"
87+
},
88+
"Ethernet68": {
89+
"default_brkout_mode": "1x100G[40G]",
90+
"autoneg": "off",
91+
"fec": "rs"
92+
},
93+
"Ethernet72": {
94+
"default_brkout_mode": "1x100G[40G]",
95+
"autoneg": "off",
96+
"fec": "rs"
97+
},
98+
"Ethernet76": {
99+
"default_brkout_mode": "1x100G[40G]",
100+
"autoneg": "off",
101+
"fec": "rs"
102+
},
103+
"Ethernet80": {
104+
"default_brkout_mode": "1x100G[40G]",
105+
"autoneg": "off",
106+
"fec": "rs"
107+
},
108+
"Ethernet84": {
109+
"default_brkout_mode": "1x100G[40G]",
110+
"autoneg": "off",
111+
"fec": "rs"
112+
},
113+
"Ethernet88": {
114+
"default_brkout_mode": "1x100G[40G]",
115+
"autoneg": "off",
116+
"fec": "rs"
117+
},
118+
"Ethernet92": {
119+
"default_brkout_mode": "1x100G[40G]",
120+
"autoneg": "off",
121+
"fec": "rs"
122+
},
123+
"Ethernet96": {
124+
"default_brkout_mode": "1x100G[40G]",
125+
"autoneg": "off",
126+
"fec": "rs"
127+
},
128+
"Ethernet100": {
129+
"default_brkout_mode": "1x100G[40G]",
130+
"autoneg": "off",
131+
"fec": "rs"
132+
},
133+
"Ethernet104": {
134+
"default_brkout_mode": "1x100G[40G]",
135+
"autoneg": "off",
136+
"fec": "rs"
137+
},
138+
"Ethernet108": {
139+
"default_brkout_mode": "1x100G[40G]",
140+
"autoneg": "off",
141+
"fec": "rs"
142+
},
143+
"Ethernet112": {
144+
"default_brkout_mode": "1x100G[40G]",
145+
"autoneg": "off",
146+
"fec": "rs"
147+
},
148+
"Ethernet116": {
149+
"default_brkout_mode": "1x100G[40G]",
150+
"autoneg": "off",
151+
"fec": "rs"
152+
},
153+
"Ethernet120": {
154+
"default_brkout_mode": "1x100G[40G]",
155+
"autoneg": "off",
156+
"fec": "rs"
157+
},
158+
"Ethernet124": {
159+
"default_brkout_mode": "1x100G[40G]",
160+
"autoneg": "off",
161+
"fec": "rs"
162+
}
163+
}
164+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# PG lossless profiles.
2+
# speed cable size xon xoff threshold
3+
10000 5m 34816 18432 16384 0
4+
25000 5m 34816 18432 16384 0
5+
40000 5m 34816 18432 16384 0
6+
50000 5m 34816 18432 16384 0
7+
100000 5m 36864 18432 18432 0
8+
10000 40m 36864 18432 18432 0
9+
25000 40m 39936 18432 21504 0
10+
40000 40m 41984 18432 23552 0
11+
50000 40m 41984 18432 23552 0
12+
100000 40m 54272 18432 35840 0
13+
10000 300m 49152 18432 30720 0
14+
25000 300m 71680 18432 53248 0
15+
40000 300m 94208 18432 75776 0
16+
50000 300m 94208 18432 75776 0
17+
100000 300m 184320 18432 165888 0
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# name lanes alias index speed autoneg fec
2+
Ethernet0 0,1,2,3 Ethernet0 1 100000 off rs
3+
Ethernet4 4,5,6,7 Ethernet4 2 100000 off rs
4+
Ethernet8 8,9,10,11 Ethernet8 3 100000 off rs
5+
Ethernet12 12,13,14,15 Ethernet12 4 100000 off rs
6+
Ethernet16 16,17,18,19 Ethernet16 5 100000 off rs
7+
Ethernet20 20,21,22,23 Ethernet20 6 100000 off rs
8+
Ethernet24 24,25,26,27 Ethernet24 7 100000 off rs
9+
Ethernet28 28,29,30,31 Ethernet28 8 100000 off rs
10+
Ethernet32 32,33,34,35 Ethernet32 9 100000 off rs
11+
Ethernet36 36,37,38,39 Ethernet36 10 100000 off rs
12+
Ethernet40 40,41,42,43 Ethernet40 11 100000 off rs
13+
Ethernet44 44,45,46,47 Ethernet44 12 100000 off rs
14+
Ethernet48 48,49,50,51 Ethernet48 13 100000 off rs
15+
Ethernet52 52,53,54,55 Ethernet52 14 100000 off rs
16+
Ethernet56 56,57,58,59 Ethernet56 15 100000 off rs
17+
Ethernet60 60,61,62,63 Ethernet60 16 100000 off rs
18+
Ethernet64 64,65,66,67 Ethernet64 17 100000 off rs
19+
Ethernet68 68,69,70,71 Ethernet68 18 100000 off rs
20+
Ethernet72 72,73,74,75 Ethernet72 19 100000 off rs
21+
Ethernet76 76,77,78,79 Ethernet76 20 100000 off rs
22+
Ethernet80 80,81,82,83 Ethernet80 21 100000 off rs
23+
Ethernet84 84,85,86,87 Ethernet84 22 100000 off rs
24+
Ethernet88 88,89,90,91 Ethernet88 23 100000 off rs
25+
Ethernet92 92,93,94,95 Ethernet92 24 100000 off rs
26+
Ethernet96 96,97,98,99 Ethernet96 25 100000 off rs
27+
Ethernet100 100,101,102,103 Ethernet100 26 100000 off rs
28+
Ethernet104 104,105,106,107 Ethernet104 27 100000 off rs
29+
Ethernet108 108,109,110,111 Ethernet108 28 100000 off rs
30+
Ethernet112 112,113,114,115 Ethernet112 29 100000 off rs
31+
Ethernet116 116,117,118,119 Ethernet116 30 100000 off rs
32+
Ethernet120 120,121,122,123 Ethernet120 31 100000 off rs
33+
Ethernet124 124,125,126,127 Ethernet124 32 100000 off rs
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{%- macro generate_tc_to_pg_map() %}
2+
"TC_TO_PRIORITY_GROUP_MAP": {
3+
"AZURE": {
4+
"3": "3",
5+
"4": "4"
6+
}
7+
},
8+
{%- endmacro %}
9+
10+
{%- include 'qos_config.j2' %}

0 commit comments

Comments
 (0)