-- ArubaOS 7.2.0.0_36526

    WLSX-POE-MIB DEFINITIONS ::= BEGIN

    IMPORTS
        MODULE-IDENTITY,
        OBJECT-TYPE,
        Integer32,
        NOTIFICATION-TYPE
            FROM SNMPv2-SMI

        TruthValue
            FROM SNMPv2-TC
        
        OBJECT-GROUP
            FROM SNMPv2-CONF

        wlsxEnterpriseMibModules
            FROM ARUBA-MIB;

    wlsxPoEMIB MODULE-IDENTITY
        LAST-UPDATED "201105160000Z"
        ORGANIZATION "Aruba Wireless Networks"
        CONTACT-INFO
            "Postal:    1322 Crossman Avenue
                        Sunnyvale, CA 94089
            E-mail:     dl-support@arubanetworks.com
            Phone:      +1 408 227 4500"
        DESCRIPTION
             "This MIB module defines MIB objects which provide
             information about the Power Sourcing Equipment(PSE)
             and Powered Device(PD).
 
             The following abbreviations are defined in [IEEE-802.3af] and
             will be used with the same significance in this document:
                 PSE - Power Sourcing Equipment;
                 PD - Powered Device;"
        REVISION     "201105160000Z"
        DESCRIPTION
            "The initial revision."
        ::= { wlsxEnterpriseMibModules 18 }

    wlsxPoEMIBNotifications OBJECT IDENTIFIER ::= { wlsxPoEMIB 0 }

    wlsxPoEMIBObjects       OBJECT IDENTIFIER ::= { wlsxPoEMIB 1 }

    wlsxPoEMIBConformance   OBJECT IDENTIFIER ::= { wlsxPoEMIB 2 }

    wlsxPoEMIBCompliances   OBJECT IDENTIFIER ::= { wlsxPoEMIBConformance 1 }

    wlsxPoEMIBGroups        OBJECT IDENTIFIER ::= { wlsxPoEMIBConformance 2 }


    wlsxPsePortTable OBJECT-TYPE
        SYNTAX        SEQUENCE OF WlsxPsePortEntry
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION
            "A table of objects that display the parameters configured
            for a power ethernet port."
        ::= { wlsxPoEMIBObjects 1 }

    wlsxPsePortEntry OBJECT-TYPE
        SYNTAX        WlsxPsePortEntry
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION
            "A set of objects that display the configuration of a power 
            ethernet port."
        INDEX { wlsxPsePortIndex }
        ::= { wlsxPsePortTable 1 }

    WlsxPsePortEntry ::=
        SEQUENCE {
            wlsxPsePortIndex                 Integer32,
            wlsxPsePortAdminStatus           INTEGER, 
            wlsxPsePortState                 INTEGER,
            wlsxPsePortStatus                INTEGER,
            wlsxPsePortDiscoveryMode         INTEGER,
            wlsxPsePortIsPdDetected          TruthValue,
            wlsxPsePortIsIeeePd              TruthValue,
            wlsxPsePortPdClass               INTEGER,
            wlsxPsePortPriority              INTEGER,
            wlsxPsePortDefaultPowerMax       Integer32,
            wlsxPsePortPowerAllocated        Integer32,
            wlsxPsePortPowerConsumed         Integer32,
            wlsxPsePortVoltage               Integer32,
            wlsxPsePortCurrent               Integer32
      }

    wlsxPsePortIndex OBJECT-TYPE
        SYNTAX       Integer32
        MAX-ACCESS   not-accessible
        STATUS       current
        DESCRIPTION
            "This variable uniquely identifies the power
            ethernet port for which this entry 
            is populated."
        ::= { wlsxPsePortEntry 1 }

    wlsxPsePortAdminStatus OBJECT-TYPE
        SYNTAX       INTEGER {
                         enable(1),
                         disable(2)
                     }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Admin status of a power ethernet port.

            A value of enable(1) means that the port
            has PSE functions enabled on it.

            A value of disable(2) means that the port
            does not support or has disabled PSE 
            functions."
        ::= { wlsxPsePortEntry 2 }

    wlsxPsePortState  OBJECT-TYPE
        SYNTAX       INTEGER {
                         on(1),
                         off(2)
                     }
        MAX-ACCESS   read-only
        STATUS       current
        DESCRIPTION
            "This object indicates the status of the port.
            The reason for these states is indicated by wlsxPsePortStatus.

            on(1)  - indicates that PSE is sourcing power.
            off(2) - indicates that PSE is not sourcing power."
        ::= { wlsxPsePortEntry 3 }

    wlsxPsePortStatus OBJECT-TYPE
        SYNTAX       INTEGER {
                         unknown(1),
                         offAdmin(2),
                         offPowerManagement(3),
                         offIllegalClass(4),
                         offDetectionProgress(5),
                         offHardwareError(6),
                         offNonStandardPd(7)
                     }
        MAX-ACCESS   read-only
        STATUS       current
        DESCRIPTION
            "This object indicates the status of the port.

            unknown(1)             - indicates either a state of off with the
                                     reason being not known or the state is
                                     on.
            offAdmin(2)            - indicates the port is administratively
                                     disabled.
            offPowerManagement(3)  - indicates the port is off due to power
                                     management.
            offIllegalClass(4)     - indicates the port is off because the PD
                                     is of illegal class.
            offDetectionProgress(5)- indicates the port is off because the PD
                                     detection is in progress.
            offHardwareError(6)    - indicates the port is off because of
                                     hardware error.
            offNonStandardPd(7)    - indicates the port is off because the PD
                                     is a non standard one."
        ::= { wlsxPsePortEntry 4 }


    wlsxPsePortDiscoveryMode OBJECT-TYPE
        SYNTAX      INTEGER {
                        unknown(0),
                        off(1),
                        ieee(2),
                        cisco(3)
                    }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "This object indicates the method of discovery used
            by the system for the detection of the Powered Device(PD).
             
            A value of unknown(0) means that the discovery method
            is unknown on this port.

            A value of off(1) means that the discovery method
            is turned off on this port.

            A value of ieee(2) indicates that the discovery method
            is IEEE based on this port.

            A value of cisco(3) indicates that the discovery method
            is Cisco based on this port."
        ::= { wlsxPsePortEntry 5 }

    wlsxPsePortIsPdDetected OBJECT-TYPE
        SYNTAX      TruthValue
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "This object indicates if a Powered Device(PD) is
            detected on this port."
        ::= { wlsxPsePortEntry 6 }
    
    wlsxPsePortIsIeeePd OBJECT-TYPE
        SYNTAX      TruthValue
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "This object indicates the IEEE compliance of a
            Powered Device(PD).

            A value of true(1) means the Powered Device(PD)
            is IEEE compliant.

            A value of false(2) means the Powered Device is
            not IEEE compliant."
        ::= { wlsxPsePortEntry 7 }

    wlsxPsePortPdClass OBJECT-TYPE
        SYNTAX      INTEGER {
                        unknownClass(0),
                        class0(1),
                        class1(2),
                        class2(3),
                        class3(4),
                        class4(5)
                    }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "This object indicates the Power classification of the 
            Powered Device(PD) connected on the port.

            A value of 'class0(1)' indicates that the power 
            classification of the powered device falls into
            class 0 in IEEE specifications.

            A value of 'class1(2)' indicates that the power
            classification of the powered devices falls into
            class 1 in IEEE specifications.

            A value of 'class2(3)' indicates that the power
            classification of the powered devices falls into
            class 2 in IEEE specifications.

            A value of 'class3(4)' indicates that the power
            classification of the powered devices falls into
            class 3 in IEEE specifications.

            A value of 'class4(5)' indicates that the power
            classification of the powered devices falls into
            class 4 in IEEE specifications."
        ::={ wlsxPsePortEntry 8 }

    wlsxPsePortPriority OBJECT-TYPE
        SYNTAX       INTEGER {
                         low(1),
                         high(2),
                         critical(3)
                     }
        MAX-ACCESS   read-only
        STATUS       current
        DESCRIPTION
            "This object indicates the configured priority for this port.

            low(1)      - indicates the priority of the port is low.
            high(2)     - indicates the priority of the port is high.
            critical(3) - indicates the priority of the port is critical."
        ::= { wlsxPsePortEntry 9 }

    wlsxPsePortDefaultPowerMax OBJECT-TYPE
        SYNTAX       Integer32
        UNITS        "milliwatts"
        MAX-ACCESS   read-only
        STATUS       current
        DESCRIPTION
            "This object indicates the default maximum power available
            on this port."
        ::= { wlsxPsePortEntry 10 }

    wlsxPsePortPowerAllocated OBJECT-TYPE
        SYNTAX       Integer32
        UNITS        "milliwatts"
        MAX-ACCESS   read-only
        STATUS       current
        DESCRIPTION
            "This object indicates the configured power allocation
            on this port."
        ::= { wlsxPsePortEntry 11 }

    wlsxPsePortPowerConsumed OBJECT-TYPE
        SYNTAX       Integer32
        UNITS        "milliwatts"
        MAX-ACCESS   read-only
        STATUS       current
        DESCRIPTION
            "This object gives the power consumption by the PD on this port."
        ::= { wlsxPsePortEntry 12 }

    wlsxPsePortVoltage OBJECT-TYPE
        SYNTAX       Integer32
        UNITS        "milliVolts"
        MAX-ACCESS   read-only
        STATUS       current
        DESCRIPTION
            "This object indicates the voltage on this port."
        ::= { wlsxPsePortEntry 13 }

    wlsxPsePortCurrent OBJECT-TYPE
        SYNTAX       Integer32
        UNITS        "milliAmps"
        MAX-ACCESS   read-only
        STATUS       current
        DESCRIPTION
            "This object indicates the current on this port."
        ::= { wlsxPsePortEntry 14 }


    wlsxPseSlotTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF WlsxPseSlotEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table of objects that display all the details about the 
            Power Sourcing Equipment(PSE)."
        ::= { wlsxPoEMIBObjects 2 }

    wlsxPseSlotEntry OBJECT-TYPE
        SYNTAX      WlsxPseSlotEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A set of objects that displays all the information about
            the PSE on this device on a per slot basis."
        INDEX  {wlsxPseSlotIndex }
        ::= {wlsxPseSlotTable 1 }

    WlsxPseSlotEntry ::=
        SEQUENCE {
            wlsxPseSlotIndex                Integer32,
            wlsxPseSlotPowerAvailable       Integer32,
            wlsxPseSlotPowerConsumption     Integer32,
            wlsxPseSlotGuardBand            Integer32,
            wlsxPseSlotPoEManagementMode    INTEGER
        }   
    wlsxPseSlotIndex OBJECT-TYPE
        SYNTAX       Integer32
        MAX-ACCESS   not-accessible
        STATUS       current
        DESCRIPTION
            "This object uniquely identifies a PSE entry."
        ::= { wlsxPseSlotEntry 1 }

    wlsxPseSlotPowerAvailable OBJECT-TYPE
        SYNTAX       Integer32
        UNITS        "watts"
        MAX-ACCESS   read-only
        STATUS       current
        DESCRIPTION
            "This object indicates the total amount of power 
            available from this PSE."
        ::= { wlsxPseSlotEntry 2 }

    wlsxPseSlotPowerConsumption OBJECT-TYPE
        SYNTAX       Integer32
        UNITS        "watts"
        MAX-ACCESS   read-only
        STATUS       current
        DESCRIPTION
            "This object indicates the total amount of power consumed
            from this PSE."
        ::= { wlsxPseSlotEntry 3 }

    wlsxPseSlotGuardBand OBJECT-TYPE
        SYNTAX       Integer32
        MAX-ACCESS   read-only
        STATUS       current
        DESCRIPTION
            "This object indicates the power left unused to be provided
            in case of spikes in the amount of power used."
        ::={ wlsxPseSlotEntry 4 }

    wlsxPseSlotPoEManagementMode OBJECT-TYPE
        SYNTAX       INTEGER {
                         dynamic(1),
                         static(2),
                         class(3)
                     }
        MAX-ACCESS   read-only
        STATUS       current
        DESCRIPTION
            "This object indicates the PSE management mode.

            A value of dynamic(1) indicates that it is 
            dynamic power management.

            A value of static(2) indicates that it is 
            static power management.

            A value of class(3) indicates that it is a 
            Class based power management."
        ::= { wlsxPseSlotEntry 5 }

    wlsxTrapInterfacePoEState  NOTIFICATION-TYPE
        OBJECTS  { wlsxPsePortIndex, wlsxPsePortState, wlsxPsePortStatus }
        STATUS   current
        DESCRIPTION
            "When there is a PoE state transition i.e on or off then this trap
            is sent to the management entity"
        ::= { wlsxPoEMIBNotifications 1 }

-- conformance

    wlsxPoEMIBCompliance MODULE-COMPLIANCE
        STATUS       current
        DESCRIPTION
            "This is the statement of compliance."
        MODULE
        MANDATORY-GROUPS
        {
            wlsxPoEMIBPortGroup,
            wlsxPoEMIBMainPseGroup,
            wlsxPoEMIBNotificationsGroup
        }
        ::= { wlsxPoEMIBCompliances 1 }

-- units of conformance

    wlsxPoEMIBPortGroup OBJECT-GROUP
        OBJECTS     {
            wlsxPsePortAdminStatus,
            wlsxPsePortState,
            wlsxPsePortStatus,
            wlsxPsePortDiscoveryMode,
            wlsxPsePortIsPdDetected,
            wlsxPsePortIsIeeePd,
            wlsxPsePortPdClass,
            wlsxPsePortPriority,
            wlsxPsePortDefaultPowerMax,
            wlsxPsePortPowerAllocated,
            wlsxPsePortPowerConsumed,
            wlsxPsePortVoltage,
            wlsxPsePortCurrent
        }
        STATUS      current
        DESCRIPTION
            "This group provides the details of all the 
            Power ethernet ports on the device."
        ::= { wlsxPoEMIBGroups 1 }

    wlsxPoEMIBMainPseGroup OBJECT-GROUP
        OBJECTS     {
            wlsxPseSlotPowerAvailable,
            wlsxPseSlotPowerConsumption,
            wlsxPseSlotGuardBand,
            wlsxPseSlotPoEManagementMode
        }
        STATUS      current
        DESCRIPTION
            "This group provides the details of the PSE
            entry."
        ::= { wlsxPoEMIBGroups 2 }

    wlsxPoEMIBNotificationsGroup NOTIFICATION-GROUP
        NOTIFICATIONS { wlsxTrapInterfacePoEState }
        STATUS        current
        DESCRIPTION
            "This group gives the collection of Notifications
            related to power consumption on an port."
        ::= { wlsxPoEMIBGroups 3 }

END
