-- This file was included in WWP MIB release 04-07-01-0008
 --
 -- WWP-XCVR-MIB.my
 --
 -- NOTE WELL
 -- Starting from LE21X 2.0, the object wwpXcvrPortHoldDownTime mentioned 
 -- in this MIB has been deprecated.
 -- NOTE WELL

 WWP-XCVR-MIB DEFINITIONS ::= BEGIN

 IMPORTS 		
   Integer32, OBJECT-TYPE, MODULE-IDENTITY			
	    FROM SNMPv2-SMI			
   DisplayString			
	    FROM SNMPv2-TC						
   wwpModules			
	    FROM WWP-SMI;
	
	
 wwpXcvrMIB MODULE-IDENTITY
	    LAST-UPDATED "200104031700Z"
	    ORGANIZATION "Ciena, Inc"
	    CONTACT-INFO
		    "  Mib Meister
		  			115 North Sullivan Road
					Spokane Valley, WA 99037
		        	USA		 		
		        	Phone:  +1 509 242 9000
					Email:  support@ciena.com"
	    DESCRIPTION
		    "The MIB module for the WWP System physical transceiver devices."
	    REVISION    "200104031700Z"
	    DESCRIPTION
		    "Initial creation."
	    ::= { wwpModules 14 }
						
 --
 -- Node definitions
 --
	
 wwpXcvrMIBObjects OBJECT IDENTIFIER ::= { wwpXcvrMIB 1 }
 
 wwpXcvr  OBJECT IDENTIFIER ::= { wwpXcvrMIBObjects 1 }

 wwpXcvrNotif  OBJECT IDENTIFIER ::= { wwpXcvrMIBObjects 2 }

 -- Notifications 
  
 wwpXcvrMIBNotificationPrefix  OBJECT IDENTIFIER ::= { wwpXcvrMIB 2 } 
 wwpXcvrMIBNotifications       OBJECT IDENTIFIER ::=  
                       { wwpXcvrMIBNotificationPrefix 0 }

 -- Conformance information 
 
 wwpXcvrMIBConformance OBJECT IDENTIFIER ::= { wwpXcvrMIB 3 } 
 wwpXcvrMIBCompliances OBJECT IDENTIFIER ::= { wwpXcvrMIBConformance 1 } 		
 wwpXcvrMIBGroups      OBJECT IDENTIFIER ::= { wwpXcvrMIBConformance 2 }

		
 wwpXcvrTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF WwpXcvrEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
	    "This table contains descriptions and settings for each of the 
	    physical transceiver devices."
    ::= { wwpXcvr 1 }
		 
 wwpXcvrEntry OBJECT-TYPE
    SYNTAX        WwpXcvrEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION 
    	"The Transceiver Device Entry."
    INDEX { wwpXcvrPortXcvrId, wwpXcvrId }
    ::= { wwpXcvrTable 1 }

 WwpXcvrEntry ::= SEQUENCE { 
    wwpXcvrPortXcvrId        Integer32,
    wwpXcvrId                Integer32,
    wwpXcvrFiberType         INTEGER,
    wwpXcvrVendorName        DisplayString,
    wwpXcvrPartNum           DisplayString,
    wwpXcvrPartRev           DisplayString,
    wwpXcvrTxEnabled         INTEGER,
    wwpXcvrRxSignalStatus    INTEGER,
    wwpXcvrTxFaultStatus     INTEGER
 }

			
 wwpXcvrPortXcvrId OBJECT-TYPE
    SYNTAX        Integer32(1..65535)
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
	    "Indicates the logical port in-which this transceiver belongs to."
    ::= { wwpXcvrEntry 1 }

 wwpXcvrId OBJECT-TYPE
    SYNTAX           Integer32 (1..4)
    MAX-ACCESS       read-only
    STATUS           current
    DESCRIPTION
	    "The id for the transceiver."
    ::= { wwpXcvrEntry 2 }
		
 wwpXcvrFiberType OBJECT-TYPE
    SYNTAX       INTEGER {	
		      lx(1),
		      sx(2),
		      cx(3),
		      t(4),
		      unknown(5)
		 }
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
	    "The fiber type of this transceiver.
	    Possible values:
				lx              1000BASE-LX fiber
				sx              1000BASE-SX fiber
				cx              1000BASE-CX fiber
				t               1000BASE-T
				unknown         Unknown type"
    ::= { wwpXcvrEntry 3 }

 wwpXcvrVendorName OBJECT-TYPE
    SYNTAX        DisplayString
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
	    "String containing this transceiver's vendor name."
    ::= { wwpXcvrEntry 4 }
		
 wwpXcvrPartNum   OBJECT-TYPE
    SYNTAX            DisplayString
    MAX-ACCESS        read-only
    STATUS            current
    DESCRIPTION
	    "String containing this transceiver's part number."
    ::= { wwpXcvrEntry 5 }
		
 wwpXcvrPartRev   OBJECT-TYPE
    SYNTAX         DisplayString
    MAX-ACCESS     read-only
    STATUS         current
    DESCRIPTION
	    "String containing this transceiver's part revision."
    ::= { wwpXcvrEntry 6 }
		 		
 wwpXcvrTxEnabled OBJECT-TYPE
    SYNTAX       INTEGER {	
		      enabled(1),
		      disabled(2)
	         }
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
	    "Indicates whether this transceiver is currently set to transmit."
    ::= { wwpXcvrEntry 7 }
		
 wwpXcvrRxSignalStatus OBJECT-TYPE
    SYNTAX      INTEGER {	
		     detected(1),
		     notDetected(2)
		}
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
	    "Indicates whether this transceiver is currently detecting a
	    Receive (RX) signal."
    ::= { wwpXcvrEntry 8 }
		
 wwpXcvrTxFaultStatus OBJECT-TYPE
    SYNTAX        INTEGER {	
		       fault(1),
		       noFault(2)
	     	  }
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
	    "Indicates the fault status of this transceiver."
    ::= { wwpXcvrEntry 9 }
		
 wwpXcvrPortTable OBJECT-TYPE
    SYNTAX         SEQUENCE OF WwpXcvrPortEntry
    MAX-ACCESS     not-accessible
    STATUS         current
    DESCRIPTION
	    "The table contains of the logical ports which have transceivers."
    ::= { wwpXcvr 2 }
		
 wwpXcvrPortEntry   OBJECT-TYPE
    SYNTAX        WwpXcvrPortEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION   "The logical Port Entry."
    INDEX { wwpXcvrPortId }
    ::= { wwpXcvrPortTable 1 }
		
 WwpXcvrPortEntry ::= SEQUENCE { 
    wwpXcvrPortId              Integer32,
    wwpXcvrPortHoldDownTime    Integer32,
    wwpXcvrPortRedOrDiagMode   INTEGER,
    wwpXcvrPortPreferredXcvr   Integer32,
    wwpXcvrPortActiveXcvr      Integer32
 }


 wwpXcvrPortId OBJECT-TYPE
    SYNTAX        Integer32(1..65535)
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
	    "Indicates the logical port in-which this transceiver belongs to."
    ::= { wwpXcvrPortEntry 1 }
		
 wwpXcvrPortHoldDownTime   OBJECT-TYPE
    SYNTAX                 Integer32 (0..30)
    MAX-ACCESS             read-write
    STATUS                 deprecated
    DESCRIPTION
	    "Indicates the hold-down time (in seconds) for this logical 
	    port. This value is used to help smooth out possible flapping
            between XCVRs of the bank when a link goes down. When this HoldDown 
            timer expires, the selected XCVR(in link-down state) may attempt to 
            select the adjacent XCVR of the bank."
    ::= { wwpXcvrPortEntry 2 }
		
 wwpXcvrPortRedOrDiagMode  OBJECT-TYPE
    SYNTAX              INTEGER {
			     enable(1),
			     disable(2)
		        }
    MAX-ACCESS          read-write
    STATUS              current
    DESCRIPTION
	    "This object can be used to bring the Xcvr to the Manual mode.
            This also shows the port redundancy status for this logical port."
    ::= { wwpXcvrPortEntry 3 }

 wwpXcvrPortPreferredXcvr OBJECT-TYPE
    SYNTAX           Integer32(1..2)
    MAX-ACCESS       read-write
    STATUS           current
    DESCRIPTION
	    "Indicates which transceiver is preferred. This transceiver will
	    be used by default, but if it goes down, the alternate will be used."
    ::= { wwpXcvrPortEntry 4 }
		
 wwpXcvrPortActiveXcvr OBJECT-TYPE
    SYNTAX         Integer32(1..2)
    MAX-ACCESS     read-only
    STATUS         current
    DESCRIPTION
	    "Indicates which transceiver is currently active."
    ::= { wwpXcvrPortEntry 5 }

 
 wwpXcvrEventType OBJECT-TYPE
    SYNTAX         INTEGER {
                        none(0),
                        up(1),
                        down(2),
                        select(3)
                   }                         
    -- MAX-ACCESS  accessible-for-notify
    MAX-ACCESS     read-only
    STATUS         current
    DESCRIPTION
	    "Indicates if the Xcvr specified by the wwpXcvrPortId and wwpXcvrId 
            has come up, gone down or has been selected. This object only make sense 
            for wwpXcvrLinkStateChangeNotification and should return none otherwise."
    ::= { wwpXcvrNotif 1 }

  wwpXcvrErrorType OBJECT-TYPE
    SYNTAX         INTEGER {
                        none(0),
                        chksumFailed(1),
                        opticalFault(2)                        
                   }                         
    -- MAX-ACCESS  accessible-for-notify
    MAX-ACCESS     read-only
    STATUS         current
    DESCRIPTION
	    "Indicates if the Xcvr specified by the wwpXcvrPortId and wwpXcvrId 
            is faulted because of checksum failed or optical fault. This object only 
	    makes sense if some tranceiver has been detected faulted otherwise it returns none."
    ::= { wwpXcvrNotif 2 }

 wwpXcvrLinkStateChangeNotification NOTIFICATION-TYPE
	OBJECTS	{
                wwpXcvrPortId,
                wwpXcvrId,
                wwpXcvrEventType        
		}
	STATUS	current
	DESCRIPTION
		"A wwpXcvrLinkStateChangeNotification is sent if the Xcvr state has changed."
	::= { wwpXcvrMIBNotifications 4 }

 wwpXcvrErrorTypeNotification NOTIFICATION-TYPE
	OBJECTS	{
                wwpXcvrPortId,
                wwpXcvrId,
                wwpXcvrErrorType        
		}
	STATUS	current
	DESCRIPTION
		"A wwpXcvrErrorTypeNotification is sent if the Xcvr is detected faulted because of some reason. 
		 Reason of failure is specified by wwpXcvrErrorType."
	::= { wwpXcvrMIBNotifications 5 }

 END

 --
 -- WWP-XCVR-MIB
 --
