Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Mellanox] Add a new Mellanox platform x86_64-mlnx_msn4700 and new SKU ACS-MSN4700 #3901

Merged
merged 18 commits into from
Mar 24, 2020
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
{% set default_cable = '5m' %}
{% set ingress_lossless_pool_size = '27828216' %}
{% set ingress_lossy_pool_size = '27828216' %}
{% set egress_lossless_pool_size = '60817392' %}
{% set egress_lossy_pool_size = '27828216' %}

{%- macro generate_port_lists(PORT_ALL) %}
{# Generate list of ports #}
{%- for port_idx in range(0, 32) %}
{%- if PORT_ALL.append("Ethernet%d" % (port_idx)) %}{%- endif %}
{%- endfor %}
{%- endmacro %}

{%- macro generate_buffer_pool_and_profiles() %}
"BUFFER_POOL": {
"ingress_lossless_pool": {
"size": "{{ ingress_lossless_pool_size }}",
"type": "ingress",
"mode": "dynamic"
},
"ingress_lossy_pool": {
"size": "{{ ingress_lossy_pool_size }}",
"type": "ingress",
"mode": "dynamic"
},
"egress_lossless_pool": {
"size": "{{ egress_lossless_pool_size }}",
"type": "egress",
"mode": "dynamic"
},
"egress_lossy_pool": {
"size": "{{ egress_lossy_pool_size }}",
"type": "egress",
"mode": "dynamic"
}
},
"BUFFER_PROFILE": {
"ingress_lossless_profile": {
"pool":"[BUFFER_POOL|ingress_lossless_pool]",
"size":"0",
"dynamic_th":"0"
},
"ingress_lossy_profile": {
"pool":"[BUFFER_POOL|ingress_lossy_pool]",
"size":"0",
"dynamic_th":"3"
},
"egress_lossless_profile": {
"pool":"[BUFFER_POOL|egress_lossless_pool]",
"size":"0",
"dynamic_th":"7"
},
"egress_lossy_profile": {
"pool":"[BUFFER_POOL|egress_lossy_pool]",
"size":"4096",
"dynamic_th":"3"
},
"q_lossy_profile": {
"pool":"[BUFFER_POOL|egress_lossy_pool]",
"size":"0",
"dynamic_th":"3"
}
},
{%- endmacro %}

{%- macro generate_profile_lists(port_names) %}
"BUFFER_PORT_INGRESS_PROFILE_LIST": {
"{{ port_names }}": {
"profile_list" : "[BUFFER_PROFILE|ingress_lossless_profile],[BUFFER_PROFILE|ingress_lossy_profile]"
}
},
"BUFFER_PORT_EGRESS_PROFILE_LIST": {
"{{ port_names }}": {
"profile_list" : "[BUFFER_PROFILE|egress_lossless_profile],[BUFFER_PROFILE|egress_lossy_profile]"
}
}
{%- endmacro %}

{%- macro generate_queue_buffers(port_names) %}
"BUFFER_QUEUE": {
"{{ port_names }}|3-4": {
"profile" : "[BUFFER_PROFILE|egress_lossless_profile]"
},
"{{ port_names }}|0-1": {
"profile" : "[BUFFER_PROFILE|q_lossy_profile]"
},
"{{ port_names }}|5": {
"profile" : "[BUFFER_PROFILE|q_lossy_profile]"
}
}
{%- endmacro %}
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
{% set default_cable = '5m' %}
{% set ingress_lossless_pool_size = '16138232' %}
{% set ingress_lossy_pool_size = '16138232' %}
{% set egress_lossless_pool_size = '60817392' %}
{% set egress_lossy_pool_size = '16138232' %}

{%- macro generate_port_lists(PORT_ALL) %}
{# Generate list of ports #}
{%- for port_idx in range(0, 32) %}
{%- if PORT_ALL.append("Ethernet%d" % (port_idx)) %}{%- endif %}
{%- endfor %}
{%- endmacro %}

{%- macro generate_buffer_pool_and_profiles() %}
"BUFFER_POOL": {
"ingress_lossless_pool": {
"size": "{{ ingress_lossless_pool_size }}",
"type": "ingress",
"mode": "dynamic"
},
"ingress_lossy_pool": {
"size": "{{ ingress_lossy_pool_size }}",
"type": "ingress",
"mode": "dynamic"
},
"egress_lossless_pool": {
"size": "{{ egress_lossless_pool_size }}",
"type": "egress",
"mode": "dynamic"
},
"egress_lossy_pool": {
"size": "{{ egress_lossy_pool_size }}",
"type": "egress",
"mode": "dynamic"
}
},
"BUFFER_PROFILE": {
"ingress_lossless_profile": {
"pool":"[BUFFER_POOL|ingress_lossless_pool]",
"size":"0",
"dynamic_th":"0"
},
"ingress_lossy_profile": {
"pool":"[BUFFER_POOL|ingress_lossy_pool]",
"size":"0",
"dynamic_th":"3"
},
"egress_lossless_profile": {
"pool":"[BUFFER_POOL|egress_lossless_pool]",
"size":"0",
"dynamic_th":"7"
},
"egress_lossy_profile": {
"pool":"[BUFFER_POOL|egress_lossy_pool]",
"size":"4096",
"dynamic_th":"3"
},
"q_lossy_profile": {
"pool":"[BUFFER_POOL|egress_lossy_pool]",
"size":"0",
"dynamic_th":"3"
}
},
{%- endmacro %}

{%- macro generate_profile_lists(port_names) %}
"BUFFER_PORT_INGRESS_PROFILE_LIST": {
"{{ port_names }}": {
"profile_list" : "[BUFFER_PROFILE|ingress_lossless_profile],[BUFFER_PROFILE|ingress_lossy_profile]"
}
},
"BUFFER_PORT_EGRESS_PROFILE_LIST": {
"{{ port_names }}": {
"profile_list" : "[BUFFER_PROFILE|egress_lossless_profile],[BUFFER_PROFILE|egress_lossy_profile]"
}
}
{%- endmacro %}

{%- macro generate_queue_buffers(port_names) %}
"BUFFER_QUEUE": {
"{{ port_names }}|3-4": {
"profile" : "[BUFFER_PROFILE|egress_lossless_profile]"
},
"{{ port_names }}|0-1": {
"profile" : "[BUFFER_PROFILE|q_lossy_profile]"
},
"{{ port_names }}|5": {
"profile" : "[BUFFER_PROFILE|q_lossy_profile]"
}
}
{%- endmacro %}
keboliu marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# speed cable size xon xoff threshold
1000 5m 35840 18432 17408 0
10000 5m 36864 18432 18432 0
25000 5m 36864 18432 18432 0
40000 5m 36864 18432 18432 0
50000 5m 37888 18432 19456 0
100000 5m 38912 18432 20480 0
200000 5m 41984 18432 23552 0
400000 5m 48128 19456 28672 0
1000 40m 36864 18432 18432 0
10000 40m 38912 18432 20480 0
25000 40m 41984 18432 23552 0
40000 40m 45056 18432 26624 0
50000 40m 47104 18432 28672 0
100000 40m 59392 18432 40960 0
200000 40m 81920 18432 63488 0
400000 40m 128000 19456 108544 0
1000 300m 37888 18432 19456 0
10000 300m 53248 18432 34816 0
25000 300m 78848 18432 60416 0
40000 300m 104448 18432 86016 0
50000 300m 121856 18432 103424 0
100000 300m 206848 18432 188416 0
200000 300m 376832 18432 358400 0
400000 300m 718848 19456 699392 0
33 changes: 33 additions & 0 deletions device/mellanox/x86_64-mlnx_msn4700-r0/ACS-MSN4700/port_config.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# name lanes alias
Ethernet0 0,1,2,3,4,5,6,7 etp1
keboliu marked this conversation as resolved.
Show resolved Hide resolved
Ethernet8 8,9,10,11,12,13,14,15 etp2
Ethernet16 16,17,18,19,20,21,22,23 etp3
Ethernet24 24,25,26,27,28,29,30,31 etp4
Ethernet32 32,33,34,35,36,37,38,39 etp5
Ethernet40 40,41,42,43,44,45,46,47 etp6
Ethernet48 48,49,50,51,52,53,54,55 etp7
Ethernet56 56,57,58,59,60,61,62,63 etp8
Ethernet64 64,65,66,67,68,69,70,71 etp9
Ethernet72 72,73,74,75,76,77,78,79 etp10
Ethernet80 80,81,82,83,84,85,86,87 etp11
Ethernet88 88,89,90,91,92,93,94,95 etp12
Ethernet96 96,97,98,99,100,101,102,103 etp13
Ethernet104 104,105,106,107,108,109,110,111 etp14
Ethernet112 112,113,114,115,116,117,118,119 etp15
Ethernet120 120,121,122,123,124,125,126,127 etp16
Ethernet128 128,129,130,131,132,133,134,135 etp17
Ethernet136 136,137,138,139,140,141,142,143 etp18
Ethernet144 144,145,146,147,148,149,150,151 etp19
Ethernet152 152,153,154,155,156,157,158,159 etp20
Ethernet160 160,161,162,163,164,165,166,167 etp21
Ethernet168 168,169,170,171,172,173,174,175 etp22
Ethernet176 176,177,178,179,180,181,182,183 etp23
Ethernet184 184,185,186,187,188,189,190,191 etp24
Ethernet192 192,193,194,195,196,197,198,199 etp25
Ethernet200 200,201,202,203,204,205,206,207 etp26
Ethernet208 208,209,210,211,212,213,214,215 etp27
Ethernet216 216,217,218,219,220,221,222,223 etp28
Ethernet224 224,225,226,227,228,229,230,231 etp29
Ethernet232 232,233,234,235,236,237,238,239 etp30
Ethernet240 240,241,242,243,244,245,246,247 etp31
Ethernet248 248,249,250,251,252,253,254,255 etp32
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
SAI_INIT_CONFIG_FILE=/usr/share/sonic/hwsku/sai_4700.xml
Loading