-- ==================================================================
-- Copyright (c) 2010-2013 Hewlett-Packard Development Company, L.P.
--
-- Description: Dual Main Control MIB
--
-- Version: V1.2
-- History:
-- Revise History: 1) 2003-03-27 Fuzhenyu created
-- V1.1 2004-10-12 updated by gaolong
--      Import NOTIFICATION-TYPE.
--      MAX-ACCESS clause value from write-only to read-write.
--      Substitute hpnicfsMixTrapMib MODULE-IDENTITY with hpnicfsMixTrapMib OBJECT IDENTIFIER.
-- V1.2 2005-11-14
--      updated by Chen Xi
--      Modify description of all objects except hpnicfLswXSlotTable and hpnicfLswXSlotEntry.
--      updated by Yu Lan
--      Add process(3) value for hpnicfLswMainCardBoardStatus.
--      Add hpnicfLswCrossBarStatus.
-- ------------------------------------------------------------------
--
-- ------------------------------------------------------------------
--
-- Variable imported
--
-- ------------------------------------------------------------------
HPN-ICF-LswMix-MIB DEFINITIONS ::= BEGIN

IMPORTS

    MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE
        FROM SNMPv2-SMI
    hpnicfLswFrameIndex,hpnicfLswSlotIndex
        FROM HPN-ICF-LSW-DEV-ADM-MIB
    hpnicflswCommon
        FROM HPN-ICF-OID-MIB;

--  the document include the private data about device
-- ******************************beginning  ******************************
--
-- ------------------------------------------------------------------
    hpnicfLswMix MODULE-IDENTITY
            LAST-UPDATED "200106290000Z"
            ORGANIZATION
                ""
            CONTACT-INFO
                ""
            DESCRIPTION
            ""
            REVISION "200106290000Z"
            DESCRIPTION
            ""
            ::= { hpnicflswCommon  17 }


--  the document include the private data about device mix

hpnicfLswLastSwitchDate OBJECT-TYPE
    SYNTAX INTEGER
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
    "This object indicates the date of the most recent change
    to the mpu(Main Processing Unit). "
    ::= { hpnicfLswMix 1 }

hpnicfLswLastSwitchTime OBJECT-TYPE
    SYNTAX INTEGER
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
    "This object indicates the time of the most recent change
    to the mpu. "
    ::= { hpnicfLswMix 2 }

hpnicfLswMpuSwitchsNum OBJECT-TYPE
    SYNTAX INTEGER
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
    "This object indicates the total times of the mpu switched
    since the system start up. "
    ::= { hpnicfLswMix 3 }

hpnicfLswMpuSwitch OBJECT-TYPE
    SYNTAX INTEGER{
        switch(1)
    }
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
    "Setting this object will immediately switch the standby mpu
    to master mpu. Read is not supported. "
    ::= { hpnicfLswMix 4 }

--  the document include the private data about main card
hpnicfLswXSlotTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF HpnicfLswXSlotEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
    "The source main table."
     ::= { hpnicfLswMix 5 }

hpnicfLswXSlotEntry OBJECT-TYPE
    SYNTAX  HpnicfLswXSlotEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
    "An entry in the source main table."
    INDEX   { hpnicfLswFrameIndex, hpnicfLswSlotIndex }
     ::= { hpnicfLswXSlotTable 1 }

HpnicfLswXSlotEntry ::=
    SEQUENCE {
        hpnicfLswMainCardBoardStatus        INTEGER,
        hpnicfLswCrossBarStatus            INTEGER
    }

hpnicfLswMainCardBoardStatus OBJECT-TYPE
    SYNTAX  INTEGER{
      master(1),
      standby(2),
      process(3)
    }
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
       "The value describes whether the board is master, standby or process.
       master and standby are the possible states for the mpu, while process
       indicates the state of lpu(Line Processing Unit)"
     ::= { hpnicfLswXSlotEntry 1 }

hpnicfLswCrossBarStatus OBJECT-TYPE
    SYNTAX INTEGER{
       master(1),
       standby(2)
       }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
       "The value describes whether the crossbar is master or standby. It is
       master when it's in the master mpu board, standby when in the standby mpu.
       But both crossbars in mpus are master when the device in load-balance mode."
    ::= { hpnicfLswXSlotEntry 2 }

   hpnicfsMixTrapMib OBJECT IDENTIFIER        ::= { hpnicfLswMix  10 }

   hpnicfSlaveSwitchOver NOTIFICATION-TYPE
      STATUS  current
      DESCRIPTION
      "An hpnicfSlaveSwitchOver trap signifies that the action of
      standby mpu switching to master has completed. "
      ::= { hpnicfsMixTrapMib 1 }

END
