-- ***************************************************************
-- INFINERA-ENTITY-BMM-MIB
--   
-- October 2008, Sharfuddin Syed / Narendra Gupta
--   
--   
-- Copyright (c) 2008-2012 by Infinera Inc.
-- All rights reserved.
-- ****************************************************************

INFINERA-ENTITY-RAM-MIB DEFINITIONS ::= BEGIN

IMPORTS
    OBJECT-TYPE, MODULE-IDENTITY, Unsigned32    FROM SNMPv2-SMI
    OBJECT-GROUP, MODULE-COMPLIANCE             FROM SNMPv2-CONF
    RowStatus, DisplayString, TruthValue        FROM SNMPv2-TC
    entLPPhysicalIndex                          FROM ENTITY-MIB
    equipment                                   FROM INFINERA-REG-MIB
    FloatTenths, InfnEqptType                   FROM INFINERA-TC-MIB;

ramMIB MODULE-IDENTITY
    LAST-UPDATED  "200810200000Z"
    ORGANIZATION 
        "INFINERA"
    CONTACT-INFO 
        "Infinera
        169 Java Drive
        Sunnyvale, CA - 94089
        
        Contact : Technical Support
        Email   : support@infinera.com
        Phone   : 1-877-INF-5288"
    DESCRIPTION 
        "This MIB is modeling for RAM equipment table."
::= { equipment 12 }

ramConformance       OBJECT IDENTIFIER ::= { ramMIB 3 }
ramCompliances       OBJECT IDENTIFIER ::= { ramConformance 1 }
ramGroups            OBJECT IDENTIFIER ::= { ramConformance 2 }

ramTable  OBJECT-TYPE
    SYNTAX SEQUENCE OF RamEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION 
        "This table contains all RAM modules that are currently present in a network element.
        "
    ::= { ramMIB 1 }

ramEntry  OBJECT-TYPE
    SYNTAX     RamEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION 
        "A row in the RAM table. Each row in the table is identified with a unique entPhysicalIndexID. 
        "
    INDEX { entLPPhysicalIndex }
    ::= { ramTable 1 }

RamEntry ::= SEQUENCE {
    ramMoId                  DisplayString,
    ramProvEqptType          InfnEqptType,
    ramGainCorrection        FloatTenths,
    ramMaxNumberOfChannels   Unsigned32,
    ramPointLossOffset       FloatTenths,
    ramRowStatus             RowStatus,
    ramTargetGainOffset      FloatTenths,
    ramPilotLaserDisable     TruthValue
}

ramMoId  OBJECT-TYPE
    SYNTAX     DisplayString
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION 
        "This is the primary Key of the objects e.g 1-A-1"
    ::= { ramEntry 1 }

ramProvEqptType  OBJECT-TYPE
    SYNTAX     InfnEqptType
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION 
        "The configured RAM type."
    ::= { ramEntry 2 }

ramGainCorrection  OBJECT-TYPE
    SYNTAX     FloatTenths
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION 
        "Parameter to enable or disable auto-gain control. If enabled, the gain
         of the Raman amplifiers is dynamically adjusted depending on the number
         of receiving channels."
    ::= { ramEntry 3 }

ramMaxNumberOfChannels  OBJECT-TYPE
    SYNTAX     Unsigned32
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION 
        "Maximum number of channels that can be provisioned over the REM-2 module."
    ::= { ramEntry 4 }

ramPointLossOffset  OBJECT-TYPE
    SYNTAX     FloatTenths
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION 
        "The RAM Point Loss Offset configuration is used to accommodate the
         point-losses such as connector losses and patch cable losses"
    ::= { ramEntry 5 }
    

    
ramRowStatus  OBJECT-TYPE
    SYNTAX     RowStatus
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION 
        " The row status of this RAM entry.
                Because rows in this table are indexed by entPhysicalIndex, to create a new row one must
                choose a value of entPhysicalIndex that is not already in use.
        
                A side-effect of the creation of a row in this table is the creation of a corresponding
                row in the eqptTable and the entPhysicalTable.
        
                The status may not be set to active if the ramMoId, ramProvEqptType and other read-create 
                objects  are not set to valid values.
        
                This row may only be deleted if it was a pre-provisioned row and the hardware is not present.
        
                If this row is deleted, the associated row in the Eqpt Table and entPhysicalTable will be
                deleted by the agent."
    ::= { ramEntry 6 }

ramTargetGainOffset  OBJECT-TYPE
    SYNTAX     FloatTenths
    MAX-ACCESS read-write
    STATUS     current
    DESCRIPTION
        ""
    ::= { ramEntry 7 }

ramPilotLaserDisable  OBJECT-TYPE
    SYNTAX     TruthValue
    MAX-ACCESS read-write
    STATUS     current
    DESCRIPTION
        ""
    ::= { ramEntry 8 }

ramCompliance  MODULE-COMPLIANCE
    STATUS     current
    DESCRIPTION 
        ""
    MODULE
        MANDATORY-GROUPS { ramGroup } 
    ::= { ramCompliances 1 }

ramGroup  OBJECT-GROUP
    OBJECTS { ramMoId, 
        ramProvEqptType,
        ramGainCorrection,
        ramMaxNumberOfChannels,
        ramPointLossOffset,
        ramRowStatus,
        ramTargetGainOffset,
        ramPilotLaserDisable
}
    STATUS     current
    DESCRIPTION 
        ""
    ::= { ramGroups 1 }
END




