-- ============================================================================
-- Copyright (C) 2018 by  HUAWEI TECHNOLOGIES. All rights reserved.
-- Description: This file is an extension of LLDP-MIB. It provides such functions of 
--         globally enabling or disabling the LLDP protocol, enabling the global
--         alarm, clearing statistics on ports and configuring network management 
--         IP addresses and some alarms.
-- Reference:  
-- Version: V1.10
-- ============================================================================
HUAWEI-DSLAM-LLDP-MIB DEFINITIONS ::= BEGIN
        IMPORTS

     TruthValue, TEXTUAL-CONVENTION, DisplayString, MacAddress,DateAndTime, RowStatus
        FROM SNMPv2-TC
     ifIndex
        FROM IF-MIB
       
     MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
        FROM SNMPv2-CONF

    MODULE-IDENTITY, OBJECT-TYPE, Integer32, Counter64, IpAddress,
    OBJECT-IDENTITY, Unsigned32, NOTIFICATION-TYPE
        FROM SNMPv2-SMI

     InterfaceIndex
        FROM IF-MIB

    lldpPortConfigPortNum,lldpLocSysCapSupported,lldpLocSysCapEnabled,
    LldpPortNumber,LldpPortId
        FROM LLDP-MIB 
        
    hwDatacomm
        FROM HUAWEI-MIB;
 
    hwLldpMIB MODULE-IDENTITY
        LAST-UPDATED "201801050000Z"
        ORGANIZATION "Huawei Technologies Co.,Ltd."
            CONTACT-INFO 
                "Huawei Industrial Base
                 Bantian, Longgang
                 Shenzhen 518129
                 People's Republic of China 
                 Website: http://www.huawei.com
                 Email: support@huawei.com
                "
        DESCRIPTION
            "This file is an extension of LLDP-MIB. It provides such functions of 
           globally enabling or disabling the LLDP protocol, enabling the global
           alarm, clearing statistics on ports and configuring network management 
           IP addresses and some alarms."   
           
        --  Revision history
        REVISION     "201801050000Z"
        DESCRIPTION  "V1.10, modify decription of hwLldpLocManIPAddr"
        
        REVISION     "201712250000Z"
        DESCRIPTION  "V1.09, modified the description of hwOntPortLldpNeighbourTable, hwOntPortLldpNeighbourEntry and hwOntPortLldpLocalPowerType."

        REVISION     "201603310000Z"
        DESCRIPTION  "V1.08, added hwOntPortLldpNeighbourAutoNegotiationSupport, hwOntPortLldpNeighbourAutoNegotiationConf, hwOntPortLldpNeighbourOperMauType, hwOntPortLldpNeighbourPowerType, hwOntPortLldpNeighbourPowerSource, hwOntPortLldpNeighbourPowerPriority.
                             modified the name from hwOntPortLldpNeighbourMedPdPower to hwOntPortLldpNeighbourPowerValue.
                             added hwOntPortLldpLocalTable."
        
        REVISION     "201509160000Z"
        DESCRIPTION  "V1.07, modified the syntax of hwOntLldpVoiceVlanMacDesc."

        REVISION     "201508010000Z"
        DESCRIPTION  "V1.06, modified the description of hwOntVoiceNativeVlan8021p, hwOntPortLldpStatisticsTotalTransmittedFrames, 
                            hwOntPortLldpStatisticsTotalReceivedFrames and hwOntPortLldpStatisticsTotalDiscardedFrames."

        REVISION     "201507071030Z"
        DESCRIPTION  "V1.05, add hwOntLldp, hwOntLldpProfileTable, hwOntPortLldpProfileTable, hwOntLldpMacTable, hwOntPortLldpStatisticsTable and hwOntPortLldpNeighbourTable."

        REVISION     "201406100000Z"
        DESCRIPTION  "V1.04, modified the ORGANIZATION.
                             modified the name from HUAWEI-LLDP-MIB to HUAWEI-DSLAM-LLDP-MIB"
         
        REVISION     "201303130000Z"
        DESCRIPTION  "V1.03, modified hwLldpLocSysCapSupportedChange, hwLldpLocSysCapEnabledChange, hwLldpLocManIPAddrChange, and the description of some leaves"

        REVISION     "201301310000Z"
        DESCRIPTION  "V1.02, modified the index of hwLldpPortConfigTable"

        REVISION     "201211280000Z"  
        DESCRIPTION  "V1.01, Initial version"
            ::= { hwDatacomm 134 }  

                EnabledStatus ::= TEXTUAL-CONVENTION
                STATUS    current
                DESCRIPTION
                "A simple status value for the object."
                SYNTAX   INTEGER 
                { 
                    enabled(1),
                    disabled(2)
                }
     
    -- ============================================================================
    -- Node definitions
    -- ============================================================================ 

    -- 1.3.6.1.4.1.2011.5.25.134
 
    hwLldpObjects  OBJECT IDENTIFIER ::= { hwLldpMIB 1} 

    hwLldpTraps OBJECT IDENTIFIER ::= { hwLldpMIB 2 }  
    
    hwLldpConformance  OBJECT IDENTIFIER ::= { hwLldpMIB 3 }
 
    hwOntLldp  OBJECT IDENTIFIER ::= { hwLldpMIB 4 }
    
  -- ============================================================================
  --
  -- ======================= Objects definitions=================================
  --
  -- ============================================================================  

  hwLldpConfiguration  OBJECT IDENTIFIER ::= { hwLldpObjects 1}      
  hwLldpRemoteSystemData  OBJECT IDENTIFIER ::= { hwLldpObjects 2} 

  hwLldpEnable OBJECT-TYPE 
        SYNTAX EnabledStatus
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Globally enable or disable the LLDP configuration. If the hwLldpEnable 
        is 1, LLDP is enabled. If the hwLldpEnable is 2, LLDP is disabled. 
        By default, LLDP is disabled."   
        ::= { hwLldpConfiguration 1 }   

  hwLldpLocManIPAddr OBJECT-TYPE 
        SYNTAX IpAddress
        MAX-ACCESS read-write
        STATUS  current
        DESCRIPTION
                "Specifies the management IP address of the local device. The management IP
        address is carried in the management address TLV of LLDP packet and is used
        to identify NM devices in network management. The management IP address 
        configured here must be a valid one and must be an IP address in the address
        chain. If the IP address is not valid or is not configured, the management IP 
        address will be chosen from default IP addresses of the system. The sequence
        of address searching is: loopback interface, management network interface, VLANIF
        port and IP address chain (The smallest IP is chosen). If the default IP is not 
        found, the bridge MAC of the system is used.
        0.0.0.0   -indicates management IP address is not configured."

        ::= { hwLldpConfiguration 2 }     

    hwLldpCounterReset OBJECT-TYPE 
        SYNTAX EnabledStatus
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Clears the statistics of packets received and sent on all ports."   
        ::= { hwLldpConfiguration 3 } 

    hwLldpNotificationEnable OBJECT-TYPE 
        SYNTAX EnabledStatus
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The global alarming that is used to control alarms on all ports.
             If it is 1, the global alarming is enabled. If it is 2, the global
             alarming is disabled.
             By default, the global alarming is disabled."     
        ::= { hwLldpConfiguration 4 } 

   hwLldpPortConfigTable  OBJECT-TYPE
      SYNTAX SEQUENCE OF HwLldpPortConfigEntry
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION 
           "LLDP port configuration table.
            The index of this table is hwLldpPortConfigIfIndex"
      ::= { hwLldpConfiguration  5 }

   hwLldpPortConfigEntry OBJECT-TYPE
        SYNTAX HwLldpPortConfigEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "LLDP port configuration table.
            The index of this entry is hwLldpPortConfigIfIndex"
        INDEX{ hwLldpPortConfigIfIndex}
        ::= { hwLldpPortConfigTable 1}  
   
   HwLldpPortConfigEntry ::=
        SEQUENCE  {    
                   hwLldpPortConfigIfIndex  
                   InterfaceIndex,
                   hwLldpPortConfigCounterReset
                   EnabledStatus
                  }
    
   hwLldpPortConfigIfIndex  OBJECT-TYPE
        SYNTAX InterfaceIndex
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "Port index."     
        ::= {hwLldpPortConfigEntry 11}
 
   hwLldpPortConfigCounterReset OBJECT-TYPE
        SYNTAX EnabledStatus
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION 
            "Clears the statistics of packets received and sent on the current port."     
        ::= {hwLldpPortConfigEntry 12}

   hwLldpRemProtoTypeTable  OBJECT-TYPE
        SYNTAX SEQUENCE OF HwLldpRemProtoTypeEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "LLDP remote neighbour protocol version table.
            The index of this table is hwLldpPortConfigIfIndex"
        ::= { hwLldpRemoteSystemData  1 }

   hwLldpRemProtoTypeEntry OBJECT-TYPE
        SYNTAX HwLldpRemProtoTypeEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "LLDP remote neighbour protocol version table.
            The index of this entry is hwLldpPortConfigIfIndex"
        INDEX {
               hwLldpPortConfigIfIndex
              }
        ::= { hwLldpRemProtoTypeTable 1}  
   
   HwLldpRemProtoTypeEntry ::=
        SEQUENCE  {    
                   hwLldpRemProtoType INTEGER
                  }
    
   hwLldpRemProtoType  OBJECT-TYPE
        SYNTAX INTEGER
            {
            lldp(1),
            cdp(2),
            unknown(255)
            }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION 
           "Protocol type of the remote neighbour.
            Options:
            1. lldp(1)      -- indicates the enabled protocol is lldp
            2. cdp(2)       -- indicates the enabled protocol is cdp
            3. unknown(255) -- indicates the enabled protocol is unknown
            "     
       ::= {hwLldpRemProtoTypeEntry 1}
   
   hwCdpRemTable  OBJECT-TYPE
        SYNTAX SEQUENCE OF HwCdpRemEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
            "CDP remote neighbour table.
             The indexes of this table are hwCdpRemLocalPortNum and hwCdpRemIndex"
        ::= { hwLldpRemoteSystemData  2 }

   hwCdpRemEntry OBJECT-TYPE
        SYNTAX HwCdpRemEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
           "CDP remote neighbour table.
            The indexes of this entry are hwCdpRemLocalPortNum and hwCdpRemIndex"
        INDEX {
               hwCdpRemLocalPortNum,
               hwCdpRemIndex
              }
        ::= { hwCdpRemTable 1}  
   
   HwCdpRemEntry ::=
        SEQUENCE  {    
                   hwCdpRemLocalPortNum LldpPortNumber,
                   hwCdpRemIndex Integer32,  
                   hwCdpRemLocalPortId LldpPortId,
                   hwCdpRemDeviceId DisplayString,
                   hwCdpRemPortId DisplayString,
                   hwCdpRemVersion DisplayString,
                   hwCdpRemPlatform DisplayString,
                   hwCdpRemMacAddr MacAddress
                  }
     
   hwCdpRemLocalPortNum  OBJECT-TYPE
      SYNTAX LldpPortNumber
      MAX-ACCESS not-accessible
      STATUS current
      DESCRIPTION 
        "The index value used to identify the local port associated with 
         this entry."     
      ::= {hwCdpRemEntry 1}  
   
   hwCdpRemIndex  OBJECT-TYPE
      SYNTAX Integer32
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
                   "This object represents an arbitrary local integer value used to 
                   identify a particular connection instance, unique only for the 
                   indicated remote system."     
           ::= {hwCdpRemEntry 2}   
           
   hwCdpRemLocalPortId  OBJECT-TYPE
      SYNTAX LldpPortId
        MAX-ACCESS read-only
        STATUS current
           DESCRIPTION 
                "The string value used to identify the port component
                associated with a given port in the local system."   
           ::= {hwCdpRemEntry 3} 
                     
   hwCdpRemDeviceId  OBJECT-TYPE
      SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
           DESCRIPTION 
                   "The Device-ID string as reported in the most recent CDP message."     
           ::= {hwCdpRemEntry 4} 
           
   hwCdpRemPortId  OBJECT-TYPE
      SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
           DESCRIPTION 
                   "The Port-ID string as reported in the most recent CDP message."     
           ::= {hwCdpRemEntry 5}  
           
   hwCdpRemVersion  OBJECT-TYPE
      SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
           DESCRIPTION 
                   "The Version string as reported in the most recent CDP message."     
           ::= {hwCdpRemEntry 6} 
           
   hwCdpRemPlatform  OBJECT-TYPE
      SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
           DESCRIPTION 
                   "The Device's Hardware Platform as reported in the most recent 
                   CDP message."     
           ::= {hwCdpRemEntry 7} 
           
   hwCdpRemMacAddr  OBJECT-TYPE
      SYNTAX MacAddress
        MAX-ACCESS read-only
        STATUS current
           DESCRIPTION 
                   "The Port's MacAddress as reported in the most recent CDP packet."     
           ::= {hwCdpRemEntry 8}                                                                            
   
      hwLldpEnabled  NOTIFICATION-TYPE
      STATUS current    
    DESCRIPTION 
          "Notify the NMS that the LLDP is globally enabled. This alarm is not 
        restricted by the alarm delay."
    ::= { hwLldpTraps 1}

      hwLldpDisabled  NOTIFICATION-TYPE
     STATUS current    
    DESCRIPTION 
          "Notify the NMS that the LLDP is globally disabled. This alarm is not 
        restricted by the alarm delay."
    ::= { hwLldpTraps 2}  
    
  hwLldpLocSysCapSupportedChange  NOTIFICATION-TYPE
    STATUS current    
    DESCRIPTION 
          "Alarm on the change of capabilities supported of a local device."
       ::= { hwLldpTraps 3}  
    
   hwLldpLocSysCapEnabledChange  NOTIFICATION-TYPE
    STATUS current    
    DESCRIPTION 
          "Alarm on the change of capabilities enabled of a local device."
     ::= { hwLldpTraps 4}                      
                         
  hwLldpLocManIPAddrChange  NOTIFICATION-TYPE
    STATUS current    
    DESCRIPTION 
          "Alarm on the change of management IP address of a local device."
    ::= { hwLldpTraps 5} 
    
  hwCdpRemTableChange  NOTIFICATION-TYPE
    STATUS current    
    DESCRIPTION 
          "Notify the NMS that the CDP neighbor is changed."
    ::= { hwLldpTraps 6}     
        
    --
    -- ***********************************************************
    --
    -- HAUWEILLDPMIBCONFORMANCE
    --
    -- ***********************************************************
    --
     
  hwLldpCompliances OBJECT IDENTIFIER ::= { hwLldpConformance 1 }
    hwLldpGroups OBJECT IDENTIFIER ::= { hwLldpConformance 2 }
    -- compliance statements
    lldpCompliance MODULE-COMPLIANCE
    STATUS current
    DESCRIPTION
        "The compliance statement for SNMP entities which implement
        the HUAWEI-LLDP-MIB."
    MODULE -- this module
    MANDATORY-GROUPS { 
    hwLldpConfigGroup,
    hwLldpStatsGroup,
    hwLldpPortGroup,
    hwLldpTrapGroup
    }
    ::= { hwLldpCompliances 1 }    
       
    -- MIB groupings
    hwLldpConfigGroup OBJECT-GROUP
    OBJECTS {  
    hwLldpEnable,
    hwLldpLocManIPAddr,
    hwLldpNotificationEnable
    }
    STATUS current
    DESCRIPTION
        "The collection of objects which are used to configure the
        LLDP implementation behavior.
        This group is mandatory for agents which implement the LLDP."
    ::= { hwLldpGroups 1 }     
    
    hwLldpStatsGroup OBJECT-GROUP
    OBJECTS {  
    hwLldpCounterReset,
    
    hwLldpPortConfigCounterReset    
    }
    STATUS current
    DESCRIPTION
        "The collection of objects which are used to represent LLDP
         statistics.
        This group is mandatory for agents which implement the LLDP
        and have the capability of receiving and transmitting LLDP frames."
    ::= { hwLldpGroups 2 } 
     
    
    hwLldpPortGroup OBJECT-GROUP
    OBJECTS {  
    hwLldpPortConfigIfIndex ,
    hwLldpRemProtoType
    }
    STATUS current
    DESCRIPTION
        "The collection of objects indicate index of port."
    ::= { hwLldpGroups 3 }    
        
       hwLldpTrapGroup NOTIFICATION-GROUP
    NOTIFICATIONS {  
    hwLldpEnabled,
    hwLldpDisabled,
    hwLldpLocSysCapSupportedChange,
    hwLldpLocSysCapEnabledChange,
    hwLldpLocManIPAddrChange,
    hwCdpRemTableChange    
    }
    STATUS current
    DESCRIPTION
        "The collection of notifications used to indicate HUAWEI-LLDP-MIB
        data consistency and general status information.
        This group is mandatory for agents which implement the LLDP
        and have the capability of receiving LLDP frames."
    ::= { hwLldpGroups 4 }  

    hwCdpRemGroup OBJECT-GROUP
    OBJECTS {  
    hwCdpRemLocalPortNum,
    hwCdpRemIndex,  
    hwCdpRemLocalPortId,    
    hwCdpRemDeviceId,
    hwCdpRemPortId,
    hwCdpRemVersion,
    hwCdpRemPlatform,
    hwCdpRemMacAddr
    }
    STATUS current
    DESCRIPTION
        "The collection of objects which are used to represent
        CDP Remote Systems Information. The objects represent the
        information associated with the basic TLV set. Please note
        that even the agent doesn't implement some of the optional
        TLVs, it shall recognize all the optional TLV information
        that the remote system may advertise.
        This group is mandatory for agents which implement the CDP
        and have the capability of receiving CDP frames."
    ::= { hwLldpGroups 5 }      

 --
    -- ***********************************************************
    --
    -- HAUWEILLDPMED
    --
    -- ***********************************************************
    --
     
      --Table hwOntLldpProfileTable
            hwOntLldpProfileTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwOntLldpProfileEntry
            MAX-ACCESS not-accessible
            STATUS     current
            DESCRIPTION
                "This table is used to manage the LLDP profile and global configuration data of the profile.
                 The index of this table is hwOntLldpProfileName.
                "
            ::= { hwOntLldp 1 }

            hwOntLldpProfileEntry OBJECT-TYPE
            SYNTAX HwOntLldpProfileEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "This table is used to manage the LLDP profile and global configuration data of the profile. 
                 The index of this entry is hwOntLldpProfileName.
                "
            INDEX       { hwOntLldpProfileName }
            ::= { hwOntLldpProfileTable 1 }

        HwOntLldpProfileEntry ::=
            SEQUENCE
                {
                hwOntLldpProfileName                OCTET STRING,
                hwOntVoiceNativeVlan                Integer32,
                hwOntVoiceNativeVlan8021p           Integer32,
                hwOntLldpBindNum                    Integer32,
                hwOntLldpCommit                     INTEGER,
                hwOntLldpProfileRowStatus           RowStatus
                }

        hwOntLldpProfileName OBJECT-TYPE
               SYNTAX   OCTET STRING (SIZE (1..32))
               MAX-ACCESS  not-accessible
               STATUS   current
               DESCRIPTION
                    "LLDP profile name.
                     Range: a string of 1-32 characters.
                    "
               ::= { hwOntLldpProfileEntry 1 }

        hwOntVoiceNativeVlan   OBJECT-TYPE
            SYNTAX Integer32 (-1..4095|65534)
            MAX-ACCESS   read-write
            STATUS       current
            DESCRIPTION
                "Indicates the VOICE native VLAN.
                 Range: -1-4095 and 65534. -1 indicates an invalid value, a value between 0 and 4095 indicates the VLAN ID, and 65534 indicates an untagged VLAN.
                "
            ::= { hwOntLldpProfileEntry 2 }

        hwOntVoiceNativeVlan8021p   OBJECT-TYPE
            SYNTAX Integer32 (-1..7)
            MAX-ACCESS   read-write
            STATUS       current
            DESCRIPTION
                "Indicates the voice native VLAN 802.1p.
                Range: -1-7, -1 indicates an invalid value.
                Default: 6.
                "
            ::= { hwOntLldpProfileEntry 3 }

        hwOntLldpBindNum   OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS   read-only
            STATUS       current
            DESCRIPTION
                "Indicates the number of LLDP profile binding times. 0 indicates that the profile is not bond to an ONT.
                "
            ::= { hwOntLldpProfileEntry 4 }

        hwOntLldpCommit   OBJECT-TYPE
            SYNTAX INTEGER
                {
                commitExecute(1),
                invalid(-1)
                }
            MAX-ACCESS   read-write
            STATUS       current
            DESCRIPTION
                "Indicates whether the profile-mode configuration of LLDP is available.
                 Options:
                 1. commitExecute(1) - indicates to perform the commit operation.
                 2. invalid(-1)      - indicates the invalid state.
                "
            ::= { hwOntLldpProfileEntry 5 }

        hwOntLldpProfileRowStatus OBJECT-TYPE
            SYNTAX RowStatus
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The hwOntLldpProfileRowStatus is used to create a new row
                 or delete an existing row in this table.
                "
            ::= { hwOntLldpProfileEntry 6 }

   --Table hwOntLldpProfileTable   end

   --Table hwOntPortLldpProfileTable
            hwOntPortLldpProfileTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwOntPortLldpProfileEntry
            MAX-ACCESS not-accessible
            STATUS     current
            DESCRIPTION
                "This table is used to manage the port configuration data of the LLDP profile. 
                 The index of this table is hwOntLldpProfileName , hwOntPortLldpOntPhyType , hwOntPortLldpOntPhyIndex.
                "
            ::= { hwOntLldp 2 }

            hwOntPortLldpProfileEntry OBJECT-TYPE
            SYNTAX HwOntPortLldpProfileEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "This table is used to manage the port configuration data of the LLDP profile. 
                 The index of this entry is hwOntLldpProfileName , hwOntPortLldpOntPhyType , hwOntPortLldpOntPhyIndex.
                "
            INDEX       { hwOntLldpProfileName , hwOntPortLldpOntPhyType , hwOntPortLldpOntPhyIndex }
            ::= { hwOntPortLldpProfileTable 1 }

        HwOntPortLldpProfileEntry ::=
            SEQUENCE
                {
                hwOntPortLldpOntPhyType                INTEGER,
                hwOntPortLldpOntPhyIndex               Integer32,
                hwOntPortLldpSwitch                    INTEGER,
                hwOntPortLldpMedPoESwitch              INTEGER,
                hwOntPortLldpNetworkPolicyMediaVlanID     Integer32,
                hwOntPortLldpNetworkPolicyMedia8021p      Integer32,
                hwOntPortLldpNetworkPolicyMediaDSCP       Integer32,
                hwOntPortLldpNetworkPolicySignalingVlanID     Integer32,
                hwOntPortLldpNetworkPolicySignaling8021p      Integer32,
                hwOntPortLldpNetworkPolicySignalingDSCP       Integer32,
                hwOntPortLldpMessageTransmissionInterval      Integer32,
                hwOntPortLldpRowStatus                        RowStatus
                }

        hwOntPortLldpOntPhyType   OBJECT-TYPE
            SYNTAX INTEGER
            {
                eth(47)
            }
            MAX-ACCESS   not-accessible
            STATUS       current
            DESCRIPTION
                "This object indicates the port type of the ONT.
                 Options:
                 1. eth(47)            - ETH
                "
            ::= { hwOntPortLldpProfileEntry 1 }
        hwOntPortLldpOntPhyIndex   OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS   not-accessible
            STATUS       current
            DESCRIPTION
                "Indicates the ONT port index.
                "
            ::= { hwOntPortLldpProfileEntry 2 }

        hwOntPortLldpSwitch   OBJECT-TYPE
            SYNTAX INTEGER
                {
                 enable(1),
                 disable(2)
                }
            MAX-ACCESS   read-write
            STATUS       current
            DESCRIPTION
                "Indicates the LLDP switch.
                 Options:
                 1. enable(1)               - indicates that the LLDP switch is enabled.
                 2. disable(2)              - indicates that the LLDP switch is disabled.
                 Default: disable(2)
                "
            ::= { hwOntPortLldpProfileEntry 3 }

            hwOntPortLldpMedPoESwitch   OBJECT-TYPE
            SYNTAX INTEGER
                {
                enable(1),
                disable(2)
                }
            MAX-ACCESS   read-write
            STATUS       current
            DESCRIPTION
                "Indicates the LLDP MED PoE switch.
                Options:
                1. enable(1)               - indicates that the LLDP MED PoE switch is enabled.
                2. disable(2)              - indicates that the LLDP MED PoE switch is disabled.
                Default: disable(2)
                "
            ::= { hwOntPortLldpProfileEntry 4 }

            hwOntPortLldpNetworkPolicyMediaVlanID   OBJECT-TYPE
            SYNTAX Integer32 (-1..4095|65534)
            MAX-ACCESS   read-write
            STATUS       current
            DESCRIPTION
                "Indicates the network-policy media VLAN.
                Range: -1-4095 and 65534, -1 indicates an invalid value, a value between 0 and 4095 indicates the VLAN ID, and 65534 indicates an untagged VLAN.
                "
            ::= { hwOntPortLldpProfileEntry 5 }

            hwOntPortLldpNetworkPolicyMedia8021p   OBJECT-TYPE
            SYNTAX Integer32 (-1..7)
            MAX-ACCESS   read-write
            STATUS       current
            DESCRIPTION
                "Indicates the network-policy media 802.1p.
                Range: -1-7, -1 indicates an invalid value.
                Default: 6.
                "
            ::= { hwOntPortLldpProfileEntry 6 }

            hwOntPortLldpNetworkPolicyMediaDSCP   OBJECT-TYPE
            SYNTAX Integer32 (-1..63)
            MAX-ACCESS   read-write
            STATUS       current
            DESCRIPTION
                "Indicates the network-policy media DSCP.
                 Range: -1-63, -1 indicates an invalid value.
                 Default: 46.
                "
            ::= { hwOntPortLldpProfileEntry 7 }

            hwOntPortLldpNetworkPolicySignalingVlanID   OBJECT-TYPE
            SYNTAX Integer32 (-1..4095|65534)
            MAX-ACCESS   read-write
            STATUS       current
            DESCRIPTION
                "Indicates the network-policy signaling VLAN.
                 Range: -1-4095 and 65534, -1 indicates an invalid value, a value between 0 and 4095 indicates the VLAN ID, and 65534 indicates an untagged VLAN.
                "
            ::= { hwOntPortLldpProfileEntry 8 }

            hwOntPortLldpNetworkPolicySignaling8021p   OBJECT-TYPE
            SYNTAX Integer32 (-1..7)
            MAX-ACCESS   read-write
            STATUS       current
            DESCRIPTION
                "Indicates the network-policy signaling 802.1p.
                 Range: -1-7, -1 indicates an invalid value.
                 Default: 6.
                "
            ::= { hwOntPortLldpProfileEntry 9 }

            hwOntPortLldpNetworkPolicySignalingDSCP   OBJECT-TYPE
            SYNTAX Integer32 (-1..63)
            MAX-ACCESS   read-write
            STATUS       current
            DESCRIPTION
                "Indicates the network-policy signaling DSCP.
                 Range: -1-63, -1 indicates an invalid value.
                 Default: 46.
                "
            ::= { hwOntPortLldpProfileEntry 10 }

            hwOntPortLldpMessageTransmissionInterval   OBJECT-TYPE
            SYNTAX Integer32 (1..65535)
            MAX-ACCESS   read-write
            STATUS       current
            DESCRIPTION
                "Indicates the LLDP packet sending interval. The unit is second.
                Range: 1-65535.
                Default: 30.
                "
            ::= { hwOntPortLldpProfileEntry 11 }

        hwOntPortLldpRowStatus OBJECT-TYPE
            SYNTAX RowStatus
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The hwOntPortLldpRowStatus is used to create a new row
                 or to modify or delete an existing row in this table.
                "
            ::= { hwOntPortLldpProfileEntry 12 }

   --Table hwOntPortLldpProfileTable   end

   --Table hwOntLldpMacTable
            hwOntLldpMacTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwOntLldpMacEntry
            MAX-ACCESS not-accessible
            STATUS     current
            DESCRIPTION
                "This table is used to manage the MAC configuration data of the LLDP profile. 
                 The index of this table is hwOntLldpProfileName , hwOntLldpMacIndex.
                "
            ::= { hwOntLldp 3 }

            hwOntLldpMacEntry OBJECT-TYPE
            SYNTAX HwOntLldpMacEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "This table is used to manage the MAC configuration data of the LLDP profile. 
                 The index of this entry is hwOntLldpProfileName , hwOntLldpMacIndex.
                "
            INDEX       { hwOntLldpProfileName , hwOntLldpMacIndex }
            ::= { hwOntLldpMacTable 1 }

        HwOntLldpMacEntry ::=
            SEQUENCE
                {
                hwOntLldpMacIndex                   Integer32,
                hwOntLldpVoiceVlanMacAddr           MacAddress,
                hwOntLldpVoiceVlanMacMask           MacAddress,
                hwOntLldpVoiceVlanMacDesc           OCTET STRING,
        hwOntLldpMacRowStatus               RowStatus
                }

        hwOntLldpMacIndex   OBJECT-TYPE
            SYNTAX Integer32 (0..7)
            MAX-ACCESS   not-accessible
            STATUS       current
            DESCRIPTION
                "Indicates the OUI (MAC address) index in the LLDP profile.
                 Range: 0-7.
                "
            ::= { hwOntLldpMacEntry 1 }

        hwOntLldpVoiceVlanMacAddr  OBJECT-TYPE
            SYNTAX MacAddress
            MAX-ACCESS   read-write
            STATUS       current
            DESCRIPTION
                "Indicates the OUI (MAC address).
                "
            ::= { hwOntLldpMacEntry 2 }

        hwOntLldpVoiceVlanMacMask   OBJECT-TYPE
            SYNTAX MacAddress
            MAX-ACCESS   read-write
            STATUS       current
            DESCRIPTION
                "Indicates the mask of the OUI (MAC address).
                "
            ::= { hwOntLldpMacEntry 3 }

        hwOntLldpVoiceVlanMacDesc OBJECT-TYPE
        SYNTAX   OCTET STRING (SIZE (0..80))
        MAX-ACCESS  read-write
        STATUS   current
        DESCRIPTION
            "Indicates the description of OUI (MAC address).
            "
        ::= { hwOntLldpMacEntry 4 }

    hwOntLldpMacRowStatus OBJECT-TYPE
            SYNTAX RowStatus
            MAX-ACCESS read-create
            STATUS current
            DESCRIPTION
                "The hwOntLldpMacRowStatus is used to create a new row
                 or delete an existing row in this table.
                "
            ::= { hwOntLldpMacEntry 5 }

   --Table hwOntLldpMacTable   end

   --Table hwOntPortLldpStatisticsTable
            hwOntPortLldpStatisticsTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwOntPortLldpStatisticsEntry
            MAX-ACCESS not-accessible
            STATUS     current
            DESCRIPTION
                "This table is used to query and clear LLDP packet statistics of ONT ports.
                 The index of this table is ifIndex, hwOntPortLldpOntID, hwOntPortLldpOntPhyType, hwOntPortLldpOntPhyIndex.
                "
            ::= { hwOntLldp 4 }

            hwOntPortLldpStatisticsEntry OBJECT-TYPE
            SYNTAX HwOntPortLldpStatisticsEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
                "This table is used to query and clear LLDP packet statistics of ONT ports.
                 The index of this entry is ifIndex, hwOntPortLldpOntID, hwOntPortLldpOntPhyType, hwOntPortLldpOntPhyIndex.
                "
            INDEX       { ifIndex , hwOntPortLldpOntID , hwOntPortLldpOntPhyType , hwOntPortLldpOntPhyIndex }
            ::= { hwOntPortLldpStatisticsTable 1 }

        HwOntPortLldpStatisticsEntry ::=
            SEQUENCE
                {
                hwOntPortLldpOntID                                 Integer32,
                hwOntPortLldpStatisticsTotalTransmittedFrames      Counter64,
                hwOntPortLldpStatisticsTotalReceivedFrames         Counter64,
                hwOntPortLldpStatisticsTotalDiscardedFrames        Counter64,
                hwOntPortLldpStatisticsClear                       INTEGER
                }

        hwOntPortLldpOntID   OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS   not-accessible
            STATUS       current
            DESCRIPTION
                "This object indicates the ONT ID of the port.
                "
            ::= { hwOntPortLldpStatisticsEntry 1 }

        hwOntPortLldpStatisticsTotalTransmittedFrames OBJECT-TYPE
            SYNTAX   Counter64
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
               "Indicates the total transmitted frames.
               0xffffffffffffffff indicates an invalid value.
               "
            ::= { hwOntPortLldpStatisticsEntry 2 }

        hwOntPortLldpStatisticsTotalReceivedFrames OBJECT-TYPE
            SYNTAX   Counter64
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the total received frames.
                0xffffffffffffffff indicates an invalid value.
                "
            ::= { hwOntPortLldpStatisticsEntry 3 }

        hwOntPortLldpStatisticsTotalDiscardedFrames OBJECT-TYPE
            SYNTAX   Counter64
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the total discarded frames.
                0xffffffffffffffff indicates an invalid value.
                "
            ::= { hwOntPortLldpStatisticsEntry 4 }

        hwOntPortLldpStatisticsClear OBJECT-TYPE
            SYNTAX INTEGER
                {
                clear(1),
                invalid(-1)
                }
            MAX-ACCESS  read-write
            STATUS   current
            DESCRIPTION
                "Indicates the statistics clear.
                 Options:
                 1. clear(1)      - indicates to perform the clear operation.
                 2. invalid(-1)   - indicates the invalid state.
                 "
            ::= { hwOntPortLldpStatisticsEntry 5 }

   --Table hwOntPortLldpStatisticsTable   end

   --Table hwOntPortLldpNeighbourTable
            hwOntPortLldpNeighbourTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwOntPortLldpNeighbourEntry
            MAX-ACCESS not-accessible
            STATUS     current
            DESCRIPTION
                "This table is used to query and clear LLDP neighbour statistics of ONT ports.
                 The indexes of this table are ifIndex, hwOntPortLldpOntID, hwOntPortLldpOntPhyType, hwOntPortLldpOntPhyIndex, hwOntPortLldpNeighbourIndex.
                "
            ::= { hwOntLldp 5 }

            hwOntPortLldpNeighbourEntry OBJECT-TYPE
            SYNTAX HwOntPortLldpNeighbourEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
               "This table is used to query and clear LLDP neighbour statistics of ONT ports.
                The indexes of this entry are ifIndex, hwOntPortLldpOntID, hwOntPortLldpOntPhyType, hwOntPortLldpOntPhyIndex, hwOntPortLldpNeighbourIndex.
                "
            INDEX       { ifIndex , hwOntPortLldpOntID , hwOntPortLldpOntPhyType , hwOntPortLldpOntPhyIndex , hwOntPortLldpNeighbourIndex }
            ::= { hwOntPortLldpNeighbourTable 1 }

        HwOntPortLldpNeighbourEntry ::=
            SEQUENCE
                {
                hwOntPortLldpNeighbourIndex         Integer32,
                hwOntPortLldpNeighbourChassisID     OCTET STRING,
                hwOntPortLldpNeighbourPortID        OCTET STRING,
                hwOntPortLldpNeighbourTTL           Integer32,
                hwOntPortLldpNeighbourPortDesc      OCTET STRING,
                hwOntPortLldpNeighbourSysName       OCTET STRING,
                hwOntPortLldpNeighbourSysDesc       OCTET STRING,
                hwOntPortLldpNeighbourSyscapability     OCTET STRING,
                hwOntPortLldpNeighbourMngtAdress        OCTET STRING,
                hwOntPortLldpNeighbourMedCapabilities   OCTET STRING,
                hwOntPortLldpNeighbourPowerValue        Integer32,
                hwOntPortLldpNeighbourHardwareRevision  OCTET STRING,
                hwOntPortLldpNeighbourFirmwareRevision  OCTET STRING,
                hwOntPortLldpNeighbourSoftwareRevision  OCTET STRING,
                hwOntPortLldpNeighbourSerialNumber      OCTET STRING,
                hwOntPortLldpNeighbourManufacturerName  OCTET STRING,
                hwOntPortLldpNeighbourModelName         OCTET STRING,
                hwOntPortLldpNeighbourAssetID           OCTET STRING,
                hwOntPortLldpNeighbourClear             INTEGER,
                hwOntPortLldpNeighbourAutoNegotiationSupport OCTET STRING,
                hwOntPortLldpNeighbourAutoNegotiationConf OCTET STRING,
                hwOntPortLldpNeighbourOperMauType OCTET STRING,
                hwOntPortLldpNeighbourPowerType         INTEGER,
                hwOntPortLldpNeighbourPowerSource       INTEGER,
                hwOntPortLldpNeighbourPowerPriority     INTEGER
                }

        hwOntPortLldpNeighbourIndex OBJECT-TYPE
            SYNTAX   Integer32
            MAX-ACCESS  not-accessible
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour index."
            ::= { hwOntPortLldpNeighbourEntry 1 }

        hwOntPortLldpNeighbourChassisID   OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (0..255))
            MAX-ACCESS   read-only
            STATUS       current
            DESCRIPTION
                "Indicates the LLDP neighbour chassis ID.
                "
            ::= { hwOntPortLldpNeighbourEntry 2 }

        hwOntPortLldpNeighbourPortID  OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (0..255))
            MAX-ACCESS   read-only
            STATUS       current
            DESCRIPTION
                "Indicates the LLDP neighbour port ID.
                "
            ::= { hwOntPortLldpNeighbourEntry 3 }

        hwOntPortLldpNeighbourTTL   OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS   read-only
            STATUS       current
            DESCRIPTION
                "Indicates the LLDP neighbour TTL.
                 -1 indicates an invalid value.
                "
            ::= { hwOntPortLldpNeighbourEntry 4 }

        hwOntPortLldpNeighbourPortDesc OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..255))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour port description.
                "
            ::= { hwOntPortLldpNeighbourEntry 5 }

        hwOntPortLldpNeighbourSysName OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..255))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour system name.
                "
            ::= { hwOntPortLldpNeighbourEntry 6 }

        hwOntPortLldpNeighbourSysDesc OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..255))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour system description.
                "
            ::= { hwOntPortLldpNeighbourEntry 7 }

        hwOntPortLldpNeighbourSyscapability OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..255))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour capability.
                "
            ::= { hwOntPortLldpNeighbourEntry 8 }

        hwOntPortLldpNeighbourMngtAdress OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..128))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour management address.
                "
            ::= { hwOntPortLldpNeighbourEntry 9 }

        hwOntPortLldpNeighbourMedCapabilities OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..255))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP MED capabilities.
                "
            ::= { hwOntPortLldpNeighbourEntry 10 }
            
        hwOntPortLldpNeighbourPowerValue OBJECT-TYPE
            SYNTAX  Integer32
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour power value(mW). 
                 -1 indicates an invalid value.
                "
            ::= { hwOntPortLldpNeighbourEntry 11 }

        hwOntPortLldpNeighbourHardwareRevision OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..32))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour hardware revision.
                "
            ::= { hwOntPortLldpNeighbourEntry 12 }

        hwOntPortLldpNeighbourFirmwareRevision OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..32))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour firmware revision.
                "
            ::= { hwOntPortLldpNeighbourEntry 13 }

        hwOntPortLldpNeighbourSoftwareRevision OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..32))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour software revision.
                "
            ::= { hwOntPortLldpNeighbourEntry 14 }

        hwOntPortLldpNeighbourSerialNumber OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..32))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour serial number.
                "
            ::= { hwOntPortLldpNeighbourEntry 15 }

        hwOntPortLldpNeighbourManufacturerName OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..32))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour manufacturer name.
                "
            ::= { hwOntPortLldpNeighbourEntry 16 }

        hwOntPortLldpNeighbourModelName OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..32))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour model name.
                "
            ::= { hwOntPortLldpNeighbourEntry 17 }

        hwOntPortLldpNeighbourAssetID OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..32))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour asset ID.
                "
            ::= { hwOntPortLldpNeighbourEntry 18 }

        hwOntPortLldpNeighbourClear OBJECT-TYPE
            SYNTAX INTEGER
                {
                clear(1),
                invalid(-1)
                }
            MAX-ACCESS  read-write
            STATUS   current
            DESCRIPTION
                "Indicates clear the LLDP neighbour information. 
                The system clears neighbour information based on ONT ports and therefore it ignores the hwOntPortLldpNeighbourIndex value in the set operation.
                Options:
                1. clear(1)      - indicates to perform the clear operation.
                2. invalid(-1)   - indicates the invalid state.
                "
            ::= { hwOntPortLldpNeighbourEntry 19 }

        hwOntPortLldpNeighbourAutoNegotiationSupport OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..255))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates whether the remote end supports an autonegotiation flag.
                "
            ::= { hwOntPortLldpNeighbourEntry 20 }

        hwOntPortLldpNeighbourAutoNegotiationConf OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..255))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates whether the remote end is enabled with autonegotiation.
                "
            ::= { hwOntPortLldpNeighbourEntry 21 }

        hwOntPortLldpNeighbourOperMauType OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..255))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the remote link type.
                "
            ::= { hwOntPortLldpNeighbourEntry 22 }
            
        hwOntPortLldpNeighbourPowerType OBJECT-TYPE
            SYNTAX INTEGER
                {
                unknown(1),
                pseDevice(2),
                pdDevice(3),
                invalid(-1)
                }  
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the neighbour power type.
                 Options:
                 1. unknown(1) - indicates unknown power.
                 2. pseDevice(2) - indicates power supply device.
                 3. pdDevice(3) - indicates device supplied by the power.
                 4. invalid(-1) - indicates an invalid value.
                "
            ::= { hwOntPortLldpNeighbourEntry 23 }
        
        hwOntPortLldpNeighbourPowerSource OBJECT-TYPE
            SYNTAX INTEGER
                {
                unknown(1),
                primary(2),
                backup(3),
                fromPSE(4),
                local(5),
                localAndPSE(6),
                invalid(-1)
                }    
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour power source. 
                 Options:
                 1. unknown(1) - indicates unknown power.
                 2. primary(2) - indicates primary power.
                 3. backup(3) - indicates backup power.
                 4. fromPSE(4) - indicates remote PSE power.
                 5. local(5) - indicates local power.
                 6. localAndPSE(6) - indicates remote PSE and local power.
                 7. invalid(-1) - indicates an invalid value.
                "
            ::= { hwOntPortLldpNeighbourEntry 24 }
            
        hwOntPortLldpNeighbourPowerPriority OBJECT-TYPE
            SYNTAX INTEGER
                {
                unknown(1),
                critical(2),
                high(3),
                low(4),
                invalid(-1)
                }      
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour power priority. 
                 Options:
                 1. unknown(1) - indicates unknown power.
                 2. critical(2) - indicates priority 1.
                 3. high(3) - indicates priority 2.
                 4. low(4) - indicates priority 3.
                 5. invalid(-1) - indicates an invalid value.
                "
            ::= { hwOntPortLldpNeighbourEntry 25 }

   --Table hwOntPortLldpNeighbourTable   end

   --Table hwOntPortLldpLocalTable
            hwOntPortLldpLocalTable OBJECT-TYPE
            SYNTAX SEQUENCE OF HwOntPortLldpLocalEntry
            MAX-ACCESS not-accessible
            STATUS     current
            DESCRIPTION
                "This table is used to query the LLDP local information about the specified port on the ONT.
                 The index of this table is ifIndex , hwOntPortLldpOntID , hwOntPortLldpOntPhyType , hwOntPortLldpOntPhyIndex.
                "
            ::= { hwOntLldp 6 }

            hwOntPortLldpLocalEntry OBJECT-TYPE
            SYNTAX HwOntPortLldpLocalEntry
            MAX-ACCESS not-accessible
            STATUS current
            DESCRIPTION
               "This table is used to query the LLDP local information about the specified port on the ONT.
                The index of this entry is ifIndex , hwOntPortLldpOntID , hwOntPortLldpOntPhyType , hwOntPortLldpOntPhyIndex.
                "
            INDEX       { ifIndex , hwOntPortLldpOntID , hwOntPortLldpOntPhyType , hwOntPortLldpOntPhyIndex }
            ::= { hwOntPortLldpLocalTable 1 }

        HwOntPortLldpLocalEntry ::=
            SEQUENCE
                {
                hwOntPortLldpLocalChassisID     OCTET STRING,
                hwOntPortLldpLocalPortID        OCTET STRING,
                hwOntPortLldpLocalTTL           Integer32,
                hwOntPortLldpLocalPortDesc      OCTET STRING,
                hwOntPortLldpLocalSysName       OCTET STRING,
                hwOntPortLldpLocalSysDesc       OCTET STRING,
                hwOntPortLldpLocalSyscapability     OCTET STRING,
                hwOntPortLldpLocalMngtAdress        OCTET STRING,
                hwOntPortLldpLocalMedCapabilities   OCTET STRING,
                hwOntPortLldpLocalPowerValue        Integer32,
                hwOntPortLldpLocalHardwareRevision  OCTET STRING,
                hwOntPortLldpLocalFirmwareRevision  OCTET STRING,
                hwOntPortLldpLocalSoftwareRevision  OCTET STRING,
                hwOntPortLldpLocalSerialNumber      OCTET STRING,
                hwOntPortLldpLocalManufacturerName  OCTET STRING,
                hwOntPortLldpLocalModelName         OCTET STRING,
                hwOntPortLldpLocalAssetID           OCTET STRING,
                hwOntPortLldpLocalAutoNegotiationSupport   OCTET STRING,
                hwOntPortLldpLocalAutoNegotiationConf        OCTET STRING,
                hwOntPortLldpLocalOperMauType  OCTET STRING,
                hwOntPortLldpLocalPowerType         INTEGER,    
                hwOntPortLldpLocalPowerSource       INTEGER,
                hwOntPortLldpLocalPowerPriority     INTEGER
                }

        hwOntPortLldpLocalChassisID   OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (0..255))
            MAX-ACCESS   read-only
            STATUS       current
            DESCRIPTION
                "Indicates the LLDP local chassis ID.
                "
            ::= { hwOntPortLldpLocalEntry 1 }

        hwOntPortLldpLocalPortID  OBJECT-TYPE
            SYNTAX OCTET STRING (SIZE (0..255))
            MAX-ACCESS   read-only
            STATUS       current
            DESCRIPTION
                "Indicates the LLDP local port ID.
                "
            ::= { hwOntPortLldpLocalEntry 2 }

        hwOntPortLldpLocalTTL   OBJECT-TYPE
            SYNTAX Integer32
            MAX-ACCESS   read-only
            STATUS       current
            DESCRIPTION
                "Indicates the LLDP local TTL.
                 -1 indicates an invalid value.
                "
            ::= { hwOntPortLldpLocalEntry 3 }

        hwOntPortLldpLocalPortDesc OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..255))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP local port description.
                "
            ::= { hwOntPortLldpLocalEntry 4 }

        hwOntPortLldpLocalSysName OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..255))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP local system name.
                "
            ::= { hwOntPortLldpLocalEntry 5 }

        hwOntPortLldpLocalSysDesc OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..255))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP local system description.
                "
            ::= { hwOntPortLldpLocalEntry 6 }

        hwOntPortLldpLocalSyscapability OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..255))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP local capability.
                "
            ::= { hwOntPortLldpLocalEntry 7 }

        hwOntPortLldpLocalMngtAdress OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..128))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP local management address.
                "
            ::= { hwOntPortLldpLocalEntry 8 }

        hwOntPortLldpLocalMedCapabilities OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..255))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP local MED capabilities.
                "
            ::= { hwOntPortLldpLocalEntry 9 }
    
        hwOntPortLldpLocalPowerValue OBJECT-TYPE
            SYNTAX  Integer32
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP local power value(mW).
                 -1 indicates an invalid value.
                "
            ::= { hwOntPortLldpLocalEntry 10 }

        hwOntPortLldpLocalHardwareRevision OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..32))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP local hardware revision.
                "
            ::= { hwOntPortLldpLocalEntry 11 }

        hwOntPortLldpLocalFirmwareRevision OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..32))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP local firmware revision.
                "
            ::= { hwOntPortLldpLocalEntry 12 }

        hwOntPortLldpLocalSoftwareRevision OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..32))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP local software revision.
                "
            ::= { hwOntPortLldpLocalEntry 13 }

        hwOntPortLldpLocalSerialNumber OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..32))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP local serial number.
                "
            ::= { hwOntPortLldpLocalEntry 14 }

        hwOntPortLldpLocalManufacturerName OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..32))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP local manufacturer name.
                "
            ::= { hwOntPortLldpLocalEntry 15 }

        hwOntPortLldpLocalModelName OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..32))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP local model name.
                "
            ::= { hwOntPortLldpLocalEntry 16 }

        hwOntPortLldpLocalAssetID OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..32))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP local asset ID.
                "
            ::= { hwOntPortLldpLocalEntry 17 }
        hwOntPortLldpLocalAutoNegotiationSupport OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..255))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates whether the local end supports an autonegotiation flag.
                "
            ::= { hwOntPortLldpLocalEntry 18 }

        hwOntPortLldpLocalAutoNegotiationConf OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..255))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates whether the local end is enabled with autonegotiation.
                "
            ::= { hwOntPortLldpLocalEntry 19 }

        hwOntPortLldpLocalOperMauType OBJECT-TYPE
            SYNTAX   OCTET STRING (SIZE (0..255))
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the local link type.
                "
            ::= { hwOntPortLldpLocalEntry 20 }

        hwOntPortLldpLocalPowerType OBJECT-TYPE
            SYNTAX INTEGER
                {
                unknown(1),
                pseDevice(2),
                pdDevice(3),
                invalid(4)
                }  
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP local power type. 
                 Options:
                 1. unknown(1) - indicates unknown power.
                 2. pseDevice(2) - indicates power supply device.
                 3. pdDevice(3) - indicates device supplied by the power.
                 4. invalid(4) - indicates an invalid value.
                "
            ::= { hwOntPortLldpLocalEntry 21 }
        
        hwOntPortLldpLocalPowerSource OBJECT-TYPE
            SYNTAX INTEGER
                {
                unknown(1),
                primary(2),
                backup(3),
                fromPSE(4),
                local(5),
                localAndPSE(6),
                invalid(-1)
                }  
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP neighbour power source. 
                 Options:
                 1. unknown(1) - indicates unknown power.
                 2. primary(2) - indicates primary power.
                 3. backup(3) - indicates backup power.
                 4. fromPSE(4) - indicates remote PSE power.
                 5. local(5) - indicates local power.
                 6. localAndPSE(6) - indicates remote PSE and local power.
                 7. invalid(-1) - indicates an invalid value.
                "
            ::= { hwOntPortLldpLocalEntry 22 }
 
        hwOntPortLldpLocalPowerPriority OBJECT-TYPE
            SYNTAX INTEGER
                {
                unknown(1),
                critical(2),
                high(3),
                low(4),
                invalid(-1)
                }        
            MAX-ACCESS  read-only
            STATUS   current
            DESCRIPTION
                "Indicates the LLDP local power priority. 
                 Options:
                 1. unknown(1) - indicates unknown power.
                 2. critical(2) - indicates priority 1.
                 3. high(3) - indicates priority 2.
                 4. low(4) - indicates priority 3.
                 5. invalid(-1) - indicates an invalid value.
                "
            ::= { hwOntPortLldpLocalEntry 23 }

   --Table hwOntPortLldpLocalTable   end
END
