/*
 * Generated by confdc --mib2yang-std
 * Source: mgmt/dmi/model/common/mib-source/ETHER-WIS.mib
 */
/*
 * This YANG module has been generated by smidump 0.5.0:
 *
 *      smidump -f yang ETHER-WIS
 *
 * Do not edit. Edit the source file instead!
 */

module ETHER-WIS {

  namespace "urn:ietf:params:xml:ns:yang:smiv2:ETHER-WIS";
  prefix ETHER-WIS;

  import IF-MIB {
    prefix "if-mib";
  }

  import ietf-yang-smiv2 {
    prefix "smiv2";
  }

  import ietf-yang-types {
    prefix "yang";
  }

  organization
   "IETF Ethernet Interfaces and Hub MIB
    Working Group";

  contact
   "WG charter:
    http://www.ietf.org/html.charters/hubmib-charter.html
    
    Mailing Lists:
    General Discussion: hubmib@ietf.org
    To Subscribe: hubmib-request@ietf.org
    In Body: subscribe your_email_address
    
    Chair: Dan Romascanu
    Postal: Avaya Inc.
          Atidim Technology Park, Bldg. 3
          Tel Aviv 61131
          Israel
     Tel: +972 3 645 8414
    E-mail: dromasca@avaya.com
    
    Editor: C. M. Heard
    Postal: 600 Rainbow Dr. #141
          Mountain View, CA 94041-2542
          USA
     Tel: +1 650-964-8391
    E-mail: heard@pobox.com";

  description
   "The objects in this MIB module are used in conjunction
    with objects in the SONET-MIB and the MAU-MIB to manage
    the Ethernet WAN Interface Sublayer (WIS).
    
    The following reference is used throughout this MIB module:
    
    [IEEE 802.3 Std] refers to:
       IEEE Std 802.3, 2000 Edition: 'IEEE Standard for
       Information technology - Telecommunications and
       information exchange between systems - Local and
       metropolitan area networks - Specific requirements -
       Part 3: Carrier sense multiple access with collision
       detection (CSMA/CD) access method and physical layer
       specifications', as amended by IEEE Std 802.3ae-2002,
       'IEEE Standard for Carrier Sense Multiple Access with
       Collision Detection (CSMA/CD) Access Method and
       Physical Layer Specifications - Media Access Control
       (MAC) Parameters, Physical Layer and Management
       Parameters for 10 Gb/s Operation', 30 August 2002.
    
    Of particular interest are Clause 50, 'WAN Interface
    Sublayer (WIS), type 10GBASE-W', Clause 30, '10Mb/s,
    100Mb/s, 1000Mb/s, and 10Gb/s MAC Control, and Link
    Aggregation Management', and Clause 45, 'Management
    Data Input/Output (MDIO) Interface'.
    
    Copyright (C) The Internet Society (2003).  This version
    of this MIB module is part of RFC 3637;  see the RFC
    itself for full legal notices.";

  revision 2003-09-19 {
    description
     "Initial version, published as RFC 3637.";
  }


  container ETHER-WIS {
    config false;

    container etherWisDeviceTable {
      description
       "The table for Ethernet WIS devices";
      smiv2:oid "1.3.6.1.2.1.10.134.1.1.1";

      list etherWisDeviceEntry {
        key "ifIndex";
        description
         "An entry in the Ethernet WIS device table.  For each
          instance of this object there MUST be a corresponding
          instance of sonetMediumEntry.";
        smiv2:oid "1.3.6.1.2.1.10.134.1.1.1.1";

        leaf ifIndex {
          type leafref {
            path "/if-mib:IF-MIB/if-mib:ifTable/if-mib:ifEntry/if-mib:ifIndex";
          }
        }

        leaf etherWisDeviceTxTestPatternMode {
          type enumeration {
            enum "none" {
              value "1";
            }
            enum "squareWave" {
              value "2";
            }
            enum "prbs31" {
              value "3";
            }
            enum "mixedFrequency" {
              value "4";
            }
          }
          description
           "This variable controls the transmit test pattern mode.
            The value none(1) puts the the WIS transmit path into
            the normal operating mode.  The value squareWave(2) puts
            the WIS transmit path into the square wave test pattern
            mode described in [IEEE 802.3 Std.] subclause 50.3.8.1.
            The value prbs31(3) puts the WIS transmit path into the
            PRBS31 test pattern mode described in [IEEE 802.3 Std.]
            subclause 50.3.8.2.  The value mixedFrequency(4) puts the
            WIS transmit path into the mixed frequency test pattern
            mode described in [IEEE 802.3 Std.] subclause 50.3.8.3.
            Any attempt to set this object to a value other than
            none(1) when the corresponding instance of ifAdminStatus
            has the value up(1) MUST be rejected with the error
            inconsistentValue, and any attempt to set the corresponding
            instance of ifAdminStatus to the value up(1) when an
            instance of this object has a value other than none(1)
            MUST be rejected with the error inconsistentValue.";
          reference
           "[IEEE 802.3 Std.], 50.3.8, WIS test pattern generator and
            checker, 45.2.2.6, 10G WIS control 2 register (2.7), and
            45.2.2.7.2, PRBS31 pattern testing ability (2.8.1).";
          smiv2:max-access "read-write";
          smiv2:oid "1.3.6.1.2.1.10.134.1.1.1.1.1";
        }

        leaf etherWisDeviceRxTestPatternMode {
          type enumeration {
            enum "none" {
              value "1";
            }
            enum "prbs31" {
              value "3";
            }
            enum "mixedFrequency" {
              value "4";
            }
          }
          description
           "This variable controls the receive test pattern mode.
            The value none(1) puts the the WIS receive path into the
            normal operating mode.  The value prbs31(3) puts the WIS
            receive path into the PRBS31 test pattern mode described
            in [IEEE 802.3 Std.] subclause 50.3.8.2.  The value
            mixedFrequency(4) puts the WIS receive path into the mixed
            frequency test pattern mode described in [IEEE 802.3 Std.]
            subclause 50.3.8.3.  Any attempt to set this object to a
            value other than none(1) when the corresponding instance
            of ifAdminStatus has the value up(1) MUST be rejected with
            the error inconsistentValue, and any attempt to set the
            corresponding instance of ifAdminStatus to the value up(1)
            when an instance of this object has a value other than
            none(1) MUST be rejected with the error inconsistentValue.";
          reference
           "[IEEE 802.3 Std.], 50.3.8, WIS test pattern generator and
            checker, 45.2.2.6, 10G WIS control 2 register (2.7), and
            45.2.2.7.2, PRBS31 pattern testing ability (2.8.1).";
          smiv2:max-access "read-write";
          smiv2:oid "1.3.6.1.2.1.10.134.1.1.1.1.2";
        }

        leaf etherWisDeviceRxTestPatternErrors {
          type yang:gauge32 {
            range "0..65535";
          }
          description
           "This object counts the number of errors detected when the
            WIS receive path is operating in the PRBS31 test pattern
            mode.  It is reset to zero when the WIS receive path
            initially enters that mode, and it increments each time
            the PRBS pattern checker detects an error as described in
            [IEEE 802.3 Std.] subclause 50.3.8.2 unless its value is
            65535, in which case it remains unchanged.  This object is
            writeable so that it may be reset upon explicit request
            of a command generator application while the WIS receive
            path continues to operate in PRBS31 test pattern mode.";
          reference
           "[IEEE 802.3 Std.], 50.3.8, WIS test pattern generator and
            checker, 45.2.2.7.2, PRBS31 pattern testing ability
            (2.8.1), and 45.2.2.8, 10G WIS test pattern error counter
            register (2.9).";
          smiv2:max-access "read-write";
          smiv2:oid "1.3.6.1.2.1.10.134.1.1.1.1.3";
        }
      }
    }

    container etherWisSectionCurrentTable {
      description
       "The table for the current state of Ethernet WIS sections.";
      smiv2:oid "1.3.6.1.2.1.10.134.1.2.1";

      list etherWisSectionCurrentEntry {
        key "ifIndex";
        description
         "An entry in the etherWisSectionCurrentTable.  For each
          instance of this object there MUST be a corresponding
          instance of sonetSectionCurrentEntry.";
        smiv2:oid "1.3.6.1.2.1.10.134.1.2.1.1";

        leaf ifIndex {
          type leafref {
            path "/if-mib:IF-MIB/if-mib:ifTable/if-mib:ifEntry/if-mib:ifIndex";
          }
        }

        leaf etherWisSectionCurrentJ0Transmitted {
          type binary {
            length "16";
          }
          description
           "This is the 16-octet section trace message that
            is transmitted in the J0 byte.  The value SHOULD
            be '89'h followed by fifteen octets of '00'h
            (or some cyclic shift thereof) when the section
            trace function is not used, and the implementation
            SHOULD use that value (or a cyclic shift thereof)
            as a default if no other value has been set.";
          reference
           "[IEEE 802.3 Std.], 30.8.1.1.8, aJ0ValueTX.";
          smiv2:max-access "read-write";
          smiv2:oid "1.3.6.1.2.1.10.134.1.2.1.1.1";
        }

        leaf etherWisSectionCurrentJ0Received {
          type binary {
            length "16";
          }
          description
           "This is the 16-octet section trace message that
            was most recently received in the J0 byte.";
          reference
           "[IEEE 802.3 Std.], 30.8.1.1.9, aJ0ValueRX.";
          smiv2:max-access "read-only";
          smiv2:oid "1.3.6.1.2.1.10.134.1.2.1.1.2";
        }
      }
    }

    container etherWisPathCurrentTable {
      description
       "The table for the current state of Ethernet WIS paths.";
      smiv2:oid "1.3.6.1.2.1.10.134.2.1.1";

      list etherWisPathCurrentEntry {
        key "ifIndex";
        description
         "An entry in the etherWisPathCurrentTable.  For each
          instance of this object there MUST be a corresponding
          instance of sonetPathCurrentEntry.";
        smiv2:oid "1.3.6.1.2.1.10.134.2.1.1.1";

        leaf ifIndex {
          type leafref {
            path "/if-mib:IF-MIB/if-mib:ifTable/if-mib:ifEntry/if-mib:ifIndex";
          }
        }

        leaf etherWisPathCurrentStatus {
          type bits {
            bit etherWisPathLOP {
              position "0";
            }
            bit etherWisPathAIS {
              position "1";
            }
            bit etherWisPathPLM {
              position "2";
            }
            bit etherWisPathLCD {
              position "3";
            }
          }
          description
           "This variable indicates the current status of the
            path payload with a bit map that can indicate multiple
            defects at once.  The bit positions are assigned as
            follows:
            
            etherWisPathLOP(0)
               This bit is set to indicate that an
               LOP-P (Loss of Pointer - Path) defect
               is being experienced.  Note:  when this
               bit is set, sonetPathSTSLOP MUST be set
               in the corresponding instance of
               sonetPathCurrentStatus.
            
            etherWisPathAIS(1)
               This bit is set to indicate that an
               AIS-P (Alarm Indication Signal - Path)
               defect is being experienced.  Note:  when
               this bit is set, sonetPathSTSAIS MUST be
               set in the corresponding instance of
               sonetPathCurrentStatus.
            
            etherWisPathPLM(1)
               This bit is set to indicate that a
               PLM-P (Payload Label Mismatch - Path)
               defect is being experienced.  Note:  when
               this bit is set, sonetPathSignalLabelMismatch
               MUST be set in the corresponding instance of
               sonetPathCurrentStatus.
            
            etherWisPathLCD(3)
               This bit is set to indicate that an
               LCD-P (Loss of Codegroup Delination - Path)
               defect is being experienced.  Since this
               defect is detected by the PCS and not by
               the path layer itself, there is no
               corresponding bit in sonetPathCurrentStatus.";
          reference
           "[IEEE 802.3 Std.], 30.8.1.1.18, aPathStatus.";
          smiv2:max-access "read-only";
          smiv2:oid "1.3.6.1.2.1.10.134.2.1.1.1.1";
        }

        leaf etherWisPathCurrentJ1Transmitted {
          type binary {
            length "16";
          }
          description
           "This is the 16-octet path trace message that
            is transmitted in the J1 byte.  The value SHOULD
            be '89'h followed by fifteen octets of '00'h
            (or some cyclic shift thereof) when the path
            trace function is not used, and the implementation
            SHOULD use that value (or a cyclic shift thereof)
            as a default if no other value has been set.";
          reference
           "[IEEE 802.3 Std.], 30.8.1.1.23, aJ1ValueTX.";
          smiv2:max-access "read-write";
          smiv2:oid "1.3.6.1.2.1.10.134.2.1.1.1.2";
        }

        leaf etherWisPathCurrentJ1Received {
          type binary {
            length "16";
          }
          description
           "This is the 16-octet path trace message that
            was most recently received in the J1 byte.";
          reference
           "[IEEE 802.3 Std.], 30.8.1.1.24, aJ1ValueRX.";
          smiv2:max-access "read-only";
          smiv2:oid "1.3.6.1.2.1.10.134.2.1.1.1.3";
        }
      }
    }

    container etherWisFarEndPathCurrentTable {
      description
       "The table for the current far-end state of Ethernet WIS
        paths.";
      smiv2:oid "1.3.6.1.2.1.10.134.2.2.1";

      list etherWisFarEndPathCurrentEntry {
        key "ifIndex";
        description
         "An entry in the etherWisFarEndPathCurrentTable.  For each
          instance of this object there MUST be a corresponding
          instance of sonetFarEndPathCurrentEntry.";
        smiv2:oid "1.3.6.1.2.1.10.134.2.2.1.1";

        leaf ifIndex {
          type leafref {
            path "/if-mib:IF-MIB/if-mib:ifTable/if-mib:ifEntry/if-mib:ifIndex";
          }
        }

        leaf etherWisFarEndPathCurrentStatus {
          type bits {
            bit etherWisFarEndPayloadDefect {
              position "0";
            }
            bit etherWisFarEndServerDefect {
              position "1";
            }
          }
          description
           "This variable indicates the current status at the
            far end of the path using a bit map that can indicate
            multiple defects at once.  The bit positions are
            assigned as follows:
            
            etherWisFarEndPayloadDefect(0)
               A far end payload defect (i.e., far end
               PLM-P or LCD-P) is currently being signaled
               in G1 bits 5-7.
            
            etherWisFarEndServerDefect(1)
               A far end server defect (i.e., far end
               LOP-P or AIS-P) is currently being signaled
               in G1 bits 5-7.  Note:  when this bit is set,
               sonetPathSTSRDI MUST be set in the corresponding
               instance of sonetPathCurrentStatus.";
          reference
           "[IEEE 802.3 Std.], 30.8.1.1.25, aFarEndPathStatus.";
          smiv2:max-access "read-only";
          smiv2:oid "1.3.6.1.2.1.10.134.2.2.1.1.1";
        }
      }
    }
  }

  smiv2:alias "etherWisMIB" {
    smiv2:oid "1.3.6.1.2.1.10.134";
  }

  smiv2:alias "etherWisObjects" {
    smiv2:oid "1.3.6.1.2.1.10.134.1";
  }

  smiv2:alias "etherWisDevice" {
    smiv2:oid "1.3.6.1.2.1.10.134.1.1";
  }

  smiv2:alias "etherWisSection" {
    smiv2:oid "1.3.6.1.2.1.10.134.1.2";
  }

  smiv2:alias "etherWisObjectsPath" {
    smiv2:oid "1.3.6.1.2.1.10.134.2";
  }

  smiv2:alias "etherWisPath" {
    smiv2:oid "1.3.6.1.2.1.10.134.2.1";
  }

  smiv2:alias "etherWisFarEndPath" {
    smiv2:oid "1.3.6.1.2.1.10.134.2.2";
  }

  smiv2:alias "etherWisConformance" {
    smiv2:oid "1.3.6.1.2.1.10.134.3";
  }

  smiv2:alias "etherWisGroups" {
    smiv2:oid "1.3.6.1.2.1.10.134.3.1";
  }

  smiv2:alias "etherWisCompliances" {
    smiv2:oid "1.3.6.1.2.1.10.134.3.2";
  }

}
