{% set default_cable = '5m' %} {% set ingress_lossless_pool_size = '50995200' %} {% set ingress_lossless_xoff_size = '1810432' %} {% set egress_lossless_pool_size = '60817392' %} {% set egress_lossy_pool_size = '50995200' %} {%- 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": { {%- if dynamic_mode is not defined %} "size": "{{ ingress_lossless_pool_size }}", "xoff": "{{ ingress_lossless_xoff_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":"[BUFFER_POOL|ingress_lossless_pool]", "size":"0", "dynamic_th":"7" }, "ingress_lossy_profile": { "pool":"[BUFFER_POOL|ingress_lossless_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":"9216", "dynamic_th":"7" }, "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": { {% for port in port_names.split(',') %} "{{ port }}": { "profile_list" : "[BUFFER_PROFILE|ingress_lossless_profile]" }{% if not loop.last %},{% endif %} {% endfor %} }, "BUFFER_PORT_EGRESS_PROFILE_LIST": { {% for port in port_names.split(',') %} "{{ port }}": { "profile_list" : "[BUFFER_PROFILE|egress_lossless_profile],[BUFFER_PROFILE|egress_lossy_profile]" }{% if not loop.last %},{% endif %} {% endfor %} } {%- endmacro %} {%- macro generate_queue_buffers(port_names) %} "BUFFER_QUEUE": { {% for port in port_names.split(',') %} "{{ port }}|3-4": { "profile" : "[BUFFER_PROFILE|egress_lossless_profile]" }, {% endfor %} {% for port in port_names.split(',') %} "{{ port }}|0-2": { "profile" : "[BUFFER_PROFILE|q_lossy_profile]" }, {% endfor %} {% for port in port_names.split(',') %} "{{ port }}|5-6": { "profile" : "[BUFFER_PROFILE|q_lossy_profile]" }{% if not loop.last %},{% endif %} {% endfor %} } {%- endmacro %}