[yang]: Add Yang model support for adding Channel to PORT table (#14228)
Why I did it Add 'channel' to the CONFIG_DB PORT table. This will be needed to support PORT breakout to multiple channel ports so that Xcvrd can understand which datapath or channel to initialize on the CMIS compliant optics How I did it Add 'channel' to the CONFIG_DB PORT table. How to verify it Added unit test for valid and invalid channel number Channel 0 -> No breakout Channel 1 to 8 -> Breakout channel 1,2, ..8 Signed-off-by: Prince George <prgeor@microsoft.com>
This commit is contained in:
parent
2eb06b1a40
commit
8c049af65e
@ -1235,6 +1235,33 @@ optional attributes.
|
||||
}
|
||||
}
|
||||
|
||||
2x100G port breakout
|
||||
{
|
||||
"PORT": {
|
||||
"Ethernet0": {
|
||||
"admin_status": "up",
|
||||
"index": "1",
|
||||
"lanes": "101,102,103,104",
|
||||
"description": "etp1a",
|
||||
"mtu": "9100",
|
||||
"alias": "etp1a",
|
||||
"speed": "100000",
|
||||
"channel": 1
|
||||
},
|
||||
"Ethernet4": {
|
||||
"admin_status": "up",
|
||||
"index": "1",
|
||||
"lanes": "105,106,107,108",
|
||||
"description": "etp1b",
|
||||
"mtu": "9100",
|
||||
"alias": "etp1b",
|
||||
"speed": "100000",
|
||||
"channel": 2
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
```
|
||||
|
||||
### Port Channel
|
||||
|
@ -462,7 +462,8 @@
|
||||
"admin_status": "up",
|
||||
"autoneg": "on",
|
||||
"adv_speeds": "all",
|
||||
"adv_interface_types": "all"
|
||||
"adv_interface_types": "all",
|
||||
"channel" : "0"
|
||||
},
|
||||
"Ethernet3": {
|
||||
"alias": "Eth1/4",
|
||||
@ -470,7 +471,8 @@
|
||||
"description": "",
|
||||
"speed": "11100",
|
||||
"tpid": "0x88A8",
|
||||
"admin_status": "up"
|
||||
"admin_status": "up",
|
||||
"channel": "1"
|
||||
},
|
||||
"Ethernet4": {
|
||||
"alias": "Eth2/1",
|
||||
@ -478,7 +480,8 @@
|
||||
"description": "",
|
||||
"speed": "11100",
|
||||
"tpid": "0x9100",
|
||||
"admin_status": "up"
|
||||
"admin_status": "up",
|
||||
"channel": "2"
|
||||
},
|
||||
"Ethernet5": {
|
||||
"alias": "Eth2/2",
|
||||
@ -486,7 +489,8 @@
|
||||
"description": "",
|
||||
"speed": "11100",
|
||||
"tpid": "0x9200",
|
||||
"admin_status": "up"
|
||||
"admin_status": "up",
|
||||
"channel": "3"
|
||||
},
|
||||
"Ethernet6": {
|
||||
"alias": "Eth2/3",
|
||||
@ -494,7 +498,8 @@
|
||||
"description": "",
|
||||
"speed": "11100",
|
||||
"tpid": "0x8100",
|
||||
"admin_status": "up"
|
||||
"admin_status": "up",
|
||||
"channel": "4"
|
||||
},
|
||||
"Ethernet7": {
|
||||
"alias": "Eth2/4",
|
||||
@ -502,7 +507,8 @@
|
||||
"description": "",
|
||||
"speed": "11100",
|
||||
"tpid": "0x8100",
|
||||
"admin_status": "up"
|
||||
"admin_status": "up",
|
||||
"channel": "5"
|
||||
},
|
||||
"Ethernet8": {
|
||||
"alias": "Eth3/1",
|
||||
@ -510,7 +516,8 @@
|
||||
"description": "",
|
||||
"speed": "11100",
|
||||
"tpid": "0x8100",
|
||||
"admin_status": "up"
|
||||
"admin_status": "up",
|
||||
"channel": "6"
|
||||
},
|
||||
"Ethernet9": {
|
||||
"alias": "Eth3/2",
|
||||
@ -518,7 +525,8 @@
|
||||
"description": "",
|
||||
"speed": "11100",
|
||||
"tpid": "0x8100",
|
||||
"admin_status": "up"
|
||||
"admin_status": "up",
|
||||
"channel": "7"
|
||||
},
|
||||
"Ethernet10": {
|
||||
"alias": "Eth3/3",
|
||||
@ -526,7 +534,8 @@
|
||||
"description": "",
|
||||
"speed": "11100",
|
||||
"tpid": "0x8100",
|
||||
"admin_status": "up"
|
||||
"admin_status": "up",
|
||||
"channel": "8"
|
||||
},
|
||||
"Ethernet11": {
|
||||
"alias": "Eth3/4",
|
||||
|
@ -114,6 +114,13 @@
|
||||
"PORT_INVALID_MULTIASIC_TEST": {
|
||||
"desc": "PORT_INVALID_MULTIASIC_TEST invalid role pattern, expect fail",
|
||||
"eStrKey": "Pattern"
|
||||
},
|
||||
"PORT_VALID_CHANNEL_NUMBER": {
|
||||
"desc": "PORT_VALID_CHANNEL_NUMBER no failure."
|
||||
},
|
||||
"PORT_INVALID_CHANNEL_NUMBER": {
|
||||
"desc": "Out of range channel number",
|
||||
"eStrKey": "Range",
|
||||
"eStr": "0..8"
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -485,7 +485,60 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
"PORT_INVALID_CHANNEL_NUMBER": {
|
||||
"sonic-port:sonic-port": {
|
||||
"sonic-port:PORT": {
|
||||
"PORT_LIST": [
|
||||
{
|
||||
"name": "Ethernet0",
|
||||
"alias": "etp1a",
|
||||
"lanes": "60, 61",
|
||||
"speed": 100000,
|
||||
"channel": 9
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
"PORT_VALID_CHANNEL_NUMBER": {
|
||||
"sonic-port:sonic-port": {
|
||||
"sonic-port:PORT": {
|
||||
"PORT_LIST": [
|
||||
{
|
||||
"name": "Ethernet0",
|
||||
"alias": "etp1a",
|
||||
"lanes": "60, 61",
|
||||
"speed": 100000,
|
||||
"channel": 1
|
||||
},
|
||||
{
|
||||
"name": "Ethernet2",
|
||||
"alias": "etp1b",
|
||||
"lanes": "62, 63",
|
||||
"speed": 100000,
|
||||
"channel": 2
|
||||
},
|
||||
{
|
||||
"name": "Ethernet4",
|
||||
"alias": "etp1c",
|
||||
"lanes": "64, 65",
|
||||
"speed": 100000,
|
||||
"channel": 3
|
||||
},
|
||||
{
|
||||
"name": "Ethernet6",
|
||||
"alias": "etp1d",
|
||||
"lanes": "66, 67",
|
||||
"speed": 100000,
|
||||
"channel": 4
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
"PORT_VALID_MULTIASIC_TEST": {
|
||||
"sonic-port:sonic-port": {
|
||||
"sonic-port:PORT": {
|
||||
|
@ -121,6 +121,13 @@ module sonic-port{
|
||||
}
|
||||
}
|
||||
|
||||
leaf channel {
|
||||
description "Logical channel(s) for physical port breakout";
|
||||
type uint8 {
|
||||
range 0..8;
|
||||
}
|
||||
}
|
||||
|
||||
leaf index {
|
||||
type uint16;
|
||||
}
|
||||
|
Reference in New Issue
Block a user