--*****************************************************************
-- CISCO_DMN_DSG_CI.mib : Mib file for Common Interface control and status.
--
-- October 2010, TEL MIB Team
--
-- Copyright (c) 1999-2012 Cisco Systems, Inc. All rights reserved.
--*****************************************************************

CISCO-DMN-DSG-CI-MIB

DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY,
    OBJECT-TYPE, Integer32
        FROM SNMPv2-SMI
    DisplayString, RowStatus
        FROM SNMPv2-TC
    OBJECT-GROUP, MODULE-COMPLIANCE
        FROM SNMPv2-CONF
    ciscoDSGUtilities
        FROM CISCO-DMN-DSG-ROOT-MIB;


ciscoDSGCI  MODULE-IDENTITY
    LAST-UPDATED  "201203200800Z" -- March 20 2012 08:00:00 GMT
    ORGANIZATION    "Cisco Systems, Inc."
    CONTACT-INFO
        "Cisco Systems, Inc.
        Customer Service
        Postal: 170 W Tasman Drive
        San Jose, CA 95134
        USA
        Tel: +1 800 553 NETS

        E-mail: cs-ipsla@cisco.com"
    DESCRIPTION    "Cisco DSG Common Interface MIB."

    REVISION       "201203200800Z"
    DESCRIPTION    "V01.00.06 2012-03-20
                    Updated for D9854 R4 Release."

    REVISION       "201010130800Z" 
    DESCRIPTION    "V01.00.05 2010-10-13
                    Updated for migrating D985X/D9865 to generic
                    logic."

    REVISION       "201008300900Z" 
    DESCRIPTION    "V01.00.04 2010-08-30
                    Updated for adherence to SNMPv2 format."

                    REVISION       "201004120900Z" 
    DESCRIPTION    "V01.00.03 2010-04-12
                    New MIB objects are added in ciCompStatusTable
                    and ciSystemIDTable."

    REVISION       "201003220500Z"
    DESCRIPTION    "V01.00.02 2010-03-22
                    The Syntax of Unsigned32 MIB objects whose range 
                    is within the range
                    of Integer32, is updated to Integer32."

    REVISION       "201002121200Z"
    DESCRIPTION    "V01.00.01 2010-02-12
                    The Syntax of read-only objects is updated to 
                    DisplayString."

    REVISION       "200912071200Z"
    DESCRIPTION    "V01.00.00 2009-12-07
                    Initial Version."

    ::= { ciscoDSGUtilities 12 }

ciTable                       OBJECT IDENTIFIER ::= { ciscoDSGCI 2 }

-- *************************************
-- ciTable Branch
-- *************************************

ciConfigTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF CiConfigEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "CI Config Table."
    ::= { ciTable 1 }

ciConfigEntry OBJECT-TYPE
    SYNTAX  CiConfigEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "Entry for CI Config Table."
    INDEX { ciConfigInstance }
    ::= { ciConfigTable 1 }

CiConfigEntry ::= SEQUENCE
{
  ciConfigInstance    Integer32,
  ciConfigQuery       INTEGER,
  ciConfigAutoReset   INTEGER,
  ciConfigListMgmt    INTEGER,
  ciConfigOrgNetIDUse INTEGER,
  ciConfigTransportId Integer32,
  ciConfigOrgNetID    Integer32,
  ciConfigTsHandling  INTEGER
}

ciConfigInstance OBJECT-TYPE
    SYNTAX  Integer32 (1..1)
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "Instance for CiConfig Table."
    ::= { ciConfigEntry 1 }

ciConfigQuery OBJECT-TYPE
    SYNTAX  INTEGER {
            disable(1),
            enable(2)
        }
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
        "Control of CAM functionality."
    ::= { ciConfigEntry 2 }

ciConfigAutoReset OBJECT-TYPE
    SYNTAX  INTEGER {
            disable(1),
            enable(2)
        }
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
        "Permit Auto Reset of CAM."
    ::= { ciConfigEntry 3 }

ciConfigListMgmt OBJECT-TYPE
    SYNTAX  INTEGER {
            addDelete(1),
            updateAll(2)
        }
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
        "CI List Management Procedure."
    ::= { ciConfigEntry 4 }

ciConfigOrgNetIDUse OBJECT-TYPE
    SYNTAX  INTEGER {
            disable(1),
            enable(2)
        }
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
        "Enable/Disable the TS/ONID check."
    ::= { ciConfigEntry 5 }

ciConfigTransportId OBJECT-TYPE
    SYNTAX Integer32(0..65535)
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
        "Transport Identifier."
    ::= { ciConfigEntry 6 }

ciConfigOrgNetID OBJECT-TYPE
    SYNTAX  Integer32(0..65535)
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
        "Original Network ID."
    ::= { ciConfigEntry 7 }
    
ciConfigTsHandling OBJECT-TYPE
     SYNTAX  INTEGER {
            entire(1),
            partial(2)
        }
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
		 "Select whether to use the CAM to decrypt the entire transport
		 stream, or just the PIDs being used by the active services."
     ::= {ciConfigEntry 8 }

-- *************************************
-- ciProgramDecrTable Branch
-- *************************************

ciProgramDecrTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF CIProgramDecrEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "CI program Decrypt Table."
    ::= { ciTable 2 }

    ciProgramDecrEntry OBJECT-TYPE
    SYNTAX  CIProgramDecrEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "Entry for CI program Decrypt Table."
    INDEX   { ciProgramDecrPEID }
    ::= { ciProgramDecrTable 1 }

CIProgramDecrEntry ::=  SEQUENCE
{
  ciProgramDecrPEID       Integer32,
  ciProgramDecrDecrypt    INTEGER,
  ciProgramDecrCISlot     INTEGER
}

ciProgramDecrPEID OBJECT-TYPE
    SYNTAX  Integer32 (1..32)
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "Decrypt key."
    ::= { ciProgramDecrEntry 1 }

ciProgramDecrDecrypt OBJECT-TYPE
    SYNTAX  INTEGER {
            off(1),
            on(2),
            comp(3)
        }
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
        "Decrypt mode."
    ::= { ciProgramDecrEntry 2 }

ciProgramDecrCISlot OBJECT-TYPE
    SYNTAX  INTEGER {
            top(1),
            bottom(2)
        }
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
        "Decrypt CI slot."
    ::= { ciProgramDecrEntry 3 }


-- *************************************
-- ciCompConfigTable Branch
-- *************************************

ciCompConfigTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF CICompConfigEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "CI Component config Table."
    ::= { ciTable 3 }

ciCompConfigEntry OBJECT-TYPE
    SYNTAX  CICompConfigEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "Entry for CI Component config Table."
    INDEX   { ciCompConfigID }
    ::= { ciCompConfigTable 1 }

    CICompConfigEntry ::=  SEQUENCE
{
  ciCompConfigID             Integer32,
  ciCompConfigPEID           Integer32,
  ciCompConfigMode           INTEGER,
  ciCompConfigPID            Integer32,
  ciCompConfigStreamCategory INTEGER,
  ciCompConfigStreamTypeVal  Integer32,
  ciCompConfigStreamInstance Integer32,
  ciCompConfigRowCmdStatus   RowStatus
}

ciCompConfigID OBJECT-TYPE
     SYNTAX  Integer32(1..32)
     MAX-ACCESS  not-accessible
     STATUS  current
     DESCRIPTION
         "CI Slot Index."
     ::= { ciCompConfigEntry 1 }

ciCompConfigPEID OBJECT-TYPE
     SYNTAX  Integer32 (1..32)
     MAX-ACCESS  read-create
     STATUS  current
     DESCRIPTION
         "Program Entry ID."
     ::= { ciCompConfigEntry 2 }

ciCompConfigMode OBJECT-TYPE
     SYNTAX  INTEGER {
             pid(1),
             stream(2)
         }
     MAX-ACCESS  read-create
     STATUS  current
     DESCRIPTION
         "Stream component Config Mode."
     ::= { ciCompConfigEntry 3 }

ciCompConfigPID OBJECT-TYPE
     SYNTAX  Integer32(0..8192)
     MAX-ACCESS  read-create
     STATUS  current
     DESCRIPTION
         "PID value: only used if CompConfigMode is PID."
     ::= { ciCompConfigEntry 4 }

ciCompConfigStreamCategory OBJECT-TYPE
     SYNTAX  INTEGER {
             vid(2),
             aud(3),
             subt(4),
             ttx(8),
             user(12)
         }
     MAX-ACCESS  read-create
     STATUS  current
     DESCRIPTION
         "Stream Category: only used if CompConfigMode is STREAM."
     ::= { ciCompConfigEntry 5 }

ciCompConfigStreamTypeVal OBJECT-TYPE
     SYNTAX  Integer32 (0..255)
     MAX-ACCESS  read-create
     STATUS  current
     DESCRIPTION
         "Stream Type value: only used if CompConfigMode is STREAM,
          and StreamCategory is UNKN."
     ::= { ciCompConfigEntry 6 }

ciCompConfigStreamInstance OBJECT-TYPE
     SYNTAX  Integer32(1..64)
     MAX-ACCESS  read-create
     STATUS  current
     DESCRIPTION
         "Stream Instance: only used if CompConfigMode is STREAM,
          used to differentiate between multiple entries for the same
          stream type."
     ::= { ciCompConfigEntry 7 }

ciCompConfigRowCmdStatus OBJECT-TYPE
    SYNTAX  RowStatus
    MAX-ACCESS  read-create
    STATUS  current
    DESCRIPTION
         "To be used for creating and deleting rows in this table."
     ::= { ciCompConfigEntry 8 }

-- *************************************
-- ciCompStatusTable Branch
-- *************************************

ciCompStatusTable OBJECT-TYPE
     SYNTAX  SEQUENCE OF CICompStatusEntry
     MAX-ACCESS  not-accessible
     STATUS  current
     DESCRIPTION
         "CI Component status table."
     ::= { ciTable 4 }

ciCompStatusEntry OBJECT-TYPE
     SYNTAX  CICompStatusEntry
     MAX-ACCESS  not-accessible
     STATUS  current
     DESCRIPTION
         "Entry for CI Component status table."
     INDEX   { ciStatusSlot }
     ::= { ciCompStatusTable 1 }

CICompStatusEntry ::=  SEQUENCE
{
  ciStatusSlot      INTEGER,
  ciStatusSysName   DisplayString,
  ciStatusMFGID     DisplayString,
  ciStatusMFGCode   DisplayString,
  ciStatusSerialNum DisplayString,
  ciStatusHWVer     DisplayString,
  ciStatusAppVer    DisplayString,
  ciStatusCompany   DisplayString,
  ciStatusProdname  DisplayString,
  ciStatusCamStatus INTEGER
}

ciStatusSlot OBJECT-TYPE
     SYNTAX  INTEGER {
             top(1),
             bottom(2)
          }
     MAX-ACCESS  not-accessible
     STATUS  current
     DESCRIPTION
         "CI Status key."
     ::= { ciCompStatusEntry 1 }

ciStatusSysName OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(0..32))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "System Name."
     ::= { ciCompStatusEntry 2 }

ciStatusMFGID OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(1..32))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Application Manufacture ID.The range is from 0 to 4294967295."
     ::= { ciCompStatusEntry 3 }

ciStatusMFGCode OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(1..32))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Manufacture Code.The range is from 0 to 4294967295."
     ::= { ciCompStatusEntry 4 }

ciStatusSerialNum OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(0..63))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Serial Number."
     ::= { ciCompStatusEntry 5 }

ciStatusHWVer OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(0..63))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Hardware Version."
     ::= { ciCompStatusEntry 6 }

ciStatusAppVer OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(0..63))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Application Version."
     ::= { ciCompStatusEntry 7 }

ciStatusCompany OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(0..39))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Maufacturer name."
     ::= { ciCompStatusEntry 8 }

ciStatusProdname OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(0..39))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Product name."
     ::= { ciCompStatusEntry 9 }

ciStatusCamStatus OBJECT-TYPE
     SYNTAX  INTEGER {
             notReady(1),
             ready(2)
          }
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "CAM Status."
     ::= { ciCompStatusEntry 10 }

-- *************************************
-- ciSystemIDTable Branch
-- *************************************

ciSystemIDTable OBJECT-TYPE
     SYNTAX  SEQUENCE OF CISystemIDEntry
     MAX-ACCESS  not-accessible
     STATUS  current
     DESCRIPTION
         "CI System ID Table."
     ::= { ciTable 5 }

ciSystemIDEntry OBJECT-TYPE
     SYNTAX  CISystemIDEntry
     MAX-ACCESS  not-accessible
     STATUS  current
     DESCRIPTION
         "Entry for CI System ID Table."
     INDEX   { ciSystemIDSlot, ciSystemIDIndex }
     ::= { ciSystemIDTable 1 }

CISystemIDEntry ::=  SEQUENCE
{
  ciSystemIDSlot      INTEGER,
  ciSystemIDIndex     Integer32,
  ciSystemIDName      DisplayString,
  ciSystemID          DisplayString,
  ciSystemSysNameID   DisplayString
}

ciSystemIDSlot OBJECT-TYPE
     SYNTAX  INTEGER {
             top(1),
             bottom(2)
         }
     MAX-ACCESS  not-accessible
     STATUS  current
     DESCRIPTION
         "CAM Slot ID."
     ::= { ciSystemIDEntry 1 }

ciSystemIDIndex OBJECT-TYPE
     SYNTAX  Integer32 (1..32)
     MAX-ACCESS  not-accessible
     STATUS  current
     DESCRIPTION
         "System ID index."
     ::= { ciSystemIDEntry 2 }

ciSystemIDName OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(1..32))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "CA System Name."
     ::= { ciSystemIDEntry 3 }

ciSystemID OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(1..32))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "CA System ID.The range is from 0 to 4294967295."
     ::= { ciSystemIDEntry 4 }

ciSystemSysNameID OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(0..37))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "CA System Name with ID."
     ::= { ciSystemIDEntry 5 }

END

