
--  ===========================================================
-- Copyright (C)  2021 by  HUAWEI TECHNOLOGIES. All rights reserved.
-- 
-- Description:    HUAWEI POE MIB Definition 
-- Reference:      This mib was extracted from IEEE 802.3af
-- Version:        V1.17
-- History:        Liuhui ,2009-08-24, Create
-- ===========================================================

	HUAWEI-POE-MIB DEFINITIONS ::= BEGIN
 
		IMPORTS
			hwDatacomm			
				FROM HUAWEI-MIB			
			InterfaceIndex			
				FROM IF-MIB			
			EnabledStatus			
				FROM P-BRIDGE-MIB			
      TruthValue       
        FROM SNMPv2-TC
			OBJECT-GROUP, MODULE-COMPLIANCE,NOTIFICATION-GROUP			
				FROM SNMPv2-CONF			
			Integer32, OBJECT-TYPE, MODULE-IDENTITY, NOTIFICATION-TYPE			
				FROM SNMPv2-SMI;
	
	
		hwPoeMIB MODULE-IDENTITY 
			LAST-UPDATED "202108120000Z"		-- Aug 12, 2021 at 00:00 GMT
			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 
				"The HUAWEI-POE-MIB contains objects to manage POE."
                                                               REVISION     "202108120000Z"
                                                               DESCRIPTION  "V1.17,  Add hwPoeCommunicateFail and hwPoeCardAbsent "

                                                               REVISION     "202105080000Z"
                                                               DESCRIPTION  "V1.16,  Modity hwPoePowerOff "

                                                               REVISION     "201901030000Z"
                                                               DESCRIPTION  "V1.15,  Add hwPoePdOvercurrentPoweroff and hwPoePdOverloadPoweroff "

                                                               REVISION     "201810180000Z"
                                                               DESCRIPTION  "V1.134  Modify the range of hwPoeSlotMaximumPower"

                                                               REVISION     "201805160000Z"
                                                               DESCRIPTION  "V1.13,  Add hwPoeMultiMcuTable and hwPoeSlotMcuSupport"

                                                               REVISION     "201803080000Z"
                                                               DESCRIPTION  "V1.12,  Add NOTIFICATION-TYPE"

                                                               REVISION     "201612020000Z"
                                                               DESCRIPTION  "V1.11,  Add hwPoePortFail and hwPoePortFailResume"
							       				    
                                                               REVISION     "201609190000Z"
                                                               DESCRIPTION  "V1.10,  Change hwPoePortPdClass properties"

                                                               REVISION     "201509280000Z" 
                                                               DESCRIPTION  "V1.09, Add hwPoePortLegacyDetect " 

                                                               REVISION     "201508100000Z"
                                                               DESCRIPTION  "V1.03, Add hwPoeCardAbsent "  

                                                               REVISION     "201504020000Z"
                                                               DESCRIPTION  "V1.02, Add hwPoeNotAvailable and hwPoeNotAvailableResume " 

                                                               REVISION     "201502250000Z" 
                                                               DESCRIPTION  "V1.06, Add hwPoePortMaxPowerThreshold,hwPoePortMinPowerThreshold " 

                                                               REVISION     "201311120000Z"
                                                               DESCRIPTION  "V1.05, Add hwPoePowerInfoTable  "

                                                               REVISION     "201310220000Z"
                                                               DESCRIPTION  "V1.04, Change the maximum power to 200000  "

                                                               REVISION     "201307160000Z"
                                                               DESCRIPTION  "V1.03, Add hwPoePortPoweroffTimeRangeSwitch and hwPoePortPoweroffTimeRangeName "
				                                  
                                                               REVISION     "201304240000Z"
                                                               DESCRIPTION  "V1.02, Add hwPoePSEPowerCut,hwPoePSEPowerCutResume,hwPoeSlotPowerCut,hwPoeSlotPowerCutResume "                         
                                                               
                                                               REVISION     "201303130000Z"
                                                               DESCRIPTION  "V1.01, Add hwPoeControlChipFail and hwPoeControlChipFailResume "                                                               														   

			::= { hwDatacomm 195 }
		
	
--
-- Node definitions
--
	
		hwPoeGlobalObjects OBJECT IDENTIFIER ::= { hwPoeMIB 1 }
		
		
		hwPoePower OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object identifies the maximum POE power of the system."
			::= { hwPoeGlobalObjects 1 }
			
		hwPoePowerRsvPercent OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object identifies the reserved percent of total POE power."
			::= { hwPoeGlobalObjects 4 }
		
		hwPoePowerUtilizationThreshold OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object identifies the utilization threshold of total POE power."
			::= { hwPoeGlobalObjects 5 }		
		
		hwPoeSlotTable OBJECT-TYPE
			SYNTAX SEQUENCE OF HwPoeSlotEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This object indicates the slot configuration table of POE."
			::= { hwPoeMIB 2 }
		
		
		hwPoeSlotEntry OBJECT-TYPE
			SYNTAX HwPoeSlotEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This object indicates the entry of the slot configuration table of POE."
			INDEX { hwPoeSlotId }
			::= { hwPoeSlotTable 1 }
		
		HwPoeSlotEntry ::=
			SEQUENCE { 
				hwPoeSlotId
					Integer32,
				hwPoeSlotMaximumPower
					Integer32,
				hwPoeSlotAvailablePower
					Integer32,
				hwPoeSlotReferencePower
					Integer32,
				hwPoeSlotConsumingPower
					Integer32,
				hwPoeSlotPeakPower
					Integer32,
				hwPoeSlotLegacyDetect
					EnabledStatus,
				hwPoeSlotPowerManagementManner
					INTEGER,
				hwPoeSlotIsPoeDevice
					OCTET STRING,
				hwPoeDimmId
				  Integer32,
				hwPoeSlotPowerRsvPercent
				  Integer32,
				hwPoeSlotPowerUtilizationThreshold
					Integer32,
				hwPoeSlotMcuSupport
					Integer32
			 }

		
		hwPoeSlotId OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This object identifies the slot ID."
			::= { hwPoeSlotEntry 1 }
		
		
		hwPoeSlotMaximumPower OBJECT-TYPE
			SYNTAX Integer32 (0..7200000)
			UNITS "mW"
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object identifies the maximum power set by users. The value is expressed in mW."
			DEFVAL { '1B1980'h }
			::= { hwPoeSlotEntry 2 }
		
		
		hwPoeSlotAvailablePower OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object idenfies the available Power. The value is expressed in mW."
			::= { hwPoeSlotEntry 3 }
		
		
		hwPoeSlotReferencePower OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object identifies the total reference power of a slot. The value is expressed in mW."
			::= { hwPoeSlotEntry 4 }
		
		
		hwPoeSlotConsumingPower OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object identifies the total consuming power of a slot. The value is expressed in mW."
			::= { hwPoeSlotEntry 5 }
		
		
		hwPoeSlotPeakPower OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object identifies the total peak power of a slot. The value is expressed in mW."
			::= { hwPoeSlotEntry 6 }
		
		
		hwPoeSlotLegacyDetect OBJECT-TYPE
			SYNTAX EnabledStatus
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object indicates the compatibility detection of a non-standard device. (1:enable;  2:disable(default))"
			DEFVAL { disabled }
			::= { hwPoeSlotEntry 7 }
		
		
		hwPoeSlotPowerManagementManner OBJECT-TYPE
			SYNTAX INTEGER
				{
				manual(1),
				auto(2)
				}
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object identifies the power management manner. (1:manual, 2:auto(default))."
			DEFVAL { auto }
			::= { hwPoeSlotEntry 8 }
		
		
		hwPoeSlotIsPoeDevice OBJECT-TYPE
			SYNTAX OCTET STRING
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object indicates whether the device supports PoE."
			::= { hwPoeSlotEntry 9 }
		

		hwPoeDimmId OBJECT-TYPE
			SYNTAX Integer32 (0..1)
			MAX-ACCESS accessible-for-notify
			STATUS current
			DESCRIPTION
				"This object identifies the DIMM ID."
			::= { hwPoeSlotEntry 10 }

		hwPoeSlotPowerRsvPercent OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object identifies the reserved percent of POE power in slot."
			::= { hwPoeSlotEntry 11 }

		hwPoeSlotPowerUtilizationThreshold OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object identifies the utilization threshold of total POE power in slot."
			::= { hwPoeSlotEntry 12 }
		
		hwPoeSlotMcuSupport OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object identifies the mcu chip number of a POE slot."
			::= { hwPoeSlotEntry 13 }
		
		hwPoePortTable OBJECT-TYPE
			SYNTAX SEQUENCE OF HwPoePortEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This object indicates the table that contains the configuration parameters of a POE interface. One entry corresponds to a POE interface."
			::= { hwPoeMIB 3 }
		
		
		hwPoePortEntry OBJECT-TYPE
			SYNTAX HwPoePortEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This object indicates the entry of POE Port Table."
			INDEX { hwPoePortIfIndex }
			::= { hwPoePortTable 1 }
		
		HwPoePortEntry ::=
			SEQUENCE { 
				hwPoePortIfIndex
					InterfaceIndex,
				hwPoePortName
					OCTET STRING,
				hwPoePortEnable
					EnabledStatus,
				hwPoePortPriority
					INTEGER,
				hwPoePortMaximumPower
					Integer32,
				hwPoePortPowerOnStatus
					OCTET STRING,
				hwPoePortPowerStatus
					OCTET STRING,
				hwPoePortPdClass
					Integer32,
				hwPoePortReferencePower
					Integer32,
				hwPoePortConsumingPower
					Integer32,
				hwPoePortPeakPower
					Integer32,
				hwPoePortAveragePower
					Integer32,
				hwPoePortCurrent
					OCTET STRING,
				hwPoePortVoltage
					OCTET STRING,
				hwPoePortManualOperation
					INTEGER,
				hwPoePortPoweroffTimeRangeSwitch
					EnabledStatus,
				hwPoePortPoweroffTimeRangeName
					OCTET STRING,
				hwPoePortMaxPowerThreshold
					Integer32,     
				hwPoePortMinPowerThreshold
					Integer32,
				hwPoePortLegacyDetect
					EnabledStatus
			 }

		
		hwPoePortIfIndex OBJECT-TYPE
			SYNTAX InterfaceIndex
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This object indicates the interface index."
			::= { hwPoePortEntry 1 }
		
		
		hwPoePortName OBJECT-TYPE
			SYNTAX OCTET STRING
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object indicates the interface name."
			::= { hwPoePortEntry 2 }
		
		
		hwPoePortEnable OBJECT-TYPE
			SYNTAX EnabledStatus
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object indicates the enabling status of an interface. (1:enable(default);  2:disable)"
			DEFVAL { enabled }
			::= { hwPoePortEntry 3 }
		
		
		hwPoePortPriority OBJECT-TYPE
			SYNTAX INTEGER
				{
				critical(1),
				high(2),
				low(3)
				}
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object identifies the priority of an interface. (1:critical, 2:high, 3:low(default))"
			DEFVAL { low }
			::= { hwPoePortEntry 4 }
		
		
		hwPoePortMaximumPower OBJECT-TYPE
			SYNTAX Integer32 (0..200000)
			UNITS "mW"
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object identifies the maximum power of an interface.The value is expressed in mW."
			DEFVAL { '9088'h }
			::= { hwPoePortEntry 5 }
		
		
		hwPoePortPowerOnStatus OBJECT-TYPE
			SYNTAX OCTET STRING
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object indicates the powering status of an interface."
			::= { hwPoePortEntry 6 }
		
		
		hwPoePortPowerStatus OBJECT-TYPE
			SYNTAX OCTET STRING
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object indicates the status of an interface."
			::= { hwPoePortEntry 7 }
		
		
		hwPoePortPdClass OBJECT-TYPE
			SYNTAX Integer32 (0..255)
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object identifies the class of a PD."
			::= { hwPoePortEntry 8 }
		
		
		hwPoePortReferencePower OBJECT-TYPE
			SYNTAX Integer32 (0..200000)
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object identifies the guaranteed power of an interface. The value is expressed in mW."
			::= { hwPoePortEntry 9 }
		
		
		hwPoePortConsumingPower OBJECT-TYPE
			SYNTAX Integer32 (0..200000)
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object identifies the consuming power of an interface. The value is expressed in mW."
			::= { hwPoePortEntry 10 }
		
		
		hwPoePortPeakPower OBJECT-TYPE
			SYNTAX Integer32 (0..200000)
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object identifies the peak power of an interface. The value is expressed in mW."
			::= { hwPoePortEntry 11 }
		
		
		hwPoePortAveragePower OBJECT-TYPE
			SYNTAX Integer32 (0..200000)
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object identifies the average power of an interface. The value is expressed in mW."
			::= { hwPoePortEntry 12 }
		
		
		hwPoePortCurrent OBJECT-TYPE
			SYNTAX OCTET STRING
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object indicates the current of an interface. The value is expressed in mA."
			::= { hwPoePortEntry 13 }
		
		
		hwPoePortVoltage OBJECT-TYPE
			SYNTAX OCTET STRING
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object indicates the voltage of an interface. The value is expressed in V."
			::= { hwPoePortEntry 14 }
		
		
		hwPoePortManualOperation OBJECT-TYPE
			SYNTAX INTEGER
				{
				powerOff(1),
				powerOn(2)
				}
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object indicates that a PD connected to an interface is powered on or powered off manually."
			::= { hwPoePortEntry 15 }

		hwPoePortPoweroffTimeRangeSwitch OBJECT-TYPE
			SYNTAX EnabledStatus
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object indicates whether the time range of POE power off is configured on the port."
			::= { hwPoePortEntry 16 }

		hwPoePortPoweroffTimeRangeName OBJECT-TYPE
			SYNTAX OCTET STRING
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object indicates that time range name of POE power off configured on the port."
			::= { hwPoePortEntry 17 }

		hwPoePortMaxPowerThreshold OBJECT-TYPE
			SYNTAX Integer32 (0..200000)
			UNITS "mW"
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object identifies the threshold of the available maximum power of an interface. The value is expressed in mW."
			DEFVAL { '9088'h }
			::= { hwPoePortEntry 18 }

		hwPoePortMinPowerThreshold OBJECT-TYPE
			SYNTAX Integer32 (0..200000)
			UNITS "mW"
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object identifies the threshold of the available minimum power of an interface. The value is expressed in mW."
			DEFVAL { '9088'h }
			::= { hwPoePortEntry 19 }

		hwPoePortLegacyDetect OBJECT-TYPE
			SYNTAX EnabledStatus
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object indicates the compatibility detection of a non-standard device. (1:enable;  2:disable(default))"
			DEFVAL { disabled }
			::= { hwPoePortEntry 20 }


		
	  hwPoePortJudgeTable OBJECT-TYPE
			SYNTAX SEQUENCE OF HwPoePortJudgeEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This object indicates the table that contains the judgement of whether port supports POE."
			::= { hwPoeMIB 4 }
		
		
		hwPoePortJudgeEntry OBJECT-TYPE
			SYNTAX HwPoePortJudgeEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This object indicates the entry of table."
			INDEX { hwPoePortJudgeIfIndex }
			::= { hwPoePortJudgeTable 1 }
		
		HwPoePortJudgeEntry ::=
			SEQUENCE { 
				hwPoePortJudgeIfIndex
					InterfaceIndex,
				hwPoePortJudgeIsSupport
					TruthValue
			 }	

		hwPoePortJudgeIfIndex OBJECT-TYPE
			SYNTAX InterfaceIndex
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This object indicates the interface index."
			::= { hwPoePortJudgeEntry 1 }
		
		
		hwPoePortJudgeIsSupport OBJECT-TYPE
			SYNTAX TruthValue
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object indicates whether the interface supports POE."
			::= { hwPoePortJudgeEntry 2 }

    hwPoePowerInfoTable OBJECT-TYPE
			SYNTAX SEQUENCE OF HwPoePowerInfoEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This object indicates the table that contains the power information of POE."
			::= { hwPoeMIB 5 }
		
		
		hwPoePowerInfoEntry OBJECT-TYPE
			SYNTAX HwPoePowerInfoEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This object indicates the entry of table."
			INDEX { hwPoePowerInfoDeviceIndex }
			::= { hwPoePowerInfoTable 1 }
		
		HwPoePowerInfoEntry ::=
			SEQUENCE { 
				hwPoePowerInfoDeviceIndex
					Integer32,
				hwPoePowerInfoDeviceName
					OCTET STRING,
				hwPoePowerInfoDeviceTotalPower
					Integer32,
				hwPoePowerInfoDeviceTotalAvailablePower
					Integer32,
				hwPoePowerInfoDeviceReservedPower
					Integer32,
				hwPoePowerInfoDeviceUsedPower
					Integer32,
				hwPoePowerInfoDeviceRemainPower
					Integer32
			 }	

		hwPoePowerInfoDeviceIndex OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This object indicates the device index.
				 Index: reserved/chassis/slot.
				 The index is format by 4 bytes(8bits for 1 byte): reserved is 1 byte(0x00), 
				 chassis is 12bits and slot is also 12bits.
				e.g. chassis=1, slot=0, the index is 0x00001000.
				If device is chassis, the slot is always 0.
				If device is box, the chassis is always 0."
			::= { hwPoePowerInfoEntry 1 }
		
		
		hwPoePowerInfoDeviceName OBJECT-TYPE
			SYNTAX OCTET STRING
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object indicates the table that contains the name of device."
			::= { hwPoePowerInfoEntry 2 }

		hwPoePowerInfoDeviceTotalPower OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object indicates the table that contains the total power of POE."
			::= { hwPoePowerInfoEntry 3 }

		hwPoePowerInfoDeviceTotalAvailablePower OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object indicates the table that contains the total available power of POE."
			::= { hwPoePowerInfoEntry 4 }

		hwPoePowerInfoDeviceReservedPower OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object indicates the table that contains the reserved power of POE."
			::= { hwPoePowerInfoEntry 5 }

		hwPoePowerInfoDeviceUsedPower OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object indicates the table that contains the used power of POE."
			::= { hwPoePowerInfoEntry 6 }

		hwPoePowerInfoDeviceRemainPower OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object indicates the table that contains the remain power of POE."
			::= { hwPoePowerInfoEntry 7 }
		
		hwPoeMultiMcuTable OBJECT-TYPE
			SYNTAX SEQUENCE OF HwPoeMultiMcuEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This object indicates the slot configuration table of multi-mcu POE."
			::= { hwPoeMIB 6 }
		
		hwPoeMultiMcuEntry OBJECT-TYPE
			SYNTAX HwPoeMultiMcuEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This object indicates the entry of the slot configuration table of multi-mcu POE."
			INDEX { hwPoeMultiMcuSlotId, hwPoeMultiMcuMcuIndex }
			::= { hwPoeMultiMcuTable 1 }
		
		HwPoeMultiMcuEntry ::=
			SEQUENCE { 
				hwPoeMultiMcuSlotId
					Integer32,
				hwPoeMultiMcuMcuIndex
					Integer32,
				hwPoeMultiMcuMaximumPower
					Integer32,
				hwPoeMultiMcuAvailablePower
					Integer32,
				hwPoeMultiMcuPowerRcvPercent
					Integer32,
				hwPoeMultiPowerUtilizationThreshold
					Integer32
			 }

		hwPoeMultiMcuSlotId OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This object identifies the slot ID."
			::= { hwPoeMultiMcuEntry 1 }
		
		hwPoeMultiMcuMcuIndex OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"This object identifies the mcu ID."
			::= { hwPoeMultiMcuEntry 2 }
		
		hwPoeMultiMcuMaximumPower OBJECT-TYPE
			SYNTAX Integer32 (0..1776000)
			UNITS "mW"
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object identifies the maximum power set by users in slot and mcu. The value is expressed in mW."
			DEFVAL { '1B1980'h }
			::= { hwPoeMultiMcuEntry 3 }
		
		hwPoeMultiMcuAvailablePower OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object idenfies the available power in slot and mcu. The value is expressed in mW."
			::= { hwPoeMultiMcuEntry 4 }
		
		hwPoeMultiMcuPowerRcvPercent OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object identifies the reserved percent of POE power in slot and mcu."
			::= { hwPoeMultiMcuEntry 5 }
		
		hwPoeMultiPowerUtilizationThreshold OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"This object identifies the utilization threshold of total POE power in slot and mcu."
			::= { hwPoeMultiMcuEntry 6 }
		
		hwPoeTrapObjects OBJECT IDENTIFIER ::= { hwPoeMIB 39 }
		
		hwPoePdPriority OBJECT-TYPE
			SYNTAX INTEGER
				{
				critical(1),
				high(2),
				low(3)
				}
			MAX-ACCESS accessible-for-notify
			STATUS current
			DESCRIPTION
				"This object identifies the PD priority.(1:critical, 2:high, 3:low(default))"
			::= { hwPoeTrapObjects 1 }
		
		hwPoeSlotNum OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS accessible-for-notify
			STATUS current
			DESCRIPTION
				"This object identifies the slot ID."
			::= { hwPoeTrapObjects 2 }

		hwPoeCurConsumPower OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS accessible-for-notify
			STATUS current
			DESCRIPTION
				"This object identifies the current consuming power."
			::= { hwPoeTrapObjects 3 }

		hwPoeConsumPowerThreshold OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS accessible-for-notify
			STATUS current
			DESCRIPTION
				"This object identifies the threshold of consuming power."
			::= { hwPoeTrapObjects 4 }
			
		hwPoeDeviceID OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS accessible-for-notify
			STATUS current
			DESCRIPTION
				"This object identifies the device ID."
			::= { hwPoeTrapObjects 5 }
		
		hwFrameID OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS accessible-for-notify
			STATUS current
			DESCRIPTION
				"This object identifies the CSS Frame ID."
			::= { hwPoeTrapObjects 6 }
                                      hwPoeChipID OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS accessible-for-notify
			STATUS current
			DESCRIPTION
				"This object identifies the control chip ID."
			::= { hwPoeTrapObjects 7 }

                                    hwTrapProbableCause OBJECT-TYPE
			SYNTAX OCTET STRING
			MAX-ACCESS accessible-for-notify
			STATUS current
			DESCRIPTION
				"The probable cause of poe trap."
			::= { hwPoeTrapObjects 8 }

                hwPoeCardID OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS accessible-for-notify
			STATUS current
			DESCRIPTION
				"This object identifies the poe card ID."
			::= { hwPoeTrapObjects 9 }			
		
                hwPoeSlotStr OBJECT-TYPE
			SYNTAX OCTET STRING
			MAX-ACCESS accessible-for-notify
			STATUS current
			DESCRIPTION
				"This object identifies the poe card String."
			::= { hwPoeTrapObjects 10 }	
        
            hwPoeTrapFaultID OBJECT-TYPE
			SYNTAX Integer32
			MAX-ACCESS accessible-for-notify
			STATUS current
			DESCRIPTION
				"The probable fault id of poe trap."
			::= { hwPoeTrapObjects 11 }	
        
		hwPoeNotification OBJECT IDENTIFIER ::= { hwPoeMIB 40 }
		
		
		hwPoeDimmError NOTIFICATION-TYPE
			OBJECTS { hwPoeSlotNum, hwPoeDimmId }
			STATUS current
			DESCRIPTION 
				"This object indicates the Dimm chip error."
			::= { hwPoeNotification 1 }
		
		
		hwPoePowerOff NOTIFICATION-TYPE
			OBJECTS { hwPoePortName, hwPoeTrapFaultID }
			STATUS current
			DESCRIPTION 
				"This object indicates a PD connected to an interface is powered off."
			::= { hwPoeNotification 2 }
		
		
		hwPoePowerOn NOTIFICATION-TYPE
			OBJECTS { hwPoePortName }
			STATUS current
			DESCRIPTION 
				"This object indicates that a PD connected to an interface is powered on."
			::= { hwPoeNotification 3 }
		
		
		hwPoeSlotPowerOverload NOTIFICATION-TYPE
			OBJECTS { hwPoeSlotNum, hwPoeSlotConsumingPower }
			STATUS current
			DESCRIPTION 
				"This object indicates that the power consumed by a slot exceeds the threshold."
			::= { hwPoeNotification 4 }
		
		
		hwPoeSlotPowerOverloadResume NOTIFICATION-TYPE
			OBJECTS { hwPoeSlotNum, hwPoeSlotConsumingPower }
			STATUS current
			DESCRIPTION 
				"This object indicates that the power consumed by a slot does not exceed the threshold."
			::= { hwPoeNotification 5 }
		
		
		hwPoePdPowerOverload NOTIFICATION-TYPE
			OBJECTS { hwPoePortName, hwPoePortConsumingPower, hwPoePortMaximumPower }
			STATUS current
			DESCRIPTION 
				"This object indicates the power consumed by a PD connected to an interface exceeds the threshold."
			::= { hwPoeNotification 6 }
		
		
		hwPoePdPowerOverloadResume NOTIFICATION-TYPE
			OBJECTS { hwPoePortName, hwPoePortConsumingPower, hwPoePortMaximumPower }
			STATUS current
			DESCRIPTION 
				"This object indicates that the power consumed by a PD connected to an interface does not exceed the threshold."
			::= { hwPoeNotification 7 }
		
		hwPoePdConnected NOTIFICATION-TYPE
			OBJECTS { hwPoePortName }
			STATUS current
			DESCRIPTION 
				"This object indicates that a PD is connected to an interface."
			::= { hwPoeNotification 8 }
		
		
		hwPoePdDisconnected NOTIFICATION-TYPE
			OBJECTS { hwPoePortName }
			STATUS current
			DESCRIPTION 
				"This object indicates that a PD is disconnected from an interface."
			::= { hwPoeNotification 9 }
		
		hwPoePdClassInvalid NOTIFICATION-TYPE
			OBJECTS { hwPoePortName }
			STATUS current
			DESCRIPTION 
				"This object indicates that a PD of an invalid class is detected."
			::= { hwPoeNotification 10 }
		
		hwPoePdClassOvercurrent NOTIFICATION-TYPE
			OBJECTS { hwPoePortName }
			STATUS current
			DESCRIPTION 
				"This object indicates that overcurrent occurs during the classification of a PD."
			::= { hwPoeNotification 11 }
		
		hwPoePdPowerOvercurrent NOTIFICATION-TYPE
			OBJECTS { hwPoePortName }
			STATUS current
			DESCRIPTION 
				"This object indicates that overcurrent occurs during the powering of a PD."
			::= { hwPoeNotification 12 }
		
		hwPoePdPowerOvercurrentResume NOTIFICATION-TYPE
			OBJECTS { hwPoePortName }
			STATUS current
			DESCRIPTION 
				"This object indicates that overcurrent is rectified."
			::= { hwPoeNotification 13 }
		
		hwPoePowerOnFail NOTIFICATION-TYPE
			OBJECTS { hwPoePortName }
			STATUS current
			DESCRIPTION 
				"This object indicates that a PD fails to be powered on."
			::= { hwPoeNotification 14 }
		
		hwPoePowerOffCurrentLimits NOTIFICATION-TYPE
			OBJECTS { hwPoePortName }
			STATUS current
			DESCRIPTION 
				"This object indicates that a PD is powered off because its current meets or exceeds the limit of current."
			::= { hwPoeNotification 15 }
		
		hwPoePdPriorityDifferent NOTIFICATION-TYPE
			OBJECTS { hwPoePortName, hwPoePortPriority, hwPoePdPriority }
			STATUS current
			DESCRIPTION 
				"This object indicates that the priority of PD is different from the port."
			::= { hwPoeNotification 16 }
		
		hwPoePowerOverUtilizationThreshold  NOTIFICATION-TYPE
		  OBJECTS { hwPoeDeviceID, hwPoeCurConsumPower, hwPoeConsumPowerThreshold}
			STATUS current
			DESCRIPTION 
				"This object indicates that the PSE is overdrawing power."
			::= { hwPoeNotification 17 }
		
		hwPoePowerOverUtilizationThresholdResume  NOTIFICATION-TYPE
		  OBJECTS { hwPoeDeviceID, hwPoeCurConsumPower, hwPoeConsumPowerThreshold}
			STATUS current
			DESCRIPTION 
				"This object indicates that the PSE is not overdrawing power."
			::= { hwPoeNotification 18 }
			
		hwPoeBoardInsertedWrongFrame  NOTIFICATION-TYPE
		  OBJECTS {hwFrameID, hwPoeSlotNum }
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe board is inserted in the frame does not support poe."
			::= { hwPoeNotification 19 }			
						
		hwPoePowerAbsent  NOTIFICATION-TYPE
		  OBJECTS {hwFrameID, hwPoeSlotNum }
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe power is absent."
			::= { hwPoeNotification 20 }

		hwPoePowerAbsentResume  NOTIFICATION-TYPE
		  OBJECTS {hwFrameID, hwPoeSlotNum }
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe power is present."
			::= { hwPoeNotification 21 }

		hwPoeRpsPowerOutputAlarm  NOTIFICATION-TYPE
		  OBJECTS {hwPoeSlotNum }
			STATUS current
			DESCRIPTION 
				"This object indicates that the RPS power can not provide POE power for this device."
			::= { hwPoeNotification 22 }

		hwPoeRpsPowerOutputAlarmResume  NOTIFICATION-TYPE
		  OBJECTS {hwPoeSlotNum }
			STATUS current
			DESCRIPTION 
				"This object indicates that the RPS power can provide POE power for this device."
			::= { hwPoeNotification 23 }

                hwPoeControlChipFail  NOTIFICATION-TYPE
		  OBJECTS {hwPoeChipID,hwPoeSlotNum }
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe control chip is failed."
			::= { hwPoeNotification 24 }

                hwPoeControlChipFailResume  NOTIFICATION-TYPE
		  OBJECTS {hwPoeChipID,hwPoeSlotNum }
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe control chip has resumed."
			::= { hwPoeNotification 25 }
			
		hwPoePSEPowerCut  NOTIFICATION-TYPE
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe pse power is not enough."
			::= { hwPoeNotification 26 }
			
		hwPoePSEPowerCutResume  NOTIFICATION-TYPE
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe pse power cut has resumed."
			::= { hwPoeNotification 27 }
			
		hwPoeSlotPowerCut  NOTIFICATION-TYPE
		  OBJECTS {hwPoeSlotNum}
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe slot power is not enough."
			::= { hwPoeNotification 28 }
			
		hwPoeSlotPowerCutResume  NOTIFICATION-TYPE
		  OBJECTS {hwPoeSlotNum}
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe slot power cut has resumed."
			::= { hwPoeNotification 29 }

		hwPoeNotAvailable  NOTIFICATION-TYPE
		  OBJECTS {hwFrameID,hwPoeSlotNum,hwTrapProbableCause}
			STATUS current
			DESCRIPTION 
				"PoE function is not available."
			::= { hwPoeNotification 30 }
			
		hwPoeNotAvailableResume  NOTIFICATION-TYPE
		  OBJECTS {hwFrameID,hwPoeSlotNum}
			STATUS current
			DESCRIPTION 
				"PoE function is  available."
			::= { hwPoeNotification 31 }

		hwPoeCardAbsent  NOTIFICATION-TYPE
		  OBJECTS {hwPoeSlotNum,hwPoeCardID}
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe card is absent."
			::= { hwPoeNotification 32 }

		hwPoePortFail  NOTIFICATION-TYPE
		  OBJECTS {hwPoePortName}
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe port is abnormal."
			::= { hwPoeNotification 33 }

		hwPoePortFailResume  NOTIFICATION-TYPE
		  OBJECTS {hwPoePortName}
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe port has recoverd."
			::= { hwPoeNotification 34 }			
		
		hwPdPowerCut  NOTIFICATION-TYPE
		  OBJECTS {hwPoePortName,hwPoeTrapFaultID}
			STATUS current
			DESCRIPTION 
				"PoE power is not enough."
			::= { hwPoeNotification 35 }

		hwPdPowerCutResume  NOTIFICATION-TYPE
		  OBJECTS {hwPoePortName,hwPoeTrapFaultID}
			STATUS current
			DESCRIPTION 
				"PoE power is enough."
			::= { hwPoeNotification 36 }

		hwPoeChipFail  NOTIFICATION-TYPE
		  OBJECTS {hwPoeChipID,hwPoeSlotStr}
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe chip is failed."
			::= { hwPoeNotification 37 }

		hwPoeChipFailResume  NOTIFICATION-TYPE
		  OBJECTS {hwPoeChipID,hwPoeSlotStr}
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe chip has resumed."
			::= { hwPoeNotification 38 }

		hwPdVltLow  NOTIFICATION-TYPE
		  OBJECTS {hwPoePortName}
			STATUS current
			DESCRIPTION 
				"PD voltage is lower."
			::= { hwPoeNotification 39 }
        
		hwPdVltLowResume  NOTIFICATION-TYPE
		  OBJECTS {hwPoePortName}
			STATUS current
			DESCRIPTION 
				"PD voltage becomes normal from lower."
			::= { hwPoeNotification 40 }
        
		hwPdVltHigh  NOTIFICATION-TYPE
		  OBJECTS {hwPoePortName}
			STATUS current
			DESCRIPTION 
				"PD voltage is high."
			::= { hwPoeNotification 41 }
        
		hwPdVltHighResume  NOTIFICATION-TYPE
		  OBJECTS {hwPoePortName}
			STATUS current
			DESCRIPTION 
				"PD voltage becomes normal from high."
			::= { hwPoeNotification 42 }
        
		hwPseVltLow  NOTIFICATION-TYPE
		  OBJECTS {hwPoeChipID,hwPoeSlotStr}
			STATUS current
			DESCRIPTION 
				"PSE voltage is lower."
			::= { hwPoeNotification 43 }
        
		hwPseVltLowResume  NOTIFICATION-TYPE
		  OBJECTS {hwPoeChipID,hwPoeSlotStr}
			STATUS current
			DESCRIPTION 
				"PSE voltage becomes normal from lower."
			::= { hwPoeNotification 44 }

		hwPoePdOvercurrentPoweroff NOTIFICATION-TYPE
			OBJECTS { hwPoePortName }
			STATUS current
			DESCRIPTION 
				"This object indicates that the PD is power off due to overcurrent."
			::= { hwPoeNotification 45 }		

		hwPoePdOverloadPoweroff NOTIFICATION-TYPE
			OBJECTS { hwPoePortName }
			STATUS current
			DESCRIPTION 
				"This object indicates that the PD is power off due to overload."
			::= { hwPoeNotification 46 }

		hwPoeSubCardAbsent  NOTIFICATION-TYPE
		  OBJECTS {hwPoeCardID,hwPoeSlotStr}
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe subcard is absent."
			::= { hwPoeNotification 47 }

		hwPoeSubCardAbsentResume  NOTIFICATION-TYPE
		  OBJECTS {hwPoeCardID,hwPoeSlotStr}
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe subcard is re-installed."
			::= { hwPoeNotification 48 }

		hwPoeCommunicateFail  NOTIFICATION-TYPE
		  OBJECTS {hwPoeChipID,hwPoeSlotStr}
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe communication fails."
			::= { hwPoeNotification 49 }

		hwPoeCommunicateFailResume  NOTIFICATION-TYPE
		  OBJECTS {hwPoeChipID,hwPoeSlotStr}
			STATUS current
			DESCRIPTION 
				"This object indicates that the poe communication has resumed."
			::= { hwPoeNotification 50 }
        
		hwPoeConformance OBJECT IDENTIFIER ::= { hwPoeMIB 100 }
    hwPoeCompliances OBJECT IDENTIFIER ::= { hwPoeConformance 1 }
    hwPoeCompliance MODULE-COMPLIANCE
           STATUS      current
           DESCRIPTION
            "The compliance statement for systems supporting this module."
        
           MODULE
           MANDATORY-GROUPS
               {
                   hwPoeSlotGroup, hwPoePortGroup, hwPoeGlobalGroup, 
                   hwPoeNotificationGroup, hwPoeTrapObjectsGroup, hwPoePowerInfoGroup
               }  
                                           
        ::= { hwPoeCompliances 1 }  		
		
		hwPoeGroups OBJECT IDENTIFIER ::= { hwPoeConformance 2 }
		
		
		hwPoeSlotGroup OBJECT-GROUP
			OBJECTS { hwPoeSlotMaximumPower, hwPoeSlotReferencePower, hwPoeSlotConsumingPower, hwPoeSlotPeakPower, hwPoeSlotPowerManagementManner, 
				hwPoeSlotIsPoeDevice, hwPoeSlotLegacyDetect, hwPoeSlotPowerRsvPercent, hwPoeSlotPowerUtilizationThreshold, hwPoeSlotMcuSupport, 
				hwPoeDimmId, hwPoeSlotAvailablePower }
			STATUS current
			DESCRIPTION 
				"This object indicates the POE's slot table group."
			::= { hwPoeGroups 1 }
		
		
		hwPoePortGroup OBJECT-GROUP
			OBJECTS { hwPoePortEnable, hwPoePortPriority, hwPoePortMaximumPower, hwPoePortPowerOnStatus, hwPoePortPowerStatus, 
				hwPoePortReferencePower, hwPoePortName, hwPoePortConsumingPower, hwPoePortPeakPower, hwPoePortAveragePower, 
				hwPoePortCurrent, hwPoePortVoltage, hwPoePortManualOperation, hwPoePortPdClass,hwPoePortJudgeIsSupport,
				hwPoePortPoweroffTimeRangeSwitch, hwPoePortPoweroffTimeRangeName,
				hwPoePortMaxPowerThreshold, hwPoePortMinPowerThreshold, hwPoePortLegacyDetect}
			STATUS current
			DESCRIPTION 
				"This object indicates the POE's port table group."
			::= { hwPoeGroups 2 }
		
		
		hwPoeGlobalGroup OBJECT-GROUP
			OBJECTS { hwPoePowerUtilizationThreshold, hwPoePowerRsvPercent, hwPoePower }
			STATUS current
			DESCRIPTION 
				"This object indicates the POE's global table group."
			::= { hwPoeGroups 3 }
		
		
		hwPoeNotificationGroup NOTIFICATION-GROUP
			NOTIFICATIONS { hwPoeDimmError, hwPoePowerOff, hwPoePowerOn, hwPoePdPowerOverload, hwPoePdPowerOverloadResume, 
				hwPoePdConnected, hwPoePdDisconnected, hwPoePdClassInvalid, hwPoePdClassOvercurrent, hwPoePdPowerOvercurrent, 
				hwPoePdPowerOvercurrentResume, hwPoePowerOnFail, hwPoePowerOffCurrentLimits, hwPoePowerOverUtilizationThresholdResume ,    
                                hwPoePowerOverUtilizationThreshold , hwPoePdPriorityDifferent, hwPoeSlotPowerOverload, hwPoeSlotPowerOverloadResume , 
                                hwPoeBoardInsertedWrongFrame ,hwPoePowerAbsent,hwPoePowerAbsentResume,
				hwPoeRpsPowerOutputAlarm, hwPoeRpsPowerOutputAlarmResume,
                                hwPoeControlChipFail, hwPoeControlChipFailResume,
                                hwPoePSEPowerCut,hwPoePSEPowerCutResume,hwPoeSlotPowerCut,hwPoeSlotPowerCutResume,
                                hwPoeNotAvailable,hwPoeNotAvailableResume,hwPoeCardAbsent,hwPoePortFail,hwPoePortFailResume,
                                hwPdPowerCut,hwPdPowerCutResume,hwPoeChipFail,hwPoeChipFailResume,hwPdVltLow,hwPdVltLowResume,
                                hwPdVltHigh,hwPdVltHighResume,hwPseVltLow,hwPseVltLowResume,hwPoePdOvercurrentPoweroff,hwPoePdOverloadPoweroff,
                                hwPoeSubCardAbsent,hwPoeSubCardAbsentResume,hwPoeCommunicateFail,hwPoeCommunicateFailResume}
			STATUS current
			DESCRIPTION 
				"This object indicates the POE's notification table group."
			::= { hwPoeGroups 4 }
		
		hwPoeTrapObjectsGroup OBJECT-GROUP
			OBJECTS { hwPoePdPriority, hwPoeSlotNum, hwPoeCurConsumPower,hwPoeConsumPowerThreshold,hwPoeDeviceID,hwFrameID,hwPoeChipID ,hwTrapProbableCause,hwPoeCardID,hwPoeSlotStr,hwPoeTrapFaultID}
			STATUS current
			DESCRIPTION 
				"Description."
			::= { hwPoeGroups 5 }

		hwPoePowerInfoGroup OBJECT-GROUP
			OBJECTS {	hwPoePowerInfoDeviceName, hwPoePowerInfoDeviceTotalPower, hwPoePowerInfoDeviceTotalAvailablePower, hwPoePowerInfoDeviceReservedPower,
				        hwPoePowerInfoDeviceUsedPower, hwPoePowerInfoDeviceRemainPower }
			STATUS current
			DESCRIPTION 
				"This object indicates the POE's power information table group."
			::= { hwPoeGroups 6 }
		
		hwPoeMultiMcuGroup OBJECT-GROUP
			OBJECTS { hwPoeMultiMcuMaximumPower, hwPoeMultiMcuAvailablePower, hwPoeMultiMcuPowerRcvPercent, hwPoeMultiPowerUtilizationThreshold }
			STATUS current
			DESCRIPTION 
				"This object indicates the POE's multi-mcu table group."
			::= { hwPoeGroups 7 }
		
	
	END

--
-- HUAWEI-POE-MIB.mib
--

