1 module org-openroadm-port-capability {
2 namespace "http://org/openroadm/port-capability";
3 prefix org-openroadm-port-capability;
5 import org-openroadm-device {
6 prefix org-openroadm-device;
7 revision-date 2020-05-29;
9 import org-openroadm-port-types {
10 prefix org-openroadm-port-types;
11 revision-date 2020-03-27;
19 "YANG definitions for port capabilities.
21 Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
22 All other rights reserved.
24 Redistribution and use in source and binary forms, with or without modification,
25 are permitted provided that the following conditions are met:
27 * Redistributions of source code must retain the above copyright notice, this
28 list of conditions and the following disclaimer.
29 * Redistributions in binary form must reproduce the above copyright notice,
30 this list of conditions and the following disclaimer in the documentation and/or
31 other materials provided with the distribution.
32 * Neither the Members of the Open ROADM MSA Agreement nor the names of its
33 contributors may be used to endorse or promote products derived from this software
34 without specific prior written permission.
36 THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT ''AS IS''
37 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
38 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
39 IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT BE LIABLE FOR ANY DIRECT,
40 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
41 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
42 OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
43 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
44 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
45 POSSIBILITY OF SUCH DAMAGE.
47 Also contains code components extracted from IETF Interfaces. These code components
48 are copyrighted and licensed as follows:
50 Copyright (c) 2017 IETF Trust and the persons identified as the document authors.
53 This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating
54 to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of
55 publication of this document. Please review these documents carefully, as they
56 describe your rights and restrictions with respect to this document. Code Components
57 extracted from this document must include Simplified BSD License text as described in
58 Section 4.e of the Trust Legal Provisions and are provided without warranty as
59 described in the Simplified BSD License.";
101 revision 2017-12-15 {
105 revision 2017-09-29 {
110 grouping port-id-grp {
111 leaf circuit-pack-name {
113 path "/org-openroadm-device:org-openroadm-device/org-openroadm-device:circuit-packs/org-openroadm-device:circuit-pack-name";
116 "Circuit-Pack identifier. Unique within the context of a device.";
120 path "/org-openroadm-device:org-openroadm-device/org-openroadm-device:circuit-packs/org-openroadm-device:ports/org-openroadm-device:port-name";
123 "Port index identifier. Unique within the context of a circuit-pack.";
127 grouping slot-id-grp {
128 leaf circuit-pack-name {
130 path "/org-openroadm-device:org-openroadm-device/org-openroadm-device:circuit-packs/org-openroadm-device:circuit-pack-name";
133 "Circuit-Pack identifier. Unique within the context of a device.";
137 path "/org-openroadm-device:org-openroadm-device/org-openroadm-device:circuit-packs/org-openroadm-device:cp-slots/org-openroadm-device:slot-name";
140 "cp-slot name. Unique within the context of a circuit-pack.";
144 grouping optical-operational-modes-grp-for-capability {
145 leaf-list optical-operational-mode-profile-name {
147 path "/org-openroadm-device:org-openroadm-device/org-openroadm-device:optical-operational-mode-profile/org-openroadm-device:profile-name";
151 "Optical operation capabilities leaf list";
154 "Optical operational modes grouping";
157 grouping port-capability-grp {
159 "OpenROADM port capability parameters.";
160 container port-capabilities {
162 list supported-interface-capability {
165 "Supported interface capability on the port.";
168 base org-openroadm-port-types:supported-if-capability;
171 "Interface type/hierarchy/rate supported on this port";
173 leaf-list split-lambda-profile-name {
175 path "/org-openroadm-device:org-openroadm-device/org-openroadm-device:split-lambda-profile/org-openroadm-device:profile-name";
178 "Split lambda mode capabilities";
180 leaf-list otsigroup-capability-profile-name {
182 path "/org-openroadm-device:org-openroadm-device/org-openroadm-device:otsigroup-capability-profile/org-openroadm-device:profile-name";
185 "OTSI group capabilities";
187 uses optical-operational-modes-grp-for-capability;
188 container otn-capability {
191 leaf otn-capability-profile-name {
193 path "/org-openroadm-device:org-openroadm-device/org-openroadm-device:otn-capability-profile/org-openroadm-device:profile-name";
196 list mpdr-client-restriction {
198 "Restriction rules for how LO ODUs are multiplexed into HO ODU
199 and the relation with mapped client ports.";
200 leaf network-ho-odu-circuit-pack-name {
204 "Circuit-Pack identifier. Unique within the context of a device.";
206 leaf network-ho-odu-port-name {
212 leaf-list muxp-profile-name {
214 path "/org-openroadm-device:org-openroadm-device/org-openroadm-device:muxp-profile/org-openroadm-device:profile-name";
218 leaf otn-odu-mux-hierarchy-profile-name {
220 path "/org-openroadm-device:org-openroadm-device/org-openroadm-device:otn-odu-mux-hierarchy-profile/org-openroadm-device:profile-name";
223 "OTN ODU Mux hierarchy capabilities";
226 container logical-port {
227 leaf circuit-pack-name {
230 "The circuit pack supporting the logical port";
235 "Port name for logical-port";
238 "Logical port container";
244 grouping port-group-restriction-grp {
245 container port-group-restriction {
247 list port-bandwidth-sharing {
248 key "port-sharing-id";
249 leaf port-sharing-id {
253 key "circuit-pack-name port-name";
256 list pluggable-optics-holder-list {
257 key "circuit-pack-name slot-name";
260 leaf shared-bandwidth {
264 list possible-port-config {
269 list port-if-type-config {
270 key "circuit-pack-name port-name";
272 leaf-list port-if-type {
274 base org-openroadm-port-types:supported-if-capability;
281 "Optical Tributary Signal (OTSi) rate in Gbps";
284 list slot-if-type-config {
285 key "circuit-pack-name slot-name port-name";
290 leaf-list port-if-type {
292 base org-openroadm-port-types:supported-if-capability;
295 leaf-list port-module-type {
296 type org-openroadm-port-types:port-module-types;
302 "Optical Tributary Signal (OTSi) rate in Gbps";
310 grouping provisioned-port-grp {
311 container provisioned-port-grp {
312 list port-bandwidth-sharing {
313 key "port-sharing-id";
314 leaf port-sharing-id {
317 leaf provisioned-port-config {
325 augment "/org-openroadm-device:org-openroadm-device/org-openroadm-device:circuit-packs/org-openroadm-device:ports" {
327 "augment for port capability";
328 uses port-capability-grp;
331 augment "/org-openroadm-device:org-openroadm-device" {
333 "augment for port group restriction";
334 uses port-group-restriction-grp;
337 augment "/org-openroadm-device:org-openroadm-device" {
339 "augment for provisioned port group";
340 uses provisioned-port-grp;