diff --git a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/buffers.json.j2 b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/buffers.json.j2 index 0b1cb2c541..03cd094bc9 100644 --- a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/buffers.json.j2 +++ b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/buffers.json.j2 @@ -1,2 +1,2 @@ -{%- set default_topo = 't1' %} -{%- include 'buffers_config.j2' %} +{%- set default_topo = 't0' %} +{%- include 'buffers_config.j2' %} diff --git a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/buffers_defaults_t0.j2 b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/buffers_defaults_t0.j2 index 77747f6403..29bb64904e 100644 --- a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/buffers_defaults_t0.j2 +++ b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/buffers_defaults_t0.j2 @@ -1,20 +1,57 @@ - -{%- set default_cable = '40m' %} - -{%- macro generate_buffer_pool_and_profiles() %} - "BUFFER_POOL": { - }, - "BUFFER_PROFILE": { - }, -{%- endmacro %} - -{%- macro generate_pg_profils(port_names_active) %} - "BUFFER_PG": { - }, -{%- endmacro %} - -{% macro generate_queue_buffers(port_names_active) %} - "BUFFER_QUEUE": { - } -{% endmacro %} - +{%- set default_cable = '300m' %} + +{%- macro generate_port_lists(PORT_ALL) %} + {# Generate list of ports #} + {%- for port_idx in range(0,12) %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 8)) %}{%- endif %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 2) + 2) %}{%- endif %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 2) + 4) %}{%- endif %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 2) + 6) %}{%- endif %} + {%- endfor %} + {%- for port_idx in range(12,16) %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 8)) %}{%- endif %} + {%- endfor %} + {%- for port_idx in range(16,20) %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 8)) %}{%- endif %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 2) + 2) %}{%- endif %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 2) + 4) %}{%- endif %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 2) + 6) %}{%- endif %} + {%- endfor %} + {%- for port_idx in range(20,32) %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 8)) %}{%- endif %} + {%- endfor %} +{%- endmacro %} + + +{%- macro generate_buffer_pool_and_profiles() %} + "BUFFER_POOL": { + "ingress_lossless_pool": { + "size": "66800476", + "type": "ingress", + "mode": "dynamic", + "xoff": "8644128" + }, + "egress_lossless_pool": { + "size": "66800476", + "type": "egress", + "mode": "static" + } + }, + "BUFFER_PROFILE": { + "ingress_lossy_profile": { + "pool":"[BUFFER_POOL|ingress_lossless_pool]", + "size":"0", + "static_th":"66800476" + }, + "egress_lossless_profile": { + "pool":"[BUFFER_POOL|egress_lossless_pool]", + "size":"0", + "static_th":"67117468" + }, + "egress_lossy_profile": { + "pool":"[BUFFER_POOL|egress_lossless_pool]", + "size":"1778", + "dynamic_th":"1" + } + }, +{%- endmacro %} diff --git a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/buffers_defaults_t1.j2 b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/buffers_defaults_t1.j2 index 77747f6403..29bb64904e 100644 --- a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/buffers_defaults_t1.j2 +++ b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/buffers_defaults_t1.j2 @@ -1,20 +1,57 @@ - -{%- set default_cable = '40m' %} - -{%- macro generate_buffer_pool_and_profiles() %} - "BUFFER_POOL": { - }, - "BUFFER_PROFILE": { - }, -{%- endmacro %} - -{%- macro generate_pg_profils(port_names_active) %} - "BUFFER_PG": { - }, -{%- endmacro %} - -{% macro generate_queue_buffers(port_names_active) %} - "BUFFER_QUEUE": { - } -{% endmacro %} - +{%- set default_cable = '300m' %} + +{%- macro generate_port_lists(PORT_ALL) %} + {# Generate list of ports #} + {%- for port_idx in range(0,12) %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 8)) %}{%- endif %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 2) + 2) %}{%- endif %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 2) + 4) %}{%- endif %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 2) + 6) %}{%- endif %} + {%- endfor %} + {%- for port_idx in range(12,16) %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 8)) %}{%- endif %} + {%- endfor %} + {%- for port_idx in range(16,20) %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 8)) %}{%- endif %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 2) + 2) %}{%- endif %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 2) + 4) %}{%- endif %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 2) + 6) %}{%- endif %} + {%- endfor %} + {%- for port_idx in range(20,32) %} + {%- if PORT_ALL.append("Ethernet%d" % (port_idx * 8)) %}{%- endif %} + {%- endfor %} +{%- endmacro %} + + +{%- macro generate_buffer_pool_and_profiles() %} + "BUFFER_POOL": { + "ingress_lossless_pool": { + "size": "66800476", + "type": "ingress", + "mode": "dynamic", + "xoff": "8644128" + }, + "egress_lossless_pool": { + "size": "66800476", + "type": "egress", + "mode": "static" + } + }, + "BUFFER_PROFILE": { + "ingress_lossy_profile": { + "pool":"[BUFFER_POOL|ingress_lossless_pool]", + "size":"0", + "static_th":"66800476" + }, + "egress_lossless_profile": { + "pool":"[BUFFER_POOL|egress_lossless_pool]", + "size":"0", + "static_th":"67117468" + }, + "egress_lossy_profile": { + "pool":"[BUFFER_POOL|egress_lossless_pool]", + "size":"1778", + "dynamic_th":"1" + } + }, +{%- endmacro %} diff --git a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/pg_profile_lookup.ini b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/pg_profile_lookup.ini index a5f3286bee..b8bb10af96 100644 --- a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/pg_profile_lookup.ini +++ b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/pg_profile_lookup.ini @@ -1,23 +1,12 @@ -# PG lossless profiles. -# speed cable size xon xoff threshold xon_offset - 10000 5m 1270 0 190500 -2 2540 - 25000 5m 1270 0 190500 -2 2540 - 40000 5m 1270 0 190500 -2 2540 - 50000 5m 1270 0 190500 -2 2540 - 100000 5m 1270 0 190500 -2 2540 - 200000 5m 1270 0 190500 -2 2540 - 400000 5m 1270 0 190500 -2 2540 - 10000 40m 1270 0 190500 -2 2540 - 25000 40m 1270 0 190500 -2 2540 - 40000 40m 1270 0 190500 -2 2540 - 50000 40m 1270 0 190500 -2 2540 - 100000 40m 1270 0 190500 -2 2540 - 200000 40m 1270 0 190500 -2 2540 - 400000 40m 1270 0 190500 -2 2540 - 10000 300m 1270 0 190500 -2 2540 - 25000 300m 1270 0 190500 -2 2540 - 40000 300m 1270 0 190500 -2 2540 - 50000 300m 1270 0 190500 -2 2540 - 100000 300m 1270 0 190500 -2 2540 - 200000 300m 1270 0 190500 -2 2540 - 400000 300m 1270 0 190500 -2 2540 +# PG lossless profiles. +# speed cable size xon xoff threshold xon_offset + 100000 5m 2540 2540 68580 -2 2540 + 100000 40m 2540 2540 74422 -2 2540 + 100000 300m 2540 2540 117348 -2 2540 + 100000 1000m 2540 2540 233172 -2 2540 + 100000 2000m 2540 2540 398526 -2 2540 + 400000 5m 2540 2540 35776 -2 2540 + 400000 40m 2540 2540 53248 -2 2540 + 400000 300m 2540 2540 66560 -2 2540 + 400000 1000m 2540 2540 79872 -2 2540 + 400000 2000m 2540 2540 54528 -2 2540 diff --git a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/qos.json.j2 b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/qos.json.j2 index a48e1b5662..3e548325ea 100644 --- a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/qos.json.j2 +++ b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/qos.json.j2 @@ -1,226 +1 @@ -{%- set PORT_ALL = [] %} -{%- for port in PORT %} - {%- if PORT_ALL.append(port) %}{% endif %} -{%- endfor %} -{%- if PORT_ALL | sort_by_port_index %}{% endif %} - -{%- set port_names_list_all = [] %} -{%- for port in PORT_ALL %} - {%- if port_names_list_all.append(port) %}{% endif %} -{%- endfor %} -{%- set port_names_all = port_names_list_all | join(',') -%} - - -{%- set PORT_ACTIVE = [] %} -{%- if DEVICE_NEIGHBOR is not defined %} - {%- set PORT_ACTIVE = PORT_ALL %} -{%- else %} - {%- for port in DEVICE_NEIGHBOR.keys() %} - {%- if PORT_ACTIVE.append(port) %}{%- endif %} - {%- endfor %} -{%- endif %} -{%- if PORT_ACTIVE | sort_by_port_index %}{% endif %} - -{%- set port_names_list_active = [] %} -{%- for port in PORT_ACTIVE %} - {%- if port_names_list_active.append(port) %}{%- endif %} -{%- endfor %} -{%- set port_names_active = port_names_list_active | join(',') -%} - - -{%- set pfc_to_pg_map_supported_asics = ['mellanox', 'barefoot', 'marvell'] -%} - - -{ -{% if generate_tc_to_pg_map is defined %} - {{- generate_tc_to_pg_map() }} -{% else %} - "TC_TO_PRIORITY_GROUP_MAP": { - "DEFAULT": { - "0": "0", - "1": "0", - "2": "0", - "3": "3", - "4": "4", - "5": "0", - "6": "0", - "7": "7" - } - }, -{% endif %} - "MAP_PFC_PRIORITY_TO_QUEUE": { - "DEFAULT": { - "0": "0", - "1": "1", - "2": "2", - "3": "3", - "4": "4", - "5": "5", - "6": "6", - "7": "7" - } - }, - "TC_TO_QUEUE_MAP": { - "DEFAULT": { - "0": "0", - "1": "1", - "2": "2", - "3": "3", - "4": "4", - "5": "5", - "6": "6", - "7": "7" - } - }, - "DSCP_TO_TC_MAP": { - "DEFAULT": { - "0" : "0", - "1" : "0", - "2" : "0", - "3" : "0", - "4" : "0", - "5" : "0", - "6" : "0", - "7" : "0", - "8" : "0", - "9" : "0", - "10": "0", - "11": "0", - "12": "0", - "13": "0", - "14": "0", - "15": "0", - "16": "0", - "17": "0", - "18": "0", - "19": "0", - "20": "0", - "21": "0", - "22": "0", - "23": "0", - "24": "0", - "25": "0", - "26": "0", - "27": "0", - "28": "0", - "29": "0", - "30": "0", - "31": "0", - "32": "0", - "33": "0", - "34": "0", - "35": "0", - "36": "0", - "37": "0", - "38": "0", - "39": "0", - "40": "0", - "41": "0", - "42": "0", - "43": "0", - "44": "0", - "45": "0", - "46": "0", - "47": "0", - "48": "0", - "49": "0", - "50": "0", - "51": "0", - "52": "0", - "53": "0", - "54": "0", - "55": "0", - "56": "0", - "57": "0", - "58": "0", - "59": "0", - "60": "0", - "61": "0", - "62": "0", - "63": "0" - } - }, - "SCHEDULER": { - "scheduler.0": { - "type" : "DWRR", - "weight": "1" - }, - "scheduler.1": { - "type" : "DWRR", - "weight": "2" - }, - "scheduler.2": { - "type" : "DWRR", - "weight": "3" - }, - "scheduler.3": { - "type" : "DWRR", - "weight": "4" - }, - "scheduler.4": { - "type" : "DWRR", - "weight": "5" - }, - "scheduler.5": { - "type" : "DWRR", - "weight": "10" - }, - "scheduler.6": { - "type" : "DWRR", - "weight": "25" - }, - "scheduler.7": { - "type" : "STRICT" - } - }, - "PORT_QOS_MAP": { - "{{ port_names_active }}": { - "dscp_to_tc_map" : "[DSCP_TO_TC_MAP|DEFAULT]", - "tc_to_queue_map" : "[TC_TO_QUEUE_MAP|DEFAULT]", - "pfc_enable" : "3,4", - "tc_to_pg_map" : "[TC_TO_PRIORITY_GROUP_MAP|DEFAULT]" - } - }, - "QUEUE": { -{% for port in PORT_ACTIVE %} - "{{ port }}|0": { - "scheduler" : "[SCHEDULER|scheduler.0]" - }, -{% endfor %} -{% for port in PORT_ACTIVE %} - "{{ port }}|1": { - "scheduler" : "[SCHEDULER|scheduler.1]" - }, -{% endfor %} -{% for port in PORT_ACTIVE %} - "{{ port }}|2": { - "scheduler": "[SCHEDULER|scheduler.2]" - }, -{% endfor %} -{% for port in PORT_ACTIVE %} - "{{ port }}|3": { - "scheduler": "[SCHEDULER|scheduler.3]" - }, -{% endfor %} -{% for port in PORT_ACTIVE %} - "{{ port }}|4": { - "scheduler": "[SCHEDULER|scheduler.4]" - }, -{% endfor %} -{% for port in PORT_ACTIVE %} - "{{ port }}|5": { - "scheduler": "[SCHEDULER|scheduler.5]" - }, -{% endfor %} -{% for port in PORT_ACTIVE %} - "{{ port }}|6": { - "scheduler": "[SCHEDULER|scheduler.6]" - }, -{% endfor %} -{% for port in PORT_ACTIVE %} - "{{ port }}|7": { - "scheduler": "[SCHEDULER|scheduler.7]" - }{% if not loop.last %},{% endif %} -{% endfor %} - } -} +{%- include 'qos_config.j2' %} diff --git a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/th3-z9332f-16x400G-64x100G.config.bcm b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/th3-z9332f-16x400G-64x100G.config.bcm index 2fe26e1e26..e450564d17 100644 --- a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/th3-z9332f-16x400G-64x100G.config.bcm +++ b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-M-O16C64/th3-z9332f-16x400G-64x100G.config.bcm @@ -44,6 +44,9 @@ l3_mem_entries=40960 l2xlrn_thread_interval=50000 l2xlrn_intr_en=0 +sai_optimized_mmu=1 +mmu_init_config="TH3-MSFT-T0" + pbmp_xport_xe=0xffffffFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE phy_an_c73=3 diff --git a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/buffers.json.j2 b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/buffers.json.j2 index 0b1cb2c541..dadf74d555 100644 --- a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/buffers.json.j2 +++ b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/buffers.json.j2 @@ -1,2 +1,2 @@ -{%- set default_topo = 't1' %} -{%- include 'buffers_config.j2' %} +{%- set default_topo = 't1' %} +{%- include 'buffers_config.j2' %} diff --git a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/buffers_defaults_t0.j2 b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/buffers_defaults_t0.j2 index 77747f6403..94a40d257f 100644 --- a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/buffers_defaults_t0.j2 +++ b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/buffers_defaults_t0.j2 @@ -1,20 +1,41 @@ - -{%- set default_cable = '40m' %} - -{%- macro generate_buffer_pool_and_profiles() %} - "BUFFER_POOL": { - }, - "BUFFER_PROFILE": { - }, -{%- endmacro %} - -{%- macro generate_pg_profils(port_names_active) %} - "BUFFER_PG": { - }, -{%- endmacro %} - -{% macro generate_queue_buffers(port_names_active) %} - "BUFFER_QUEUE": { - } -{% endmacro %} - +{%- set default_cable = '300m' %} + +{%- 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 * 8)) %}{%- endif %} + {%- endfor %} +{%- endmacro %} + +{%- macro generate_buffer_pool_and_profiles() %} + "BUFFER_POOL": { + "ingress_lossless_pool": { + "size": "66435732", + "type": "ingress", + "mode": "dynamic", + "xoff": "27400374" + }, + "egress_lossless_pool": { + "size": "66435732", + "type": "egress", + "mode": "static" + } + }, + "BUFFER_PROFILE": { + "ingress_lossy_profile": { + "pool":"[BUFFER_POOL|ingress_lossless_pool]", + "size":"0", + "static_th":"66435732" + }, + "egress_lossless_profile": { + "pool":"[BUFFER_POOL|egress_lossless_pool]", + "size":"0", + "static_th":"67117468" + }, + "egress_lossy_profile": { + "pool":"[BUFFER_POOL|egress_lossless_pool]", + "size":"1778", + "dynamic_th":"1" + } + }, +{%- endmacro %} diff --git a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/buffers_defaults_t1.j2 b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/buffers_defaults_t1.j2 index 77747f6403..94a40d257f 100644 --- a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/buffers_defaults_t1.j2 +++ b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/buffers_defaults_t1.j2 @@ -1,20 +1,41 @@ - -{%- set default_cable = '40m' %} - -{%- macro generate_buffer_pool_and_profiles() %} - "BUFFER_POOL": { - }, - "BUFFER_PROFILE": { - }, -{%- endmacro %} - -{%- macro generate_pg_profils(port_names_active) %} - "BUFFER_PG": { - }, -{%- endmacro %} - -{% macro generate_queue_buffers(port_names_active) %} - "BUFFER_QUEUE": { - } -{% endmacro %} - +{%- set default_cable = '300m' %} + +{%- 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 * 8)) %}{%- endif %} + {%- endfor %} +{%- endmacro %} + +{%- macro generate_buffer_pool_and_profiles() %} + "BUFFER_POOL": { + "ingress_lossless_pool": { + "size": "66435732", + "type": "ingress", + "mode": "dynamic", + "xoff": "27400374" + }, + "egress_lossless_pool": { + "size": "66435732", + "type": "egress", + "mode": "static" + } + }, + "BUFFER_PROFILE": { + "ingress_lossy_profile": { + "pool":"[BUFFER_POOL|ingress_lossless_pool]", + "size":"0", + "static_th":"66435732" + }, + "egress_lossless_profile": { + "pool":"[BUFFER_POOL|egress_lossless_pool]", + "size":"0", + "static_th":"67117468" + }, + "egress_lossy_profile": { + "pool":"[BUFFER_POOL|egress_lossless_pool]", + "size":"1778", + "dynamic_th":"1" + } + }, +{%- endmacro %} diff --git a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/pg_profile_lookup.ini b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/pg_profile_lookup.ini index a5f3286bee..b8bb10af96 100644 --- a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/pg_profile_lookup.ini +++ b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/pg_profile_lookup.ini @@ -1,23 +1,12 @@ -# PG lossless profiles. -# speed cable size xon xoff threshold xon_offset - 10000 5m 1270 0 190500 -2 2540 - 25000 5m 1270 0 190500 -2 2540 - 40000 5m 1270 0 190500 -2 2540 - 50000 5m 1270 0 190500 -2 2540 - 100000 5m 1270 0 190500 -2 2540 - 200000 5m 1270 0 190500 -2 2540 - 400000 5m 1270 0 190500 -2 2540 - 10000 40m 1270 0 190500 -2 2540 - 25000 40m 1270 0 190500 -2 2540 - 40000 40m 1270 0 190500 -2 2540 - 50000 40m 1270 0 190500 -2 2540 - 100000 40m 1270 0 190500 -2 2540 - 200000 40m 1270 0 190500 -2 2540 - 400000 40m 1270 0 190500 -2 2540 - 10000 300m 1270 0 190500 -2 2540 - 25000 300m 1270 0 190500 -2 2540 - 40000 300m 1270 0 190500 -2 2540 - 50000 300m 1270 0 190500 -2 2540 - 100000 300m 1270 0 190500 -2 2540 - 200000 300m 1270 0 190500 -2 2540 - 400000 300m 1270 0 190500 -2 2540 +# PG lossless profiles. +# speed cable size xon xoff threshold xon_offset + 100000 5m 2540 2540 68580 -2 2540 + 100000 40m 2540 2540 74422 -2 2540 + 100000 300m 2540 2540 117348 -2 2540 + 100000 1000m 2540 2540 233172 -2 2540 + 100000 2000m 2540 2540 398526 -2 2540 + 400000 5m 2540 2540 35776 -2 2540 + 400000 40m 2540 2540 53248 -2 2540 + 400000 300m 2540 2540 66560 -2 2540 + 400000 1000m 2540 2540 79872 -2 2540 + 400000 2000m 2540 2540 54528 -2 2540 diff --git a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/qos.json.j2 b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/qos.json.j2 index a48e1b5662..3e548325ea 100644 --- a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/qos.json.j2 +++ b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/qos.json.j2 @@ -1,226 +1 @@ -{%- set PORT_ALL = [] %} -{%- for port in PORT %} - {%- if PORT_ALL.append(port) %}{% endif %} -{%- endfor %} -{%- if PORT_ALL | sort_by_port_index %}{% endif %} - -{%- set port_names_list_all = [] %} -{%- for port in PORT_ALL %} - {%- if port_names_list_all.append(port) %}{% endif %} -{%- endfor %} -{%- set port_names_all = port_names_list_all | join(',') -%} - - -{%- set PORT_ACTIVE = [] %} -{%- if DEVICE_NEIGHBOR is not defined %} - {%- set PORT_ACTIVE = PORT_ALL %} -{%- else %} - {%- for port in DEVICE_NEIGHBOR.keys() %} - {%- if PORT_ACTIVE.append(port) %}{%- endif %} - {%- endfor %} -{%- endif %} -{%- if PORT_ACTIVE | sort_by_port_index %}{% endif %} - -{%- set port_names_list_active = [] %} -{%- for port in PORT_ACTIVE %} - {%- if port_names_list_active.append(port) %}{%- endif %} -{%- endfor %} -{%- set port_names_active = port_names_list_active | join(',') -%} - - -{%- set pfc_to_pg_map_supported_asics = ['mellanox', 'barefoot', 'marvell'] -%} - - -{ -{% if generate_tc_to_pg_map is defined %} - {{- generate_tc_to_pg_map() }} -{% else %} - "TC_TO_PRIORITY_GROUP_MAP": { - "DEFAULT": { - "0": "0", - "1": "0", - "2": "0", - "3": "3", - "4": "4", - "5": "0", - "6": "0", - "7": "7" - } - }, -{% endif %} - "MAP_PFC_PRIORITY_TO_QUEUE": { - "DEFAULT": { - "0": "0", - "1": "1", - "2": "2", - "3": "3", - "4": "4", - "5": "5", - "6": "6", - "7": "7" - } - }, - "TC_TO_QUEUE_MAP": { - "DEFAULT": { - "0": "0", - "1": "1", - "2": "2", - "3": "3", - "4": "4", - "5": "5", - "6": "6", - "7": "7" - } - }, - "DSCP_TO_TC_MAP": { - "DEFAULT": { - "0" : "0", - "1" : "0", - "2" : "0", - "3" : "0", - "4" : "0", - "5" : "0", - "6" : "0", - "7" : "0", - "8" : "0", - "9" : "0", - "10": "0", - "11": "0", - "12": "0", - "13": "0", - "14": "0", - "15": "0", - "16": "0", - "17": "0", - "18": "0", - "19": "0", - "20": "0", - "21": "0", - "22": "0", - "23": "0", - "24": "0", - "25": "0", - "26": "0", - "27": "0", - "28": "0", - "29": "0", - "30": "0", - "31": "0", - "32": "0", - "33": "0", - "34": "0", - "35": "0", - "36": "0", - "37": "0", - "38": "0", - "39": "0", - "40": "0", - "41": "0", - "42": "0", - "43": "0", - "44": "0", - "45": "0", - "46": "0", - "47": "0", - "48": "0", - "49": "0", - "50": "0", - "51": "0", - "52": "0", - "53": "0", - "54": "0", - "55": "0", - "56": "0", - "57": "0", - "58": "0", - "59": "0", - "60": "0", - "61": "0", - "62": "0", - "63": "0" - } - }, - "SCHEDULER": { - "scheduler.0": { - "type" : "DWRR", - "weight": "1" - }, - "scheduler.1": { - "type" : "DWRR", - "weight": "2" - }, - "scheduler.2": { - "type" : "DWRR", - "weight": "3" - }, - "scheduler.3": { - "type" : "DWRR", - "weight": "4" - }, - "scheduler.4": { - "type" : "DWRR", - "weight": "5" - }, - "scheduler.5": { - "type" : "DWRR", - "weight": "10" - }, - "scheduler.6": { - "type" : "DWRR", - "weight": "25" - }, - "scheduler.7": { - "type" : "STRICT" - } - }, - "PORT_QOS_MAP": { - "{{ port_names_active }}": { - "dscp_to_tc_map" : "[DSCP_TO_TC_MAP|DEFAULT]", - "tc_to_queue_map" : "[TC_TO_QUEUE_MAP|DEFAULT]", - "pfc_enable" : "3,4", - "tc_to_pg_map" : "[TC_TO_PRIORITY_GROUP_MAP|DEFAULT]" - } - }, - "QUEUE": { -{% for port in PORT_ACTIVE %} - "{{ port }}|0": { - "scheduler" : "[SCHEDULER|scheduler.0]" - }, -{% endfor %} -{% for port in PORT_ACTIVE %} - "{{ port }}|1": { - "scheduler" : "[SCHEDULER|scheduler.1]" - }, -{% endfor %} -{% for port in PORT_ACTIVE %} - "{{ port }}|2": { - "scheduler": "[SCHEDULER|scheduler.2]" - }, -{% endfor %} -{% for port in PORT_ACTIVE %} - "{{ port }}|3": { - "scheduler": "[SCHEDULER|scheduler.3]" - }, -{% endfor %} -{% for port in PORT_ACTIVE %} - "{{ port }}|4": { - "scheduler": "[SCHEDULER|scheduler.4]" - }, -{% endfor %} -{% for port in PORT_ACTIVE %} - "{{ port }}|5": { - "scheduler": "[SCHEDULER|scheduler.5]" - }, -{% endfor %} -{% for port in PORT_ACTIVE %} - "{{ port }}|6": { - "scheduler": "[SCHEDULER|scheduler.6]" - }, -{% endfor %} -{% for port in PORT_ACTIVE %} - "{{ port }}|7": { - "scheduler": "[SCHEDULER|scheduler.7]" - }{% if not loop.last %},{% endif %} -{% endfor %} - } -} +{%- include 'qos_config.j2' %} diff --git a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/th3-z9332f-32x400G.config.bcm b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/th3-z9332f-32x400G.config.bcm index fc6613601f..cf584cee0b 100644 --- a/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/th3-z9332f-32x400G.config.bcm +++ b/device/dell/x86_64-dellemc_z9332f_d1508-r0/DellEMC-Z9332f-O32/th3-z9332f-32x400G.config.bcm @@ -44,6 +44,9 @@ l3_mem_entries=40960 l2xlrn_thread_interval=50000 l2xlrn_intr_en=0 +sai_optimized_mmu=1 +mmu_init_config="TH3-MSFT-T1" + pbmp_xport_xe=0xffffffFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE phy_an_c73=3