--=============================================================================
-- Copyright (c) 2016 Fujitsu Network Communications, Inc. All Rights Reserved.
--=============================================================================

FSS-OPTICAL-CHANNEL-INTERFACE DEFINITIONS ::= BEGIN
IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
    Integer32, Unsigned32, Counter32, Counter64,
    Gauge32, IpAddress
        FROM SNMPv2-SMI
    TEXTUAL-CONVENTION, RowStatus, DateAndTime,
    TruthValue
        FROM SNMPv2-TC
	ifIndex
         FROM IF-MIB		
    fssInterfaces
        FROM FSS-COMMON-SMI
;

fSS-OPTICAL-CHANNEL-INTERFACE MODULE-IDENTITY
    LAST-UPDATED "202007170000Z"
    ORGANIZATION
        "Fujitsu Network Communications, Inc."
    CONTACT-INFO
        "Fujitsu Technical Assistance Center (FTAC),
         1-800-USE-FTAC (1-800-873-3822)"
    DESCRIPTION 
        "This MIB module contains object definitions
         for the Optical Channel Interfaces."
    REVISION "202007170000Z"
    DESCRIPTION "Added new value (8psk) to ochModulation-format attribute"
    REVISION "202002130000Z"
    DESCRIPTION "Added support for slot-width, lambda, center-frequency-rx, lambda-rx"
    REVISION "201710270000Z"
    DESCRIPTION "Added support for tx-target-power"
    REVISION "201710250000Z"
    DESCRIPTION "Added new value in ochModulation-format to support dc-dp-qpsk"
    REVISION "201703270000Z"
    DESCRIPTION "Added new values in ochModulation-format and ochDirection"
    REVISION "201601200000Z"
    DESCRIPTION "Initial Revision"
    ::= { fssInterfaces 200 }

ConfdString ::= TEXTUAL-CONVENTION
    DISPLAY-HINT "1t"
    STATUS      current
    DESCRIPTION "xs: and confd: types mapped to strings"
    SYNTAX      OCTET STRING

String ::= TEXTUAL-CONVENTION
    DISPLAY-HINT "1t"
    STATUS      current
    DESCRIPTION "xs:string"
    SYNTAX      OCTET STRING

och-dataTable OBJECT-TYPE 
  SYNTAX      SEQUENCE OF OCH-dataEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION ""
    ::= { fSS-OPTICAL-CHANNEL-INTERFACE 1 }

och-dataEntry OBJECT-TYPE
    SYNTAX      OCH-dataEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION ""
    INDEX { ifIndex }
        ::= { och-dataTable 1 }


OCH-dataEntry ::=
    SEQUENCE {
       ochOper-status INTEGER,
       ochAdmin-status INTEGER,
       ochCenter-frequency ConfdString,
       ochDirection INTEGER,
       ochModulation-format INTEGER,
       ochAct-laser INTEGER,
       ochTx-target-power ConfdString,
       ochSlot-width ConfdString,
       ochLambda ConfdString,
       ochCenter-frequency-rx ConfdString,
       ochLambda-rx ConfdString
    }

ochOper-status OBJECT-TYPE
    SYNTAX      INTEGER {up(1),down(2),testing(3),unknown(4),dormant(5),not-present(6),lower-layer-down(7)}
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { och-dataEntry 1 }

ochAdmin-status OBJECT-TYPE
    SYNTAX      INTEGER {up(1),down(2),testing(3)}
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION ""
    ::= { och-dataEntry 2 }

ochCenter-frequency OBJECT-TYPE
    SYNTAX      ConfdString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "frequency of the transmit optical channel"
    ::= { och-dataEntry 3 }

ochDirection OBJECT-TYPE
    SYNTAX      INTEGER {uni-rx(1),bi(2),uni-tx(3)}
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "direction of interface"
    DEFVAL { bi }
    ::= { och-dataEntry 4 }

ochModulation-format OBJECT-TYPE
    SYNTAX      INTEGER {bpsk(1),dc-dp-bpsk(2),qpsk(3),dp-qpsk(4),qam16(5),dc-dp-qam16(6),dp-qam16(7),qam8(8),dp-qam8(9),dc-dp-qam8(10),dc-dp-qpsk(11),psk8(12)}
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "modulation format"
    DEFVAL { dp-qam16 }
    ::= { och-dataEntry 5 }

ochAct-laser OBJECT-TYPE
    SYNTAX      INTEGER {normal(0),shutdown(1),none(2)}
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "actual transmit laser status"
    ::= { och-dataEntry 6 }
    
ochTx-target-power OBJECT-TYPE
    SYNTAX      ConfdString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Transmit output power setting."
    ::= { och-dataEntry 7 }

ochSlot-width OBJECT-TYPE
    SYNTAX      ConfdString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Channel slot width in GHz."
    ::= { och-dataEntry 8 }

ochLambda OBJECT-TYPE
    SYNTAX      ConfdString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Lambda corresponding to transmit frequency."
    ::= { och-dataEntry 9 }

ochCenter-frequency-rx OBJECT-TYPE
    SYNTAX      ConfdString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Frequency of the receive optical channel."
    ::= { och-dataEntry 10 }

ochLambda-rx OBJECT-TYPE
    SYNTAX      ConfdString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION "Lambda corresponding to receive frequency."
    ::= { och-dataEntry 11 }

END
