--*****************************************************************
-- CISCO-DMN-DSG-DL.mib: Mib file for Receiver Download feature.
--
-- October 2010, TEL MIB Team
--
-- Copyright (c) 1999-2010 by Cisco Systems, Inc.
-- All rights reserved.
--*****************************************************************

CISCO-DMN-DSG-DL-MIB

DEFINITIONS ::= BEGIN

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


ciscoDSGDl MODULE-IDENTITY
    LAST-UPDATED    "201010130800Z" -- October 13 2010 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 Receiver Download Feature MIB."

    REVISION      "201010130800Z"
    DESCRIPTION   "V01.00.05 2010-10-13
                   The options for dlBank, dlType are changed for
                   migrating D985X/D9865 to generic logic."

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

    REVISION      "201005250800Z"
    DESCRIPTION   "V01.00.03 2010-05-25
                   The options for dlAboutReboot is modified."

    REVISION      "201002121500Z"
    DESCRIPTION   "V01.00.02 2010-02-12
                   The Syntax of read-only objects in dlcfg group is
                   updated to DisplayString."

    REVISION       "200912201500Z"
    DESCRIPTION    "V01.00.01 2009-12-20
                    Added dlCfg Group."

    REVISION       "200911221500Z"
    DESCRIPTION    "V01.00.00 2009-11-22
                    Initial Version."

    ::= { ciscoDSGUtilities 1 }


dlAbout         OBJECT IDENTIFIER ::= { ciscoDSGDl 1 }
dlDownload      OBJECT IDENTIFIER ::= { ciscoDSGDl 2 }
dlCfg           OBJECT IDENTIFIER ::= { ciscoDSGDl 3 }



-- **********************************************************************
-- dlAbout Branch
-- **********************************************************************

dlAboutCurrentVer OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(0..49))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "The version of the current application software in the format
         ##.##.##.X
         meaning <MajorSWVersion>.<MinorSWVersion>.<NanoSWVersion>.x."
     ::= { dlAbout 1 }

dlAboutSafeVer OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(0..49))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "The version of the safe application software in the format
         ##.##.##.X
         meaning <MajorSWVersion>.<MinorSWVersion>.<NanoSWVersion>.x."
     ::= { dlAbout 2 }

dlAboutBootVer OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(0..49))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "The version of the boot software in the format ##.##.##.X
          meaning <MajorSWVersion>.<MinorSWVersion>.<NanoSWVersion>.x."
     ::= { dlAbout 3 }

dlAboutProductId OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(0..49))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "The product ID string.
         The D9854 will return: D9854
         The D9858 will return: D9858
         The D9865 will return: D9865
         It is advisable that SNMP managers validate this ID string
         matches what was expected.
         If this parameter does not exist, SNMP managers must disregard
         the validation step and allow a more limited set of options
         to function."
     ::= { dlAbout 4 }

dlAboutTrackingId OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(0..32))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "The product tracking ID."
     ::= { dlAbout 5 }

dlAboutChangeApp OBJECT-TYPE
     SYNTAX  Integer32(0..8)
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "The application record index of the new version to run.
         Setting this reboots the system to use the new version."
     ::= { dlAbout 6 }

dlAboutEraseApp OBJECT-TYPE
     SYNTAX  Integer32(0..8)
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "The application record index of the version to erase.
         The running version or the Safe App can't be erased."
     ::= { dlAbout 7 }

dlAboutReboot OBJECT-TYPE
     SYNTAX  INTEGER  {
             no(1),
             yes(2)
          }
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "Setting to yes(2) reboots the system."
     ::= { dlAbout 8 }


-- ********************************************************************
-- dlAboutAppTable Branch
-- ********************************************************************

dlAboutAppTable OBJECT-TYPE
     SYNTAX  SEQUENCE OF DlAboutAppEntry
     MAX-ACCESS  not-accessible
     STATUS  current
     DESCRIPTION
         "List of available application versions to reboot into."
     ::= { dlAbout 9 }

dlAboutAppEntry OBJECT-TYPE
     SYNTAX  DlAboutAppEntry
     MAX-ACCESS  not-accessible
     STATUS  current
     DESCRIPTION
             "Version information for each stored application."
     INDEX   { dlAboutAppIndex }
     ::= { dlAboutAppTable 1 }

DlAboutAppEntry ::=
     SEQUENCE {
         dlAboutAppIndex         Integer32,
         dlAboutAppString        DisplayString
     }

dlAboutAppIndex OBJECT-TYPE
     SYNTAX  Integer32(0..8)
     MAX-ACCESS  not-accessible
     STATUS  current
     DESCRIPTION
             "The index of the application. This value can be used with
             ciscoVersionChangeApp to boot into a different
             application."
     ::= { dlAboutAppEntry 1 }

dlAboutAppString OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(0..35))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "The version of the available application in the format
         ##.##.##.X
          meaning <MajorSWVersion>.<MinorSWVersion>.<NanoSWVersion>.x."
     ::= { dlAboutAppEntry 2 }



-- ********************************************************************
-- dlDownload Branch
-- ********************************************************************

dlDownloadTftpServerIP OBJECT-TYPE
     SYNTAX  IpAddress
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "The IP address of the TFTP server that can provide an MDR
         software application."
     ::= { dlDownload 1 }

dlDownloadMicroCode OBJECT-TYPE
    SYNTAX  Integer32(0..255)
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
        "Microprocessor code type, must match the unit's type for
        download."
    ::=  { dlDownload 2 }

dlDownloadCodeVersion OBJECT-TYPE
    SYNTAX  Integer32(0..65535)
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
        "Code version major and minor as two bytes.Down loaded code
        version has to be greater than the lesser of the Safe App
        and Production version or the download is rejected.

        If the production version limit is 99.99.00 then all downloads
        are accepted, if 0.00.00 then use the safe app as the limit
        version.  For any other value use the smaller of the safe app
        or production limit version. "
    ::=  { dlDownload 3 }

dlDownloadNanoVersion OBJECT-TYPE
    SYNTAX  Integer32(0..255)
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
        "Nano code version, a third level code revision."
    ::=  { dlDownload 4 }

dlDownloadBankSelect OBJECT-TYPE
    SYNTAX  Integer32(0..255)
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
        "Bank select, for example 0 code, 128 database."
    ::=  { dlDownload 5 }

dlDownloadForcedFlag OBJECT-TYPE
    SYNTAX  INTEGER  {
            yes(1),
            no(2)
         }
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
        "Forced flag forces a code load. Should be set to yes.
         No is for future use."
    ::=  { dlDownload 6 }

dlDownloadTransitionBlocked OBJECT-TYPE
    SYNTAX  Integer32(0..255)
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
        "Transition blocked, allows certain upgrades to be blocked.
         For future use."
    ::=  { dlDownload 7 }

dlDownloadTftpFilename OBJECT-TYPE
     SYNTAX  DisplayString (SIZE(0..255))
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "The filename and path to download from the TFTP server.
          Setting this value initiates the download. IP address,
          micro code, code version, nano version and forced flag
          need to be set before setting the filename."
     ::= { dlDownload 8 }

dlDownloadAbort OBJECT-TYPE
     SYNTAX  INTEGER {
             no(0),
             abort(1)
          }
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "Selecting abort(1) aborts a download if it is in progress."
     ::= { dlDownload 9 }

dlDownloadState OBJECT-TYPE
     SYNTAX  INTEGER {
             idle(0),
             busy(1)
          }
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Current download state, reports any download activity,
          over the air or rear panel."
     ::= { dlDownload 10 }

dlDownloadErrorStatus OBJECT-TYPE
     SYNTAX  INTEGER {
             ok(0),
             reject(1),
             fails(2)
          }
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Status of tftp download, valid following a download."
     ::= { dlDownload 11 }


--**********************************
-- Download Configuration Branch
--**********************************

dlStatus OBJECT-TYPE
     SYNTAX  INTEGER {
             noTrigger(1),
             download(2),
             trigger(3)
          }
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Gives the status of the download."
     ::= { dlCfg 1 }

dlMode  OBJECT-TYPE
     SYNTAX  INTEGER {
             always(1),
             once(2),
             never(3)
          }
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "Download Mode:
         Always - will load all downloads to flash and reboot.
         Once - will load next download to flash and reboot, then 
                switch to Never.
         Never - will never load and it loads only if Forced."
     ::= { dlCfg 2 }

dlType  OBJECT-TYPE
     SYNTAX  INTEGER {
             none(1),
             rearPanel(2),
             http(3),
             overAir(4)
          }
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Download Type."
     ::= { dlCfg 3 }

dlBank  OBJECT-TYPE
     SYNTAX  INTEGER {
             app5514(1),
             app7109(2),
             fpga7109(3),
             sat7109(4),
             screenLogo(5),
             menuLogo(6),
             ethLogo(7),
             appPPC(8),
             appVASA(9),
             dbUpdate(10),
             execBin(11)
          }
     MAX-ACCESS  read-only
     STATUS current
     DESCRIPTION
         "Download bank in use."
     ::= { dlCfg 4 }

dlTotalCdt  OBJECT-TYPE
     SYNTAX DisplayString (SIZE(0..32))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Total CDTs received.The range is from 0 to 65535."
     ::= { dlCfg 5 }

dlReceived  OBJECT-TYPE
     SYNTAX DisplayString (SIZE(0..32))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Total download pkts received.The range is from 0 to 65535."
     ::= { dlCfg 6 }

dlRejected  OBJECT-TYPE
     SYNTAX DisplayString (SIZE(0..32))
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Total failed pkts.The range is from 0 to 65535."
     ::= { dlCfg 7 }

dlCommand  OBJECT-TYPE
     SYNTAX  INTEGER {
             restart(1),
             abort(2),
             writeOnly(3)
          }
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "Command to download.
          Setting abort(2) stops a download in progress.
          Setting restart(1) restarts the download."
     ::= { dlCfg 8 }

END

