--- /dev/null
+module org-openroadm-otn-otu-interfaces {
+ namespace "http://org/openroadm/otn-otu-interfaces";
+ prefix org-openroadm-otn-otu-interfaces;
+
+ import org-openroadm-device {
+ prefix org-openroadm-device;
+ revision-date 2018-10-19;
+ }
+ import org-openroadm-interfaces {
+ prefix openROADM-if;
+ revision-date 2017-06-26;
+ }
+ import org-openroadm-maintenance-loopback {
+ prefix org-openroadm-maint-loopback;
+ revision-date 2017-12-15;
+ }
+ import org-openroadm-otn-common {
+ prefix org-openroadm-otn-common;
+ revision-date 2017-06-26;
+ }
+ import org-openroadm-otn-common-types {
+ prefix org-openroadm-otn-common-types;
+ revision-date 2017-12-15;
+ }
+
+ organization
+ "Open ROADM MSA";
+ contact
+ "OpenROADM.org";
+ description
+ "YANG definitions for device facility otnotu interfaces.
+
+ Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
+ AT&T Intellectual Property. All other rights reserved.
+
+ Redistribution and use in source and binary forms, with or without modification,
+ are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice, this
+ list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation and/or
+ other materials provided with the distribution.
+ * Neither the Members of the Open ROADM MSA Agreement nor the names of its
+ contributors may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT ''AS IS''
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT BE LIABLE FOR ANY DIRECT,
+ INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
+ OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ POSSIBILITY OF SUCH DAMAGE.
+
+ Also contains code components extracted from IETF Interfaces. These code components
+ are copyrighted and licensed as follows:
+
+ Copyright (c) 2016 IETF Trust and the persons identified as the document authors.
+ All rights reserved.
+
+ This document is subject to BCP 78 and the IETF Trust’s Legal Provisions Relating
+ to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of
+ publication of this document. Please review these documents carefully, as they
+ describe your rights and restrictions with respect to this document. Code Components
+ extracted from this document must include Simplified BSD License text as described in
+ Section 4.e of the Trust Legal Provisions and are provided without warranty as
+ described in the Simplified BSD License.";
+
+ revision 2018-10-19 {
+ description
+ "Version 2.2.1";
+ }
+ revision 2017-12-15 {
+ description
+ "Version 2.2";
+ }
+ revision 2017-09-29 {
+ description
+ "Version 2.1";
+ }
+ revision 2017-07-28 {
+ description
+ "Version 2.0.1 - added revision-date to imports";
+ }
+ revision 2017-06-26 {
+ description
+ "Version 2.0";
+ }
+ revision 2016-10-14 {
+ description
+ "Version 1.2";
+ }
+
+ grouping otu-attributes {
+ description
+ "OTU attributes";
+ leaf rate {
+ type identityref {
+ base org-openroadm-otn-common-types:otu-rate-identity;
+ }
+ description
+ "rate identity of the OTU. 'identityref' is used
+ to allow to extend for future higher rates";
+ }
+ leaf fec {
+ type enumeration {
+ enum "off" {
+ value 0;
+ description
+ "fec off";
+ }
+ enum "rsfec" {
+ value 1;
+ description
+ "rsfec";
+ }
+ enum "sdfeca1" {
+ value 2;
+ description
+ "Clariphy SDFEC";
+ }
+ enum "efec" {
+ value 3;
+ description
+ "G.975.1 I.4";
+ }
+ enum "ufec" {
+ value 4;
+ description
+ "G.975.1 I.7";
+ }
+ enum "sdfec" {
+ value 5;
+ description
+ "Soft decision FEC";
+ }
+ enum "sdfecb1" {
+ value 6;
+ description
+ "SDFEC with SCFEC";
+ }
+ enum "scfec" {
+ value 7;
+ description
+ "Stair case FEC";
+ }
+ }
+ description
+ "Forward Error Correction";
+ }
+ uses org-openroadm-otn-common:trail-trace;
+ uses org-openroadm-otn-common:deg-threshold;
+ }
+
+ grouping otu-container {
+ container otu {
+ description
+ "Optical Channel Transport Unit (OTU)";
+ uses otu-attributes;
+ uses org-openroadm-maint-loopback:maint-loopback;
+ }
+ }
+
+ augment "/org-openroadm-device:org-openroadm-device/org-openroadm-device:interface" {
+ when "org-openroadm-device:type = 'openROADM-if:otnOtu'";
+ uses otu-container;
+ }
+}