--- /dev/null
+module org-openroadm-maintenance-testsignal {
+ namespace "http://org/openroadm/maintenance-testsignal";
+ prefix org-openroadm-maint-testsignal;
+
+ organization "Open ROADM MSA";
+ contact
+ "OpenROADM.org";
+ description
+ "YANG definitions for maintenance testsignal.
+
+ 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.";
+
+ revision 2016-10-14 {
+ description
+ "Version 1.2";
+ }
+
+ grouping maint-testsignal {
+ container maint-testsignal {
+ leaf enabled {
+ type boolean;
+ default "false";
+ description
+ "testsignal enabled flag";
+ }
+ leaf testPattern {
+ when "../enabled = 'true'";
+ type enumeration {
+ enum "PRBS" {
+ value 0;
+ description
+ "Unframed, inverted PN-31 pattern or PRBS31 pattern per IEEE 802.3 clause 50.3.8.2 (inverted PN-31at line rate)";
+ }
+ enum "PRBS31" {
+ value 1;
+ description
+ "PRBS31 with standard mapping per G.709";
+ }
+ enum "PRBS23" {
+ value 2;
+ description
+ "SONET/SDH Framed,inverted PN-23 pattern.";
+ }
+ enum "PRZEROS" {
+ value 3;
+ description
+ "pseudo-random with zeros data pattern per IEEE 802.3 clause 49.2.8";
+ }
+ enum "IDLE" {
+ value 4;
+ description
+ "Scrambled IDLE test-pattern per IEEE 802.3ba";
+ }
+ }
+ description
+ "Set test signal pattern";
+ }
+ leaf type {
+ when "../enabled = 'true'";
+ type enumeration {
+ enum "fac" {
+ value 0;
+ description
+ "test signal in the facility direction";
+ }
+ enum "term" {
+ value 1;
+ description
+ "test signal in the terminal direction";
+ }
+ }
+ default "fac";
+ description
+ "Set test signal type (or direction).";
+ }
+ leaf bitErrors {
+ when "../enabled = 'true' and ../type = 'fac'";
+ type uint32 {
+ range "0..4294967295";
+ }
+ config false;
+ description
+ "bit errors for test signal in facility direction.";
+ }
+ leaf bitErrorsTerminal {
+ when "../enabled = 'true' and ../type = 'term'";
+ type uint32 {
+ range "0..4294967295";
+ }
+ config false;
+ description
+ "bit errors for test signal in terminal direction.";
+ }
+ leaf syncSeconds {
+ when "../enabled = 'true' and ../type = 'fac'";
+ type string;
+ config false;
+ description
+ "number of seconds the received facility test signal is in sync.";
+ }
+ leaf syncSecondsTerminal {
+ when "../enabled = 'true' and ../type = 'term'";
+ type string;
+ config false;
+ description
+ "number of seconds the received terminal test signal is in sync.";
+ }
+ }
+ }
+}