--****************************************************************************
--
-- Copyright (c) 2007-2009 Broadcom Corporation
--
-- This program is the proprietary software of Broadcom Corporation and/or
-- its licensors, and may only be used, duplicated, modified or distributed
-- pursuant to the terms and conditions of a separate, written license
-- agreement executed between you and Broadcom (an "Authorized License").
-- Except as set forth in an Authorized License, Broadcom grants no license
-- (express or implied), right to use, or waiver of any kind with respect to
-- the Software, and Broadcom expressly reserves all rights in and to the
-- Software and all intellectual property rights therein.  IF YOU HAVE NO
-- AUTHORIZED LICENSE, THEN YOU HAVE NO RIGHT TO USE THIS SOFTWARE IN ANY WAY,
-- AND SHOULD IMMEDIATELY NOTIFY BROADCOM AND DISCONTINUE ALL USE OF THE
-- SOFTWARE.  
--
-- Except as expressly set forth in the Authorized License,
--
-- 1.     This program, including its structure, sequence and organization,
-- constitutes the valuable trade secrets of Broadcom, and you shall use all
-- reasonable efforts to protect the confidentiality thereof, and to use this
-- information only in connection with your use of Broadcom integrated circuit
-- products.
--
-- 2.     TO THE MAXIMUM EXTENT PERMITTED BY LAW, THE SOFTWARE IS PROVIDED
-- "AS IS" AND WITH ALL FAULTS AND BROADCOM MAKES NO PROMISES, REPRESENTATIONS
-- OR WARRANTIES, EITHER EXPRESS, IMPLIED, STATUTORY, OR OTHERWISE, WITH
-- RESPECT TO THE SOFTWARE.  BROADCOM SPECIFICALLY DISCLAIMS ANY AND ALL
-- IMPLIED WARRANTIES OF TITLE, MERCHANTABILITY, NONINFRINGEMENT, FITNESS FOR
-- A PARTICULAR PURPOSE, LACK OF VIRUSES, ACCURACY OR COMPLETENESS, QUIET
-- ENJOYMENT, QUIET POSSESSION OR CORRESPONDENCE TO DESCRIPTION. YOU ASSUME
-- THE ENTIRE RISK ARISING OUT OF USE OR PERFORMANCE OF THE SOFTWARE.
--
-- 3.     TO THE MAXIMUM EXTENT PERMITTED BY LAW, IN NO EVENT SHALL BROADCOM
-- OR ITS LICENSORS BE LIABLE FOR (i) CONSEQUENTIAL, INCIDENTAL, SPECIAL,
-- INDIRECT, OR EXEMPLARY DAMAGES WHATSOEVER ARISING OUT OF OR IN ANY WAY
-- RELATING TO YOUR USE OF OR INABILITY TO USE THE SOFTWARE EVEN IF BROADCOM
-- HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES; OR (ii) ANY AMOUNT IN
-- EXCESS OF THE AMOUNT ACTUALLY PAID FOR THE SOFTWARE ITSELF OR U.S. $1,
-- WHICHEVER IS GREATER. THESE LIMITATIONS SHALL APPLY NOTWITHSTANDING ANY
-- FAILURE OF ESSENTIAL PURPOSE OF ANY LIMITED REMEDY.
--
--****************************************************************************
--    Filename: brcm-cm-emta-mgmt.mib
--    Author:   Kevin O'Neal
--    Creation Date: August 9, 2007
--
--****************************************************************************
--    Description:
--
--		private MIB for runtime (not factory) eMTA management
--
--****************************************************************************
--    Revision History:
--
--**************************************************************************

BRCM-CM-EMTA-MGMT-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY,
    OBJECT-TYPE,
    NOTIFICATION-TYPE,
    Unsigned32
        FROM SNMPv2-SMI
    TruthValue
        FROM SNMPv2-TC
    OBJECT-GROUP,
    MODULE-COMPLIANCE,
    NOTIFICATION-GROUP
        FROM SNMPv2-CONF
    cmEmbeddedDevices
        FROM BRCM-CM-MGMT-MIB;

cmEmtaMgmt MODULE-IDENTITY
    LAST-UPDATED "200902240000Z"
    ORGANIZATION "Broadcom Corporation"
    CONTACT-INFO
        "	BANANA-CABLEDATA
                (cableData branch of the
                Broadcom Assigned Numbers and Naming Authority)
                Broadcom Corporation

        Postal: 4385 River Green Parkway
                Duluth, GA  30096
                USA

           Tel: +1 770 232-0018

        E-mail: banana-cabledata@broadcom.com"
    DESCRIPTION
        "Broadcom MIB for runtime management of CM features which are only
         applicable on a device which contains an embedded PacketCable MTA."
    REVISION      "200902240000Z"
    DESCRIPTION
        "Added object cmEmtaPingTestInterval, cmEmtaPingTestFailEMTAThreshold, and
         cmEmtaPingTestFailCMThreshold."
    REVISION      "200806121200Z"
    DESCRIPTION
        "Added object cmEmtaSafeReset."
    REVISION      "200806120000Z"
    DESCRIPTION
        "Added object cmEmtaRegistrationState."
    REVISION      "200708300000Z"
    DESCRIPTION
        "Added objects cmEmtaNonSecureFlowDefaultReadCommunity and
         cmEmtaNonSecureFlowDefaultWriteCommunity."
    REVISION      "200708090000Z"
    DESCRIPTION
        "Initial version of this MIB module."
::= { cmEmbeddedDevices 1 }

--
-- Placeholder for any future textual conventions 
--

--
-- Placeholder for any future notifications (traps)
-- 
cmEmtaNotification     OBJECT IDENTIFIER ::= { cmEmtaMgmt 0 }

--
-- Management objects
--
cmEmtaMIBObjects       OBJECT IDENTIFIER ::= { cmEmtaMgmt 1 }

--
-- cmEmtaBase - objects for general-purpose CM - eMTA control
--

cmEmtaBase       OBJECT IDENTIFIER ::= { cmEmtaMIBObjects 1 }

cmEmtaBasicFlowDhcpAccept OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This object may be used to expedite the acceptance of the EMTA DHCP
         offer when option 122.6 of the offer indicates basic or hybrid
         provisioning flow.
         
         If set to true(1), DHCP offer rule (b) from MTA initialization flow
         MTA2 will not be enforced.  This means that the EMTA will not retry 
         the DHCP discover process in search of an offer which specifies the 
         secure flow, thus resulting in the EMTA becoming operational more
         quickly.
         
         It is important to note that in this configuration the CM is in 
         violation of the PacketCable provisioning specification."
    REFERENCE
        "PacketCable 1.5 Specification MTA Device Provisioning
         PKT-SP-PROV1.5-I03-070412, section 7.2.1, initialization flow MTA2"
    DEFVAL { false }
    ::= { cmEmtaBase 1 }
    
cmEmtaNonSecureFlowDefaultReadCommunity OBJECT-TYPE
    SYNTAX       OCTET STRING
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "The default community string which will be used for read-only access 
         in the EMTA non-secure provisioning flow.  When read, this object will 
         always return an empty string."
    DEFVAL { "private" }
    ::= { cmEmtaBase 2 }

cmEmtaNonSecureFlowDefaultWriteCommunity OBJECT-TYPE
    SYNTAX       OCTET STRING
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "The default community string which will be used for read-write access 
         in the EMTA non-secure provisioning flow.  When read, this object will
         always return an empty string."
    DEFVAL { "private" }
    ::= { cmEmtaBase 3 }

cmEmtaRegistrationState OBJECT-TYPE
    SYNTAX      INTEGER {
                cmScanning(1),
                cmRanging(2),
                cmDhcp(3),
                cmTftp(4),
                cmRegistered(5),
                mtaDhcp(6),
                mtaTftp(7),
                mtaProvisioned(8),
                mtaRsip(9),
                mtaOperational(10),
                mtaRejected(11)
    }
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Indicates the current state of the CM and EMTA provisioning and 
         registration process."
    ::= { cmEmtaBase 4 }
    
cmEmtaSafeReset OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Setting this object to true(1) will cause the device to reset only 
         when all telephony lines are on-hook.  If one or more lines are 
         off-hook when the reset is invoked then the reset will be queued and 
         will occur once all lines are on-hook.  Reading this object returns 
         false(2) unless a reset is pending, in which case it returns true(1).  
         A pending reset may be cancelled by setting this object to false(2).
         
         Note that the behavior of this object is also affected by the values of
         objects emtaPostCallCompletionResetDelay and emtaMaxResetDelay as 
         described in the the BRCM-EMTA-MGMT-MIB."
    ::= { cmEmtaBase 5 }
    
cmEmtaPingTestInterval OBJECT-TYPE
    SYNTAX      Unsigned32
    UNITS       "minutes"
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This object identifies the time interval, in minutes, that the eMTA should
         perform a ping test from the eMTA stack to the default gateway.  If set to
         0, this feature will be disabled."
    DEFVAL {0}
    ::= { cmEmtaBase 6 }

cmEmtaPingTestFailEMTAThreshold OBJECT-TYPE
    SYNTAX      Unsigned32 
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This object identifies the number of consecutive failed ping tests to 
        trigger an eMTA reset.  If set to 0, this feature will be disabled."
    DEFVAL {0}
    ::= { cmEmtaBase 7 }

cmEmtaPingTestFailCMThreshold OBJECT-TYPE
    SYNTAX      Unsigned32 
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This object identifies the number of consecutive failed ping tests to 
        trigger a CM reset and eMTA reset.  
        If set to 0, this feature will be disabled."
    DEFVAL {0}
    ::= { cmEmtaBase 8 }


--
-- Conformance definitions
--
cmEmtaConformance      OBJECT IDENTIFIER ::= { cmEmtaMgmt 2 }

--
-- Compliance Statements
--
cmEmtaCompliances  OBJECT IDENTIFIER ::= { cmEmtaConformance 1 }
cmEmtaGroups       OBJECT IDENTIFIER ::= { cmEmtaConformance 2 }

cmEmtaCompliance  MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION
        "The compliance statement for cablemodem devices which include an
         embedded PacketCable MTA."
    MODULE
    MANDATORY-GROUPS {
               cmEmtaBaseGroup
    }
    ::= { cmEmtaCompliances 1 }


cmEmtaBaseGroup OBJECT-GROUP
    OBJECTS {
        cmEmtaBasicFlowDhcpAccept,
        cmEmtaNonSecureFlowDefaultReadCommunity,
        cmEmtaNonSecureFlowDefaultWriteCommunity,
        cmEmtaRegistrationState,
        cmEmtaSafeReset
    }
    STATUS      current
    DESCRIPTION
        "A set of objects supported by all agents which implement this MIB."
    ::= { cmEmtaGroups 1 }

END

