-- *****************************************************************
-- RAISECOM-POE-MIB.mib
--
-- june 2009, wangying
--
-- Copyright(c) 2003-2005 by RAISECOM TECH, Ltd. 
-- All rights reserved.
-- *****************************************************************
                      

RAISECOM-POE-MIB DEFINITIONS ::= BEGIN      
IMPORTS
    Unsigned32               			FROM SNMPv2-SMI    -- [RFC2578] 
    pethPsePortGroupIndex , 
    pethPsePortIndex,
    pethMainPseGroupIndex               FROM POWER-ETHERNET-MIB  -- [RFC3621]rfc3621-power-ethernet
    InterfaceIndex					    FROM IF-MIB        -- [RFC2863]
    EnableVar                           FROM SWITCH-TC
    iscomSwitch                         FROM RAISECOM-BASE-MIB
    ;
rcPoe  MODULE-IDENTITY
    LAST-UPDATED   "200711020000Z"
    ORGANIZATION   "Raisecom, Inc."
    CONTACT-INFO  
                "       Raise Systems
                        
                Postal: Beijing,
                        China

                   Tel: 
                E-mail: wangying@raisecom.com"
    DESCRIPTION
        "This MIB module defines objects to POE "
        REVISION   "200711020000Z"
        DESCRIPTION
            "The initial revision of this MIB."
        ::={ iscomSwitch 51 } 

                                                                                                
-- POE Interface Table   

rcPsePortTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RcPsePortEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "POE Interface table"
    ::= { rcPoe 1 }

rcPsePortEntry   OBJECT-TYPE
    SYNTAX      RcPsePortEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "An entry in the rcPsePortTable. It contains
        POE status in each interface port."
	INDEX        { pethPsePortGroupIndex , pethPsePortIndex  }    
    ::={ rcPsePortTable 1 }
    
    RcPsePortEntry ::= SEQUENCE {
   	rcPsePortPeakPower					    Unsigned32,
	rcPsePortAveragePower					Unsigned32,        
	rcPsePortCurrentPower                   Unsigned32, 
	rcPsePortCurrentVoltage                 Unsigned32,
	rcPsePortCurrent	                    Unsigned32,
	rcPsePortPowerLimit                     Unsigned32,
	rcPsePortOperStatus			EnableVar,
	rcPsePortForcePower			EnableVar,
	rcPsePortPoeProtectStatus	OCTET STRING (SIZE(1..256))	 
}

rcPsePortPeakPower        OBJECT-TYPE
	SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The peak power of the PSE port in milliWatts."
    ::= { rcPsePortEntry 1 }    
     
rcPsePortAveragePower        OBJECT-TYPE
	SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The average power of the PSE port in milliWatts."
    ::= { rcPsePortEntry 2 }      
rcPsePortCurrentPower        OBJECT-TYPE
	SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The current power of the PSE port in milliWatts."
    ::= { rcPsePortEntry 3 }    
rcPsePortCurrentVoltage        OBJECT-TYPE
	SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The current voltage of the PSE port in Millivolt."
    ::= { rcPsePortEntry 4 }    
rcPsePortCurrent        OBJECT-TYPE
	SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The current circuit of the PSE port in Milliampere."
    ::= { rcPsePortEntry 5 }    
rcPsePortPowerLimit        OBJECT-TYPE
	SYNTAX      Unsigned32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "The max power of the PSE port in milliWatts.the value is configured by manual."
    ::= { rcPsePortEntry 6 }    
rcPsePortOperStatus        OBJECT-TYPE
	SYNTAX INTEGER   {
               enable(1),
               disable(2),
               force-power(3)
          }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The operational status of the port PSE.1:enable,2:disable,3:force-power"
    ::= { rcPsePortEntry 7 }   
       
rcPsePortForcePower        OBJECT-TYPE
	SYNTAX      EnableVar
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "The force-power status of the port PSE.1:enable,2:disable"
    ::= { rcPsePortEntry 8 }

rcPsePortPoeProtectStatus        OBJECT-TYPE
	SYNTAX      OCTET STRING (SIZE(1..256))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "The poe protect status of the port PSE. "
    ::= { rcPsePortEntry 9 }       

 -- POE Main Table   

rcMainPseTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RcMainPseEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of objects that display and control attributes
            of the main power source in a PSE  device.  Ethernet
            switches are one example of boxes that would support
            these objects."
    ::= { rcPoe 2 }

rcMainPseEntry   OBJECT-TYPE
    SYNTAX      RcMainPseEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A set of objects that display and control the Main
             power of a PSE."
	INDEX        { pethMainPseGroupIndex}    
    ::={ rcMainPseTable 1 }
    
    RcMainPseEntry ::= SEQUENCE {
   	rcMainPseAveragePower			   Unsigned32,
	rcMainPsePeakPower					Unsigned32,   
	rcMainPseLegacyDetectionEnable         EnableVar,
	rcMainPseManageMode                   INTEGER, 
	rcMainPseTemperatureProtect                 EnableVar,
	rcMainPseModuleOverTemp	                    EnableVar,
	rcMainPseChipSupplyVoltage                  Unsigned32,
	rcMainPseMode                               INTEGER,
	rcMainPseHighInrushEnable                   EnableVar,				
	rcMainPseCurrentProtectMode	            EnableVar	
}
 
rcMainPseAveragePower        OBJECT-TYPE
	SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The average power of the PSE in milliWatts."
    ::= { rcMainPseEntry 1 }    
 
rcMainPsePeakPower        OBJECT-TYPE
	SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The peak power of the PSE in milliWatts."
    ::= { rcMainPseEntry 2 }     
    
rcMainPseLegacyDetectionEnable        OBJECT-TYPE
	SYNTAX      EnableVar
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "Legacy CAP Detection1-enable2-disable"
    ::= { rcMainPseEntry 3 }     
 
rcMainPseManageMode        OBJECT-TYPE
	SYNTAX INTEGER   {
               auto(1),
               manual(2)
          }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "The management mode of power of PSE. 1-auto mode,2-manual mode."
    ::= { rcMainPseEntry 4 }   
        
rcMainPseTemperatureProtect        OBJECT-TYPE
	SYNTAX      EnableVar
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "The swich of over tempreture protection.1-enable;2-disable."
    ::= { rcMainPseEntry 5 } 

rcMainPseModuleOverTemp        OBJECT-TYPE
	SYNTAX INTEGER   {
               normal(1),
               alarm(2)
          }

    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The status of over tempreture alarm for PSE,1-normal;2-alarm."
    ::= { rcMainPseEntry 6 }    
          
rcMainPseChipSupplyVoltage        OBJECT-TYPE
	SYNTAX Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The Vmain Voltage Measurement in Millivolt."
    ::= { rcMainPseEntry 7 }
    
rcMainPseMode        OBJECT-TYPE
	SYNTAX INTEGER	{
		AF(1),
		AT(2)
          }

    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The status of over tempreture alarm for PSE,1-normal;2-alarm."
    ::= { rcMainPseEntry 8 }
    
rcMainPseHighInrushEnable        OBJECT-TYPE
	SYNTAX EnableVar
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "The power-on instantly whether to allow high current impact,1-allow;2-ban"
    ::= { rcMainPseEntry 9 }         
 
 rcMainPseCurrentProtectMode        OBJECT-TYPE
	SYNTAX INTEGER   {
               class(1),
               power(2)
          }

    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "Set current protect level according to CLASS Level. 1: Set Icut according
to CLASS; 2: Set Icut to maximum value according to power allocation limits"
    ::= { rcMainPseEntry 10 }

-- trap notification 
rcPoeNotifications           OBJECT IDENTIFIER ::= { rcPoe 3 }
rcMainPseOverTempreture
NOTIFICATION-TYPE
    OBJECTS     { rcMainPseModuleOverTemp
                }
    STATUS      current
    DESCRIPTION
       "This Notification indicates if Pse is over tempreture or below tempreture.  
       This Notification SHOULD be sent on every status change.
              "
    REFERENCE
       ""
    ::= { rcPoeNotifications 1 }

END      


