-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Mellanox]: Add Mellanox-SN4600C-D24C52 SKU. (#20142)
A new SKU for `MSN4600C` platform: `Mellanox-SN4600C-D24C52` Requirements for `Mellanox-SN4600C-D24C52`: * 8 x 100Gbps uplink to T2 switch (C25, C26, C29-C30, C33-C34, C37-C38) * 12 x 100Gbps downlinks to T0 switch (C1-C2, C3-C4, C7-C8, C53-C54, C57-C58, C63-C64) * 1 x 50Gbps downlinks to T0 switch (D62) * Type of transceiver: "100Gb AOC between T0-T1, 100G DAC between T0-Server" * Cable length: “T0-T1 40m default, 300m max; T0-Server 2m” * Breakout mode: "per port layout" * FEC mode: "none" * VxLAN source port: "no" * Static Policy Based Hashing: "no" * Traditional buffer model: "yes" * Shared headroom: “yes” * Over-subscription ratio: “2” * Warm boot: “yes” Additional details: * `Mellanox-SN4600C-D24C52` is a replacement for [Mellanox-SN3800-D24C52](https://github.com/sonic-net/sonic-buildimage/tree/master/device/mellanox/x86_64-mlnx_msn3800-r0/Mellanox-SN3800-D24C52) #### Why I did it * Added `Mellanox-SN4600C-D24C52` to replace `Mellanox-SN3800-D24C52` ### How I did it * Added relevant configuration files #### How to verify it 1. Generate port configuration: ```bash sonic-cfggen -H -k Mellanox-SN4600C-D24C52 --preset t1 > /etc/sonic/config_db.json ``` 2. Generate QoS configuration: ```bash config qos clear config qos reload --no-dynamic-buffer config save -y ```
- Loading branch information
Showing
11 changed files
with
1,030 additions
and
0 deletions.
There are no files selected for viewing
1 change: 1 addition & 0 deletions
1
device/mellanox/x86_64-mlnx_msn4600c-r0/Mellanox-SN4600C-D24C52/buffers.json.j2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
../ACS-MSN4600C/buffers.json.j2 |
1 change: 1 addition & 0 deletions
1
device/mellanox/x86_64-mlnx_msn4600c-r0/Mellanox-SN4600C-D24C52/buffers_defaults_objects.j2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
../../x86_64-mlnx_msn2700-r0/Mellanox-SN2700-D48C8/buffers_defaults_objects.j2 |
39 changes: 39 additions & 0 deletions
39
device/mellanox/x86_64-mlnx_msn4600c-r0/Mellanox-SN4600C-D24C52/buffers_defaults_t0.j2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
{# | ||
Copyright (c) 2020-2021 NVIDIA CORPORATION & AFFILIATES. | ||
Apache-2.0 | ||
Licensed under the Apache License, Version 2.0 (the "License"); | ||
you may not use this file except in compliance with the License. | ||
You may obtain a copy of the License at | ||
http://www.apache.org/licenses/LICENSE-2.0 | ||
Unless required by applicable law or agreed to in writing, software | ||
distributed under the License is distributed on an "AS IS" BASIS, | ||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
See the License for the specific language governing permissions and | ||
limitations under the License. | ||
#} | ||
{% set default_cable = '2m' %} | ||
{% set ingress_lossless_pool_size = '57176064' %} | ||
{% set ingress_lossless_pool_xoff = '1099776' %} | ||
{% set egress_lossless_pool_size = '60817392' %} | ||
{% set egress_lossy_pool_size = '57176064' %} | ||
|
||
{% import 'buffers_defaults_objects.j2' as defs with context %} | ||
|
||
{%- macro generate_buffer_pool_and_profiles_with_inactive_ports(port_names_inactive) %} | ||
{{ defs.generate_buffer_pool_and_profiles_with_inactive_ports(port_names_inactive) }} | ||
{%- endmacro %} | ||
|
||
{%- macro generate_profile_lists_with_inactive_ports(port_names_active, port_names_inactive) %} | ||
{{ defs.generate_profile_lists(port_names_active, port_names_inactive) }} | ||
{%- endmacro %} | ||
|
||
{%- macro generate_queue_buffers_with_inactive_ports(port_names_active, port_names_inactive) %} | ||
{{ defs.generate_queue_buffers(port_names_active, port_names_inactive) }} | ||
{%- endmacro %} | ||
|
||
{%- macro generate_pg_profiles_with_inactive_ports(port_names_active, port_names_inactive) %} | ||
{{ defs.generate_pg_profiles(port_names_active, port_names_inactive) }} | ||
{%- endmacro %} |
39 changes: 39 additions & 0 deletions
39
device/mellanox/x86_64-mlnx_msn4600c-r0/Mellanox-SN4600C-D24C52/buffers_defaults_t1.j2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
{# | ||
Copyright (c) 2020-2021 NVIDIA CORPORATION & AFFILIATES. | ||
Apache-2.0 | ||
Licensed under the Apache License, Version 2.0 (the "License"); | ||
you may not use this file except in compliance with the License. | ||
You may obtain a copy of the License at | ||
http://www.apache.org/licenses/LICENSE-2.0 | ||
Unless required by applicable law or agreed to in writing, software | ||
distributed under the License is distributed on an "AS IS" BASIS, | ||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
See the License for the specific language governing permissions and | ||
limitations under the License. | ||
#} | ||
{% set default_cable = '40m' %} | ||
{% set ingress_lossless_pool_size = '57099264' %} | ||
{% set ingress_lossless_pool_xoff = '1176576' %} | ||
{% set egress_lossless_pool_size = '60817392' %} | ||
{% set egress_lossy_pool_size = '57099264' %} | ||
|
||
{% import 'buffers_defaults_objects.j2' as defs with context %} | ||
|
||
{%- macro generate_buffer_pool_and_profiles_with_inactive_ports(port_names_inactive) %} | ||
{{ defs.generate_buffer_pool_and_profiles_with_inactive_ports(port_names_inactive) }} | ||
{%- endmacro %} | ||
|
||
{%- macro generate_profile_lists_with_inactive_ports(port_names_active, port_names_inactive) %} | ||
{{ defs.generate_profile_lists(port_names_active, port_names_inactive) }} | ||
{%- endmacro %} | ||
|
||
{%- macro generate_queue_buffers_with_inactive_ports(port_names_active, port_names_inactive) %} | ||
{{ defs.generate_queue_buffers(port_names_active, port_names_inactive) }} | ||
{%- endmacro %} | ||
|
||
{%- macro generate_pg_profiles_with_inactive_ports(port_names_active, port_names_inactive) %} | ||
{{ defs.generate_pg_profiles(port_names_active, port_names_inactive) }} | ||
{%- endmacro %} |
1 change: 1 addition & 0 deletions
1
device/mellanox/x86_64-mlnx_msn4600c-r0/Mellanox-SN4600C-D24C52/buffers_dynamic.json.j2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
../../x86_64-mlnx_msn2700-r0/ACS-MSN2700/buffers_dynamic.json.j2 |
308 changes: 308 additions & 0 deletions
308
device/mellanox/x86_64-mlnx_msn4600c-r0/Mellanox-SN4600C-D24C52/hwsku.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,308 @@ | ||
{ | ||
"interfaces": { | ||
"Ethernet0":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet4":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet8":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet12":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet16":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet20":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet24":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet28":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet32":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "1" | ||
}, | ||
"Ethernet34":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "2" | ||
}, | ||
"Ethernet36":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "1" | ||
}, | ||
"Ethernet38":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "2" | ||
}, | ||
"Ethernet40":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "1" | ||
}, | ||
"Ethernet42":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "2" | ||
}, | ||
"Ethernet44":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "1" | ||
}, | ||
"Ethernet46":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "2" | ||
}, | ||
"Ethernet48":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet52":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet56":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet60":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet64":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet68":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet72":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet76":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet80":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet84":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet88":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet92":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet96":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet100":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet104":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "1" | ||
}, | ||
"Ethernet106":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "2" | ||
}, | ||
"Ethernet108":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "1" | ||
}, | ||
"Ethernet110":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "2" | ||
}, | ||
"Ethernet112":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet116":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet120":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet124":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet128":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet132":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet136":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet140":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet144":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet148":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet152":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet156":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet160":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet164":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet168":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet172":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet176":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "1" | ||
}, | ||
"Ethernet178":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "2" | ||
}, | ||
"Ethernet180":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "1" | ||
}, | ||
"Ethernet182":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "2" | ||
}, | ||
"Ethernet184":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "1" | ||
}, | ||
"Ethernet186":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "2" | ||
}, | ||
"Ethernet188":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "1" | ||
}, | ||
"Ethernet190":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "2" | ||
}, | ||
"Ethernet192":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet196":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet200":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet204":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet208":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet212":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet216":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet220":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet224":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet228":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet232":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet236":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet240":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "1" | ||
}, | ||
"Ethernet242":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "2" | ||
}, | ||
"Ethernet244":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "1" | ||
}, | ||
"Ethernet246":{ | ||
"default_brkout_mode": "2x50G[25G,10G,1G]", | ||
"subport": "2" | ||
}, | ||
"Ethernet248":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
}, | ||
"Ethernet252":{ | ||
"default_brkout_mode": "1x100G[50G,40G,25G,10G,1G]", | ||
"subport": "0" | ||
} | ||
} | ||
} |
Oops, something went wrong.