[voq/inbandif] Support for inband port as regular port (#6477)

Changes in this PR are to make LLDP to consider Inband port and to avoid regular
port handling on Inband port.
This commit is contained in:
vganesan-nokia 2021-04-01 19:24:57 -04:00 committed by GitHub
parent aa63c71420
commit 973affce39
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 24 additions and 1 deletions

View File

@ -22,6 +22,7 @@ try:
from sonic_py_common import daemon_base
from swsscommon import swsscommon
from sonic_py_common.interface import inband_prefix
except ImportError as err:
raise ImportError("%s - required module not found" % str(err))
@ -94,6 +95,11 @@ class LldpManager(daemon_base.DaemonBase):
"""
port_desc = None
# Skip inband interface prefixes. These are recycle ports exposed in PORT_TABLE for
# asic-to-asic communication in VOQ based chassis system. We do not configure LLDP on these.
if port_name.startswith(inband_prefix()):
return
# Retrieve all entires for this port from the Port table
port_table = swsscommon.Table(self.config_db, swsscommon.CFG_PORT_TABLE_NAME)
(status, fvp) = port_table.get(port_name)

View File

@ -90,6 +90,16 @@ fi
if [ "$conn_chassis_db" == "1" ]; then
if [ -f /usr/share/sonic/virtual_chassis/coreportindexmap.ini ]; then
cp /usr/share/sonic/virtual_chassis/coreportindexmap.ini /usr/share/sonic/hwsku/
pushd /usr/share/sonic/hwsku
# filter available front panel ports in coreportindexmap.ini
[ -f coreportindexmap.ini.orig ] || cp coreportindexmap.ini coreportindexmap.ini.orig
for p in $(ip link show | grep -oE "eth[0-9]+" | grep -v eth0); do
grep ^$p: coreportindexmap.ini.orig
done > coreportindexmap.ini
popd
fi
fi

View File

@ -13,7 +13,8 @@ SONIC_INTERFACE_PREFIXES = {
"PortChannel": "PortChannel",
"Vlan": "Vlan",
"Loopback": "Loopback",
"Ethernet-Backplane": "Ethernet-BP"
"Ethernet-Backplane": "Ethernet-BP",
"Ethernet-Inband": "Ethernet-IB"
}
VLAN_SUB_INTERFACE_SEPARATOR = '.'
@ -48,6 +49,12 @@ def loopback_prefix():
"""
return SONIC_INTERFACE_PREFIXES["Loopback"]
def inband_prefix():
"""
Retrieves the SONIC recycle port inband interface name prefix.
"""
return SONIC_INTERFACE_PREFIXES["Ethernet-Inband"]
def get_interface_table_name(interface_name):
"""Get table name by interface_name prefix
"""