diff --git a/device/mellanox/x86_64-nvidia_sn5600-r0/ACS-SN5600/buffers_defaults_t0.j2 b/device/mellanox/x86_64-nvidia_sn5600-r0/ACS-SN5600/buffers_defaults_t0.j2 index b03bcf004505..0b414500d79b 100644 --- a/device/mellanox/x86_64-nvidia_sn5600-r0/ACS-SN5600/buffers_defaults_t0.j2 +++ b/device/mellanox/x86_64-nvidia_sn5600-r0/ACS-SN5600/buffers_defaults_t0.j2 @@ -1,5 +1,5 @@ {# - Copyright (c) 2021-2022 NVIDIA CORPORATION & AFFILIATES. + Copyright (c) 2021-2024 NVIDIA CORPORATION & AFFILIATES. Apache-2.0 Licensed under the Apache License, Version 2.0 (the "License"); @@ -20,109 +20,20 @@ {% set egress_lossless_pool_size = '158229504' %} {% set egress_lossy_pool_size = '67737959' %} -{%- 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 %} +{% import 'buffers_defaults_objects.j2' as defs with context %} -{%- macro generate_buffer_pool_and_profiles() %} - "BUFFER_POOL": { - "ingress_lossless_pool": { - {%- if dynamic_mode is not defined %} - "size": "{{ ingress_lossless_pool_size }}", - {%- endif %} - "type": "ingress", - "mode": "dynamic" - }, - "ingress_lossy_pool": { - {%- if dynamic_mode is not defined %} - "size": "{{ ingress_lossy_pool_size }}", - {%- endif %} - "type": "ingress", - "mode": "dynamic" - }, - "egress_lossless_pool": { - "size": "{{ egress_lossless_pool_size }}", - "type": "egress", - "mode": "dynamic" - }, - "egress_lossy_pool": { - {%- if dynamic_mode is not defined %} - "size": "{{ egress_lossy_pool_size }}", - {%- endif %} - "type": "egress", - "mode": "dynamic" - } - }, - "BUFFER_PROFILE": { - "ingress_lossless_profile": { - "pool":"ingress_lossless_pool", - "size":"0", - "dynamic_th":"7" - }, - "ingress_lossy_profile": { - "pool":"ingress_lossy_pool", - "size":"0", - "dynamic_th":"3" - }, - "egress_lossless_profile": { - "pool":"egress_lossless_pool", - "size":"0", - "dynamic_th":"7" - }, - "egress_lossy_profile": { - "pool":"egress_lossy_pool", - "size":"9216", - "dynamic_th":"7" - }, - "q_lossy_profile": { - "pool":"egress_lossy_pool", - "size":"0", - "dynamic_th":"3" - } - }, +{%- 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(port_names) %} - "BUFFER_PORT_INGRESS_PROFILE_LIST": { -{% for port in port_names.split(',') %} - "{{ port }}": { - "profile_list" : "ingress_lossless_profile,ingress_lossy_profile" - }{% if not loop.last %},{% endif %} - -{% endfor %} - }, - "BUFFER_PORT_EGRESS_PROFILE_LIST": { -{% for port in port_names.split(',') %} - "{{ port }}": { - "profile_list" : "egress_lossless_profile,egress_lossy_profile" - }{% if not loop.last %},{% endif %} - -{% endfor %} - } +{%- 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(port_names) %} - "BUFFER_QUEUE": { -{% for port in port_names.split(',') %} - "{{ port }}|3-4": { - "profile" : "egress_lossless_profile" - }, -{% endfor %} -{% for port in port_names.split(',') %} - "{{ port }}|0-2": { - "profile" : "q_lossy_profile" - }, -{% endfor %} -{% for port in port_names.split(',') %} - "{{ port }}|5-6": { - "profile" : "q_lossy_profile" - }{% if not loop.last %},{% endif %} - -{% endfor %} - } +{%- 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 %} diff --git a/device/mellanox/x86_64-nvidia_sn5600-r0/ACS-SN5600/buffers_defaults_t1.j2 b/device/mellanox/x86_64-nvidia_sn5600-r0/ACS-SN5600/buffers_defaults_t1.j2 index 374c23fd8ddc..16214dab4f4d 100644 --- a/device/mellanox/x86_64-nvidia_sn5600-r0/ACS-SN5600/buffers_defaults_t1.j2 +++ b/device/mellanox/x86_64-nvidia_sn5600-r0/ACS-SN5600/buffers_defaults_t1.j2 @@ -1,5 +1,5 @@ {# - Copyright (c) 2021-2022 NVIDIA CORPORATION & AFFILIATES. + Copyright (c) 2021-2024 NVIDIA CORPORATION & AFFILIATES. Apache-2.0 Licensed under the Apache License, Version 2.0 (the "License"); @@ -20,109 +20,20 @@ {% set egress_lossless_pool_size = '158229504' %} {% set egress_lossy_pool_size = '52161690' %} -{%- 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 %} +{% import 'buffers_defaults_objects.j2' as defs with context %} -{%- macro generate_buffer_pool_and_profiles() %} - "BUFFER_POOL": { - "ingress_lossless_pool": { - {%- if dynamic_mode is not defined %} - "size": "{{ ingress_lossless_pool_size }}", - {%- endif %} - "type": "ingress", - "mode": "dynamic" - }, - "ingress_lossy_pool": { - {%- if dynamic_mode is not defined %} - "size": "{{ ingress_lossy_pool_size }}", - {%- endif %} - "type": "ingress", - "mode": "dynamic" - }, - "egress_lossless_pool": { - "size": "{{ egress_lossless_pool_size }}", - "type": "egress", - "mode": "dynamic" - }, - "egress_lossy_pool": { - {%- if dynamic_mode is not defined %} - "size": "{{ egress_lossy_pool_size }}", - {%- endif %} - "type": "egress", - "mode": "dynamic" - } - }, - "BUFFER_PROFILE": { - "ingress_lossless_profile": { - "pool":"ingress_lossless_pool", - "size":"0", - "dynamic_th":"7" - }, - "ingress_lossy_profile": { - "pool":"ingress_lossy_pool", - "size":"0", - "dynamic_th":"3" - }, - "egress_lossless_profile": { - "pool":"egress_lossless_pool", - "size":"0", - "dynamic_th":"7" - }, - "egress_lossy_profile": { - "pool":"egress_lossy_pool", - "size":"9216", - "dynamic_th":"7" - }, - "q_lossy_profile": { - "pool":"egress_lossy_pool", - "size":"0", - "dynamic_th":"3" - } - }, +{%- 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(port_names) %} - "BUFFER_PORT_INGRESS_PROFILE_LIST": { -{% for port in port_names.split(',') %} - "{{ port }}": { - "profile_list" : "ingress_lossless_profile,ingress_lossy_profile" - }{% if not loop.last %},{% endif %} - -{% endfor %} - }, - "BUFFER_PORT_EGRESS_PROFILE_LIST": { -{% for port in port_names.split(',') %} - "{{ port }}": { - "profile_list" : "egress_lossless_profile,egress_lossy_profile" - }{% if not loop.last %},{% endif %} - -{% endfor %} - } +{%- 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(port_names) %} - "BUFFER_QUEUE": { -{% for port in port_names.split(',') %} - "{{ port }}|3-4": { - "profile" : "egress_lossless_profile" - }, -{% endfor %} -{% for port in port_names.split(',') %} - "{{ port }}|0-2": { - "profile" : "q_lossy_profile" - }, -{% endfor %} -{% for port in port_names.split(',') %} - "{{ port }}|5-6": { - "profile" : "q_lossy_profile" - }{% if not loop.last %},{% endif %} - -{% endfor %} - } +{%- 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 %} diff --git a/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/buffers.json.j2 b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/buffers.json.j2 new file mode 120000 index 000000000000..add8bf8bb7c2 --- /dev/null +++ b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/buffers.json.j2 @@ -0,0 +1 @@ +../../x86_64-mlnx_msn2700-r0/ACS-MSN2700/buffers.json.j2 \ No newline at end of file diff --git a/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/buffers_defaults_objects.j2 b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/buffers_defaults_objects.j2 new file mode 120000 index 000000000000..33b6704f9902 --- /dev/null +++ b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/buffers_defaults_objects.j2 @@ -0,0 +1 @@ +../../x86_64-mlnx_msn2700-r0/ACS-MSN2700/buffers_defaults_objects.j2 \ No newline at end of file diff --git a/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/buffers_defaults_t0.j2 b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/buffers_defaults_t0.j2 new file mode 120000 index 000000000000..6e43fd4f6622 --- /dev/null +++ b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/buffers_defaults_t0.j2 @@ -0,0 +1 @@ +../ACS-SN5600/buffers_defaults_t0.j2 \ No newline at end of file diff --git a/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/buffers_defaults_t1.j2 b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/buffers_defaults_t1.j2 new file mode 120000 index 000000000000..601a262149d4 --- /dev/null +++ b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/buffers_defaults_t1.j2 @@ -0,0 +1 @@ +../ACS-SN5600/buffers_defaults_t1.j2 \ No newline at end of file diff --git a/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/buffers_dynamic.json.j2 b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/buffers_dynamic.json.j2 new file mode 100644 index 000000000000..b2cc958b7c45 --- /dev/null +++ b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/buffers_dynamic.json.j2 @@ -0,0 +1,16 @@ +{# + Copyright (c) 2024 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_topo = 't0' %} +{%- set dynamic_mode = 'true' %} +{%- include 'buffers_config.j2' %} diff --git a/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/create_only_config_db_buffers.json b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/create_only_config_db_buffers.json new file mode 100644 index 000000000000..6feb156714fe --- /dev/null +++ b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/create_only_config_db_buffers.json @@ -0,0 +1,7 @@ +{ + "DEVICE_METADATA": { + "localhost": { + "create_only_config_db_buffers": "true" + } + } +} diff --git a/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/hwsku.json b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/hwsku.json new file mode 100644 index 000000000000..52088a40302f --- /dev/null +++ b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/hwsku.json @@ -0,0 +1,391 @@ +{ + "interfaces": { + "Ethernet0": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet4": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet8": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet12": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet16": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet20": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet24": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet28": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet32": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet36": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet40": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet44": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet48": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet52": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet56": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet60": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet64": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet68": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet72": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet76": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet80": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet84": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet88": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet92": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet96": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet100": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet104": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet108": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet112": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet116": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet120": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet124": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet128": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet132": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet136": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet140": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet144": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet148": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet152": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet156": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet160": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet164": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet168": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet172": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet176": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet180": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet184": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet188": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet192": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet196": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet200": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet204": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet208": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet212": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet216": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet220": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet224": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet228": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet232": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet236": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet240": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet244": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet248": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet252": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet256": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet260": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet264": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet268": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet272": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet276": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet280": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet284": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet288": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet292": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet296": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet300": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet304": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet308": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet312": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet316": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet320": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet324": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet328": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet332": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet336": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet340": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet344": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet348": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet352": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet356": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet360": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet364": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet368": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet372": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet376": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet380": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet384": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet388": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet392": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet396": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet400": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet404": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet408": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet412": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet416": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet420": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet424": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet428": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet432": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet436": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet440": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet444": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet448": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet452": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet456": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet460": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet464": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet468": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet472": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet476": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet480": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet484": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet488": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet492": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet496": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet500": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet504": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet508": { + "default_brkout_mode": "2x400G[200G,100G,50G,40G,25G,10G]" + }, + "Ethernet512": { + "default_brkout_mode": "1x25G(1)[10G]" + } + } +} diff --git a/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/pg_profile_lookup.ini b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/pg_profile_lookup.ini new file mode 120000 index 000000000000..36462db80105 --- /dev/null +++ b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/pg_profile_lookup.ini @@ -0,0 +1 @@ +../ACS-SN5600/pg_profile_lookup.ini \ No newline at end of file diff --git a/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/port_config.ini b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/port_config.ini new file mode 100644 index 000000000000..bf437af13a6d --- /dev/null +++ b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/port_config.ini @@ -0,0 +1,147 @@ +## +## Copyright (c) 2024 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. +## + +# name lanes alias index speed fec +Ethernet0 0,1,2,3 etp1a 1 400000 rs +Ethernet4 4,5,6,7 etp1b 1 400000 rs +Ethernet8 8,9,10,11 etp2a 2 400000 rs +Ethernet12 12,13,14,15 etp2b 2 400000 rs +Ethernet16 16,17,18,19 etp3a 3 400000 rs +Ethernet20 20,21,22,23 etp3b 3 400000 rs +Ethernet24 24,25,26,27 etp4a 4 400000 rs +Ethernet28 28,29,30,31 etp4b 4 400000 rs +Ethernet32 32,33,34,35 etp5a 5 400000 rs +Ethernet36 36,37,38,39 etp5b 5 400000 rs +Ethernet40 40,41,42,43 etp6a 6 400000 rs +Ethernet44 44,45,46,47 etp6b 6 400000 rs +Ethernet48 48,49,50,51 etp7a 7 400000 rs +Ethernet52 52,53,54,55 etp7b 7 400000 rs +Ethernet56 56,57,58,59 etp8a 8 400000 rs +Ethernet60 60,61,62,63 etp8b 8 400000 rs +Ethernet64 64,65,66,67 etp9a 9 400000 rs +Ethernet68 68,69,70,71 etp9b 9 400000 rs +Ethernet72 72,73,74,75 etp10a 10 400000 rs +Ethernet76 76,77,78,79 etp10b 10 400000 rs +Ethernet80 80,81,82,83 etp11a 11 400000 rs +Ethernet84 84,85,86,87 etp11b 11 400000 rs +Ethernet88 88,89,90,91 etp12a 12 400000 rs +Ethernet92 92,93,94,95 etp12b 12 400000 rs +Ethernet96 96,97,98,99 etp13a 13 400000 rs +Ethernet100 100,101,102,103 etp13b 13 400000 rs +Ethernet104 104,105,106,107 etp14a 14 400000 rs +Ethernet108 108,109,110,111 etp14b 14 400000 rs +Ethernet112 112,113,114,115 etp15a 15 400000 rs +Ethernet116 116,117,118,119 etp15b 15 400000 rs +Ethernet120 120,121,122,123 etp16a 16 400000 rs +Ethernet124 124,125,126,127 etp16b 16 400000 rs +Ethernet128 128,129,130,131 etp17a 17 400000 rs +Ethernet132 132,133,134,135 etp17b 17 400000 rs +Ethernet136 136,137,138,139 etp18a 18 400000 rs +Ethernet140 140,141,142,143 etp18b 18 400000 rs +Ethernet144 144,145,146,147 etp19a 19 400000 rs +Ethernet148 148,149,150,151 etp19b 19 400000 rs +Ethernet152 152,153,154,155 etp20a 20 400000 rs +Ethernet156 156,157,158,159 etp20b 20 400000 rs +Ethernet160 160,161,162,163 etp21a 21 400000 rs +Ethernet164 164,165,166,167 etp21b 21 400000 rs +Ethernet168 168,169,170,171 etp22a 22 400000 rs +Ethernet172 172,173,174,175 etp22b 22 400000 rs +Ethernet176 176,177,178,179 etp23a 23 400000 rs +Ethernet180 180,181,182,183 etp23b 23 400000 rs +Ethernet184 184,185,186,187 etp24a 24 400000 rs +Ethernet188 188,189,190,191 etp24b 24 400000 rs +Ethernet192 192,193,194,195 etp25a 25 400000 rs +Ethernet196 196,197,198,199 etp25b 25 400000 rs +Ethernet200 200,201,202,203 etp26a 26 400000 rs +Ethernet204 204,205,206,207 etp26b 26 400000 rs +Ethernet208 208,209,210,211 etp27a 27 400000 rs +Ethernet212 212,213,214,215 etp27b 27 400000 rs +Ethernet216 216,217,218,219 etp28a 28 400000 rs +Ethernet220 220,221,222,223 etp28b 28 400000 rs +Ethernet224 224,225,226,227 etp29a 29 400000 rs +Ethernet228 228,229,230,231 etp29b 29 400000 rs +Ethernet232 232,233,234,235 etp30a 30 400000 rs +Ethernet236 236,237,238,239 etp30b 30 400000 rs +Ethernet240 240,241,242,243 etp31a 31 400000 rs +Ethernet244 244,245,246,247 etp31b 31 400000 rs +Ethernet248 248,249,250,251 etp32a 32 400000 rs +Ethernet252 252,253,254,255 etp32b 32 400000 rs +Ethernet256 256,257,258,259 etp33a 33 400000 rs +Ethernet260 260,261,262,263 etp33b 33 400000 rs +Ethernet264 264,265,266,267 etp34a 34 400000 rs +Ethernet268 268,269,270,271 etp34b 34 400000 rs +Ethernet272 272,273,274,275 etp35a 35 400000 rs +Ethernet276 276,277,278,279 etp35b 35 400000 rs +Ethernet280 280,281,282,283 etp36a 36 400000 rs +Ethernet284 284,285,286,287 etp36b 36 400000 rs +Ethernet288 288,289,290,291 etp37a 37 400000 rs +Ethernet292 292,293,294,295 etp37b 37 400000 rs +Ethernet296 296,297,298,299 etp38a 38 400000 rs +Ethernet300 300,301,302,303 etp38b 38 400000 rs +Ethernet304 304,305,306,307 etp39a 39 400000 rs +Ethernet308 308,309,310,311 etp39b 39 400000 rs +Ethernet312 312,313,314,315 etp40a 40 400000 rs +Ethernet316 316,317,318,319 etp40b 40 400000 rs +Ethernet320 320,321,322,323 etp41a 41 400000 rs +Ethernet324 324,325,326,327 etp41b 41 400000 rs +Ethernet328 328,329,330,331 etp42a 42 400000 rs +Ethernet332 332,333,334,335 etp42b 42 400000 rs +Ethernet336 336,337,338,339 etp43a 43 400000 rs +Ethernet340 340,341,342,343 etp43b 43 400000 rs +Ethernet344 344,345,346,347 etp44a 44 400000 rs +Ethernet348 348,349,350,351 etp44b 44 400000 rs +Ethernet352 352,353,354,355 etp45a 45 400000 rs +Ethernet356 356,357,358,359 etp45b 45 400000 rs +Ethernet360 360,361,362,363 etp46a 46 400000 rs +Ethernet364 364,365,366,367 etp46b 46 400000 rs +Ethernet368 368,369,370,371 etp47a 47 400000 rs +Ethernet372 372,373,374,375 etp47b 47 400000 rs +Ethernet376 376,377,378,379 etp48a 48 400000 rs +Ethernet380 380,381,382,383 etp48b 48 400000 rs +Ethernet384 384,385,386,387 etp49a 49 400000 rs +Ethernet388 388,389,390,391 etp49b 49 400000 rs +Ethernet392 392,393,394,395 etp50a 50 400000 rs +Ethernet396 396,397,398,399 etp50b 50 400000 rs +Ethernet400 400,401,402,403 etp51a 51 400000 rs +Ethernet404 404,405,406,407 etp51b 51 400000 rs +Ethernet408 408,409,410,411 etp52a 52 400000 rs +Ethernet412 412,413,414,415 etp52b 52 400000 rs +Ethernet416 416,417,418,419 etp53a 53 400000 rs +Ethernet420 420,421,422,423 etp53b 53 400000 rs +Ethernet424 424,425,426,427 etp54a 54 400000 rs +Ethernet428 428,429,430,431 etp54b 54 400000 rs +Ethernet432 432,433,434,435 etp55a 55 400000 rs +Ethernet436 436,437,438,439 etp55b 55 400000 rs +Ethernet440 440,441,442,443 etp56a 56 400000 rs +Ethernet444 444,445,446,447 etp56b 56 400000 rs +Ethernet448 448,449,450,451 etp57a 57 400000 rs +Ethernet452 452,453,454,455 etp57b 57 400000 rs +Ethernet456 456,457,458,459 etp58a 58 400000 rs +Ethernet460 460,461,462,463 etp58b 58 400000 rs +Ethernet464 464,465,466,467 etp59a 59 400000 rs +Ethernet468 468,469,470,471 etp59b 59 400000 rs +Ethernet472 472,473,474,475 etp60a 60 400000 rs +Ethernet476 476,477,478,479 etp60b 60 400000 rs +Ethernet480 480,481,482,483 etp61a 61 400000 rs +Ethernet484 484,485,486,487 etp61b 61 400000 rs +Ethernet488 488,489,490,491 etp62a 62 400000 rs +Ethernet492 492,493,494,495 etp62b 62 400000 rs +Ethernet496 496,497,498,499 etp63a 63 400000 rs +Ethernet500 500,501,502,503 etp63b 63 400000 rs +Ethernet504 504,505,506,507 etp64a 64 400000 rs +Ethernet508 508,509,510,511 etp64b 64 400000 rs +Ethernet512 512 etp65 65 25000 diff --git a/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/qos.json.j2 b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/qos.json.j2 new file mode 120000 index 000000000000..eccf286dc879 --- /dev/null +++ b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/qos.json.j2 @@ -0,0 +1 @@ +../../x86_64-mlnx_msn2700-r0/ACS-MSN2700/qos.json.j2 \ No newline at end of file diff --git a/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/sai.profile b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/sai.profile new file mode 100644 index 000000000000..a362513c8dd5 --- /dev/null +++ b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/sai.profile @@ -0,0 +1 @@ +SAI_INIT_CONFIG_FILE=/usr/share/sonic/hwsku/sai_sn5600_128x400g_1x25g.xml diff --git a/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/sai_sn5600_128x400g_1x25g.xml b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/sai_sn5600_128x400g_1x25g.xml new file mode 100644 index 000000000000..97656c1d5100 --- /dev/null +++ b/device/mellanox/x86_64-nvidia_sn5600-r0/Mellanox-SN5600-O128/sai_sn5600_128x400g_1x25g.xml @@ -0,0 +1,495 @@ + + + + + + 00:02:03:04:05:00 + + + 1 + + + 65 + + + 1 + + + + + 1 + 8 + 34 + + + 1 + + + 32768 + 2 + + 5 + 8 + 35 + 1 + 32768 + 2 + + 9 + 8 + 33 + 1 + 32768 + 2 + + 13 + 8 + 32 + 1 + 32768 + 2 + + 17 + 8 + 38 + 1 + 32768 + 2 + + 21 + 8 + 39 + 1 + 32768 + 2 + + 25 + 8 + 37 + 1 + 32768 + 2 + + 29 + 8 + 36 + 1 + 32768 + 2 + + 33 + 8 + 42 + 1 + 32768 + 2 + + 37 + 8 + 43 + 1 + 32768 + 2 + + 41 + 8 + 41 + 1 + 32768 + 2 + + 45 + 8 + 40 + 1 + 32768 + 2 + + 49 + 8 + 46 + 1 + 32768 + 2 + + 53 + 8 + 47 + 1 + 32768 + 2 + + 57 + 8 + 45 + 1 + 32768 + 2 + + 61 + 8 + 44 + 1 + 32768 + 2 + + 65 + 8 + 51 + 1 + 32768 + 2 + + 69 + 8 + 50 + 1 + 32768 + 2 + + 73 + 8 + 48 + 1 + 32768 + 2 + + 77 + 8 + 49 + 1 + 32768 + 2 + + 81 + 8 + 55 + 1 + 32768 + 2 + + 85 + 8 + 54 + 1 + 32768 + 2 + + 89 + 8 + 52 + 1 + 32768 + 2 + + 93 + 8 + 53 + 1 + 32768 + 2 + + 97 + 8 + 59 + 1 + 32768 + 2 + + 101 + 8 + 58 + 1 + 32768 + 2 + + 105 + 8 + 56 + 1 + 32768 + 2 + + 109 + 8 + 57 + 1 + 32768 + 2 + + 113 + 8 + 63 + 1 + 32768 + 2 + + 117 + 8 + 62 + 1 + 32768 + 2 + + 121 + 8 + 60 + 1 + 32768 + 2 + + 125 + 8 + 61 + 1 + 32768 + 2 + + 129 + 8 + 29 + 1 + 32768 + 2 + + 133 + 8 + 28 + 1 + 32768 + 2 + + 137 + 8 + 30 + 1 + 32768 + 2 + + 141 + 8 + 31 + 1 + 32768 + 2 + + 145 + 8 + 25 + 1 + 32768 + 2 + + 149 + 8 + 24 + 1 + 32768 + 2 + + 153 + 8 + 26 + 1 + 32768 + 2 + + 157 + 8 + 27 + 1 + 32768 + 2 + + 161 + 8 + 21 + 1 + 32768 + 2 + + 165 + 8 + 20 + 1 + 32768 + 2 + + 169 + 8 + 22 + 1 + 32768 + 2 + + 173 + 8 + 23 + 1 + 32768 + 2 + + 177 + 8 + 17 + 1 + 32768 + 2 + + 181 + 8 + 16 + 1 + 32768 + 2 + + 185 + 8 + 18 + 1 + 32768 + 2 + + 189 + 8 + 19 + 1 + 32768 + 2 + + 193 + 8 + 12 + 1 + 32768 + 2 + + 197 + 8 + 13 + 1 + 32768 + 2 + + 201 + 8 + 15 + 1 + 32768 + 2 + + 205 + 8 + 14 + 1 + 32768 + 2 + + 209 + 8 + 8 + 1 + 32768 + 2 + + 213 + 8 + 9 + 1 + 32768 + 2 + + 217 + 8 + 11 + 1 + 32768 + 2 + + 221 + 8 + 10 + 1 + 32768 + 2 + + 225 + 8 + 4 + 1 + 32768 + 2 + + 229 + 8 + 5 + 1 + 32768 + 2 + + 233 + 8 + 7 + 1 + 32768 + 2 + + 237 + 8 + 6 + 1 + 32768 + 2 + + 241 + 8 + 0 + 1 + 32768 + 2 + + 245 + 8 + 1 + 1 + 32768 + 2 + + 249 + 8 + 3 + 1 + 32768 + 2 + + 253 + 8 + 2 + 1 + 32768 + 2 + + 257 + 1 + 64 + 0 + 64 + + + +