6cbdf11e53
Depends on Azure/sonic-utilities#1626 Depends on Azure/sonic-swss#1754 QOS tables in config db used ABNF format i.e "[TABLE_NAME|name] to refer fieldvalue to other qos tables. Example: Config DB: "Ethernet92|3": { "scheduler": "[SCHEDULER|scheduler.1]", "wred_profile": "[WRED_PROFILE|AZURE_LOSSLESS]" }, "Ethernet0|0": { "profile": "[BUFFER_PROFILE|ingress_lossy_profile]" }, "Ethernet0": { "dscp_to_tc_map": "[DSCP_TO_TC_MAP|AZURE]", "pfc_enable": "3,4", "pfc_to_queue_map": "[MAP_PFC_PRIORITY_TO_QUEUE|AZURE]", "tc_to_pg_map": "[TC_TO_PRIORITY_GROUP_MAP|AZURE]", "tc_to_queue_map": "[TC_TO_QUEUE_MAP|AZURE]" }, This format is not consistent with other DB schema followed in sonic. And also this reference in DB is not required, This is taken care by YANG "leafref". Removed this format from all platform files to consistent with other sonic db schema. Example: "Ethernet92|3": { "scheduler": "scheduler.1", "wred_profile": "AZURE_LOSSLESS" }, Dependent pull requests: #7752 - To modify platfrom files #7281 - Yang model Azure/sonic-utilities#1626 - DB migration Azure/sonic-swss#1754 - swss change to remove ABNF format
227 lines
5.2 KiB
Django/Jinja
227 lines
5.2 KiB
Django/Jinja
{%- 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": "0",
|
|
"4": "0",
|
|
"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" : "DWRR",
|
|
"weight": "50"
|
|
}
|
|
},
|
|
"PORT_QOS_MAP": {
|
|
"{{ port_names_active }}": {
|
|
"dscp_to_tc_map" : "DEFAULT",
|
|
"tc_to_queue_map" : "DEFAULT",
|
|
"tc_to_pg_map" : "DEFAULT"
|
|
}
|
|
},
|
|
"QUEUE": {
|
|
{% for port in PORT_ACTIVE %}
|
|
"{{ port }}|0": {
|
|
"scheduler" : "scheduler.0"
|
|
},
|
|
{% endfor %}
|
|
{% for port in PORT_ACTIVE %}
|
|
"{{ port }}|1": {
|
|
"scheduler" : "scheduler.1"
|
|
},
|
|
{% endfor %}
|
|
{% for port in PORT_ACTIVE %}
|
|
"{{ port }}|2": {
|
|
"scheduler": "scheduler.2"
|
|
},
|
|
{% endfor %}
|
|
{% for port in PORT_ACTIVE %}
|
|
"{{ port }}|3": {
|
|
"scheduler": "scheduler.3"
|
|
},
|
|
{% endfor %}
|
|
{% for port in PORT_ACTIVE %}
|
|
"{{ port }}|4": {
|
|
"scheduler": "scheduler.4"
|
|
},
|
|
{% endfor %}
|
|
{% for port in PORT_ACTIVE %}
|
|
"{{ port }}|5": {
|
|
"scheduler": "scheduler.5"
|
|
},
|
|
{% endfor %}
|
|
{% for port in PORT_ACTIVE %}
|
|
"{{ port }}|6": {
|
|
"scheduler": "scheduler.6"
|
|
},
|
|
{% endfor %}
|
|
{% for port in PORT_ACTIVE %}
|
|
"{{ port }}|7": {
|
|
"scheduler": "scheduler.7"
|
|
}{% if not loop.last %},{% endif %}
|
|
{% endfor %}
|
|
}
|
|
}
|