-- ****************************************************************************
--
--                      HP Hot Swap Subsystem
--      Management Information Base for SNMP Network Management
--
--      Version Q.01.00 (1/17/95)
-- 
--      Copyright 1995 Hewlett-Packard Company.
--      All Rights Reserved.
--
--      The information in this document is subject to change without notice.
--
--      The HP Enterprise number is 11.
--      The ASN.1 prefix to, and including the HP Enterprise is:
--      1.3.6.1.4.1.11
--
-- ****************************************************************************
-- Summary of HP NSA Hot Swap Subsystem Information MIB
-- ****************************************************************************
--
-- hp  (1.3.6.1.4.1.11)
--    nm  (1.3.6.1.4.1.11.2)
--       hpnsa  (1.3.6.1.4.1.11.2.23)
--          hpnsaHotSwap Group     (hpnsa.20)
--             hpnsaHSMibRev Group    (hpnsa.20.1)             
--                hpnsaHSMibRevMajor  (hpnsa.20.1.1)  
--                hpnsaHSMibRevMinor  (hpnsa.20.1.2)
--
--             hpnsaHSAgent Group            (hpnsa.20.2)
--                hpnsaHSAgentTable          (hpnsa.20.2.1)
--                   hpnsaHSAgentEntry       (hpnsa.20.2.1.1)
--                      hpnsaHSAgentIndex    (hpnsa.20.2.1.1.1)
--                      hpnsaHSAgentName     (hpnsa.20.2.1.1.2)
--                      hpnsaHSAgentVersion  (hpnsa.20.2.1.1.3)
--                      hpnsaHSAgentDate     (hpnsa.20.2.1.1.4)
--
--             hpnsaHSModule Group                  (hpnsa.20.3)
--                hpnsaHSModuleTable                (hpnsa.20.3.1)
--                   hpnsaHSModuleEntry             (hpnsa.20.3.1.1)
--                      hpnsaHSModuleIndex          (hpnsa.20.3.1.1.1)
--                      hpnsaHSModuleScsiCableType  (hpnsa.20.3.1.1.2)
--                      hpnsaHSModuleTempStatus     (hpnsa.20.3.1.1.3)
--                      hpnsaHSModuleSwitchState    (hpnsa.20.3.1.1.4)
--                      hpnsaHSModuleDeviceStartup  (hpnsa.20.3.1.1.5)
--                      hpnsaHSModuleMiddleDrvAddr  (hpnsa.20.3.1.1.6)
--                      hpnsaHSModuleHi8ScsiAddr    (hpnsa.20.3.1.1.7)
--
--             hpnsaHSDev Group                (hpnsa.20.4)
--                hpnsaHSDevTable              (hpnsa.20.4.1)
--                   hpnsaHSDevEntry           (hpnsa.20.4.1.1)
--                      hpnsaHSDevModuleIndex  (hpnsa.20.4.1.1.1)
--                      hpnsaHSDevIndex        (hpnsa.20.4.1.1.2)
--                      hpnsaHSDevExistence    (hpnsa.20.4.1.1.3)
--                      hpnsaHSDevScsiAddr     (hpnsa.20.4.1.1.4)
--                      hpnsaHSDevPowerStatus  (hpnsa.20.4.1.1.5)
--                hpnsaHSPwrAlertDelay         (hpnsa.20.4.2)
--
-- ******************************************************************************
HPNSAHOTSWAPSUBSYSTEM-MIB DEFINITIONS ::= BEGIN
   IMPORTS
      enterprises    FROM RFC1155-SMI
      DisplayString  FROM RFC1213-MIB
      OBJECT-TYPE    FROM RFC-1212;
		
   hp                   OBJECT IDENTIFIER ::= { enterprises 11 }
   nm                   OBJECT IDENTIFIER ::= { hp 2 }
   hpnsa                OBJECT IDENTIFIER ::= { nm 23 }  
   hpnsaHotSwap         OBJECT IDENTIFIER ::= { hpnsa 20 }
   hpnsaHSMibRev        OBJECT IDENTIFIER ::= { hpnsaHotSwap 1 }
   hpnsaHSAgent         OBJECT IDENTIFIER ::= { hpnsaHotSwap 2 }      
   hpnsaHSModule        OBJECT IDENTIFIER ::= { hpnsaHotSwap 3 }      
   hpnsaHSDev           OBJECT IDENTIFIER ::= { hpnsaHotSwap 4 }      

-- ****************************************************************************
--   HP Hot Swap Subsystem Information MIB 
--   =====================================
--
-- hp  (1.3.6.1.4.1.11)
--    nm  (1.3.6.1.4.1.11.2)
--       hpnsa  (1.3.6.1.4.1.11.2.23)
--          hpnsaHotSwap Group  (hpnsa.20)
--             hpnsaHSMibRev Group  (hpnsa.20.1)             
--                hpnsaHSMibRevMajor  (hpnsa.20.1.1)  
--                hpnsaHSMibRevMinor  (hpnsa.20.1.2)
--
--    Implementation of the MibRev group is mandatory for all HPNSA Agents
--    supporting the HP Hot Swap Subsystem MIB.
--
--    An HPNSA Agent conforming to this document will return a
--    hpnsaHSMibRevMajor of 1 and a hpnsaHSMibRevMinor of 0. 
--
-- ****************************************************************************

    hpnsaHSMibRevMajor OBJECT-TYPE
        SYNTAX  INTEGER (1..65535)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
            "The major revision level of the MIB."
        ::= { hpnsaHSMibRev 1 }

    hpnsaHSMibRevMinor OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
            "The minor revision level of the MIB."
        ::= { hpnsaHSMibRev 2 }

  
-- ****************************************************************************
--   HP Hot Swap Subsystem MIB Agent Information
--   =========================================
--
-- hp  (1.3.6.1.4.1.11)
--    nm  (1.3.6.1.4.1.11.2)
--       hpnsa  (1.3.6.1.4.1.11.2.23)
--          hpnsaHotSwap Group  (hpnsa.20)
--             hpnsaHSAgent Group  (hpnsa.20.2)
--
--                hpnsaHSAgentTable          (hpnsa.20.2.1)
--                   hpnsaHSAgentEntry       (hpnsa.20.2.1.1)
--                      hpnsaHSAgentIndex    (hpnsa.20.2.1.1.1)
--                      hpnsaHSAgentName     (hpnsa.20.2.1.1.2)
--                      hpnsaHSAgentVersion  (hpnsa.20.2.1.1.3)
--                      hpnsaHSAgentDate     (hpnsa.20.2.1.1.4)
--
--  Implementation of the hpnsaHSAgent group is mandatory for all
--  HPNSA Agents that support the Hot Swap Subsystem MIB.
--
-- ****************************************************************************
--   HP Hot Swap Subsystem Agent Module Table
-- ****************************************************************************

   hpnsaHSAgentTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF HPnsaHotSwapAgentEntry
      ACCESS  not-accessible
      STATUS  mandatory
      DESCRIPTION
         "A table of SNMP Agents that satisfy requests for this MIB."
      ::= { hpnsaHSAgent 1 }

   hpnsaHSAgentEntry OBJECT-TYPE
      SYNTAX  HPnsaHotSwapAgentEntry
      ACCESS  not-accessible
      STATUS  mandatory
      DESCRIPTION
        "A description of the agents that access Hot Swap Subsystem"
      INDEX   { hpnsaHSAgentIndex }
      ::= { hpnsaHSAgentTable 1 }
        
      HPnsaHotSwapAgentEntry ::= SEQUENCE {
         hpnsaHSAgentIndex       INTEGER,
         hpnsaHSAgentName        DisplayString,
         hpnsaHSAgentVersion     DisplayString,
         hpnsaHSAgentDate        OCTET STRING
      }

   hpnsaHSAgentIndex OBJECT-TYPE
      SYNTAX  INTEGER (0..255)
      ACCESS  read-only
      STATUS  mandatory
      DESCRIPTION
          "A unique index for this module description."
      ::= { hpnsaHSAgentEntry 1 }

   hpnsaHSAgentName OBJECT-TYPE
      SYNTAX  DisplayString (SIZE (0..255))
      ACCESS  read-only
      STATUS  mandatory
      DESCRIPTION
         "Name of the Agent/Agents satisfying SNMP requests for this MIB."
      ::= { hpnsaHSAgentEntry 2 }

   hpnsaHSAgentVersion OBJECT-TYPE
      SYNTAX  DisplayString (SIZE (0..5))
      ACCESS  read-only
      STATUS  mandatory
      DESCRIPTION
         "Version number of the Agent/Agents satisfying SNMP requests for
         this MIB."
      ::= { hpnsaHSAgentEntry 3 }

   hpnsaHSAgentDate OBJECT-TYPE
      SYNTAX  OCTET STRING (SIZE (6))
      ACCESS  read-only
      STATUS  mandatory
      DESCRIPTION
         "The date on which this Agent was created.

         field  octets  contents                  range
         _________________________________________________
           1       1    years since 1900          0..255
           2       2    month                     1..12
           3       3    day                       1..31
           4       4    hour                      0..23
           5       5    minute                    0..59  
           6       6    second                    0..59
			 "
      ::= { hpnsaHSAgentEntry 4 }


-- *************************************************************************************
-- hp  (1.3.6.1.4.1.11)
--    nm  (1.3.6.1.4.1.11.2)
--       hpnsa  (1.3.6.1.4.1.11.2.23)
--          hpnsaHotSwap Group  (hpnsa.20)
--             hpnsaHSModule Group  (hpnsa.20.3)
--
--                hpnsaHSModuleTable                (hpnsa.20.3.1)
--                   hpnsaHSModuleEntry             (hpnsa.20.3.1.1)
--                      hpnsaHSModuleIndex          (hpnsa.20.3.1.1.1)
--                      hpnsaHSModuleScsiCableType  (hpnsa.20.3.1.1.2)
--                      hpnsaHSModuleTempStatus     (hpnsa.20.3.1.1.3)
--                      hpnsaHSModuleSwitchState    (hpnsa.20.3.1.1.4)
--                      hpnsaHSModuleDeviceStartup  (hpnsa.20.3.1.1.5)
--                      hpnsaHSModuleMiddleDrvAddr  (hpnsa.20.3.1.1.6)
--                      hpnsaHSModuleHi8ScsiAddr    (hpnsa.20.3.1.1.7)
-- ****************************************************************************************
--   HP Hot Swap Subsystem Module Information Table
-- ****************************************************************************

   hpnsaHSModuleTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF HpnsaHotSwapModuleEntry
      ACCESS  not-accessible
      STATUS  mandatory
      DESCRIPTION
          " A table of Hot Swap Subsystem module information entries."
      ::= { hpnsaHSModule 1 }

   hpnsaHSModuleEntry OBJECT-TYPE
      SYNTAX  HpnsaHotSwapModuleEntry
      ACCESS  not-accessible
      STATUS  mandatory
      DESCRIPTION
          " Hot Swap Subsystem module information."
      INDEX   { hpnsaHSModuleIndex }
      ::= { hpnsaHSModuleTable 1 }

      HpnsaHotSwapModuleEntry ::= SEQUENCE {
         hpnsaHSModuleIndex          INTEGER,
         hpnsaHSModuleScsiCableType  INTEGER,
         hpnsaHSModuleTempStatus     INTEGER,
         hpnsaHSModuleSwitchState    INTEGER, 
         hpnsaHSModuleDeviceStartup  INTEGER,
         hpnsaHSModuleMiddleDrvAddr  INTEGER,
         hpnsaHSModuleHi8ScsiAddr    INTEGER
         }

   hpnsaHSModuleIndex OBJECT-TYPE
      SYNTAX  INTEGER 
      ACCESS  read-only
      STATUS  mandatory
      DESCRIPTION
          "A unique index for the Hot Swap module."
      ::= { hpnsaHSModuleEntry 1 }

   hpnsaHSModuleScsiCableType OBJECT-TYPE
      SYNTAX  INTEGER {
                        wide(1),
                        narrow(2),
                        error(3),
                        no-cable(4)
                      }
      ACCESS  read-only
      STATUS  mandatory
      DESCRIPTION
          "The SCSI cable type attached to the backplane on the
          right side a Hot Swap Subsystem cage."
      ::= { hpnsaHSModuleEntry 2 }

   hpnsaHSModuleTempStatus  OBJECT-TYPE
      SYNTAX  INTEGER {
                        error(1),
                        normal(2),
                        warning(3),
                        emergency(4)
                      }
      ACCESS  read-only
      STATUS  mandatory
      DESCRIPTION
         "Status of the Hot Swap Subsystem's temperature sensor."
      ::= {hpnsaHSModuleEntry 3}

   hpnsaHSModuleSwitchState OBJECT-TYPE
      SYNTAX  INTEGER {
                        disabled(1),
                        enabled(2)
                      }
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "Status of the DIP switches on the Hot Swap Subsystem."
      ::= {hpnsaHSModuleEntry 4}

   hpnsaHSModuleDeviceStartup OBJECT-TYPE
      SYNTAX  INTEGER {
                        at-poweron(1),
                        by-start-command(2)
                      }
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "State of the Disk Spin Up DIP switch on the Hot Swap Subsystem.

            1 = disks spin up with the system after a period of time
            2 = disks spin up after receiving SCSI Start Command"

      ::= {hpnsaHSModuleEntry 5}

   hpnsaHSModuleMiddleDrvAddr OBJECT-TYPE
      SYNTAX  INTEGER {
                        lowest(1),
                        default(2)
                      }
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "State of the Middle Drive Address DIP switch on the Hot Swap
         Subsystem. 

            1 = lowest value, either 0 or 8 depending on High Eight Address
            2 = default, either 2 or 10 depending on High Eight Address"

            ::= {hpnsaHSModuleEntry 6}

   hpnsaHSModuleHi8ScsiAddr OBJECT-TYPE
      SYNTAX  INTEGER {
                        hi-range-9to15(1),
                        lo-range-1to7(2)
                      }
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
         "State of the High Eight SCSI Address DIP switch on the Hot Swap
         Subsystem. 

            1 = SCSI address range from 1 to 7
            2 = SCSI address range from 9 to 15"

      ::= {hpnsaHSModuleEntry 7}



-- *************************************************************************************
-- hp  (1.3.6.1.4.1.11)
--    nm  (1.3.6.1.4.1.11.2)
--       hpnsa  (1.3.6.1.4.1.11.2.23)
--          hpnsaHotSwap Group  (hpnsa.20)
--             hpnsaHSDev Group  (hpnsa.20.4)
--
--                hpnsaHSDevTable              (hpnsa.20.4.1)
--                   hpnsaHSDevEntry           (hpnsa.20.4.1.1)
--                      hpnsaHSDevModuleIndex  (hpnsa.20.4.1.1.1)
--                      hpnsaHSDevIndex        (hpnsa.20.4.1.1.2)
--                      hpnsaHSDevExistence    (hpnsa.20.4.1.1.3)
--                      hpnsaHSDevScsiAddr     (hpnsa.20.4.1.1.4)
--                      hpnsaHSDevPowerStatus  (hpnsa.20.4.1.1.5)
--                hpnsaHSPwrAlertDelay         (hpnsa.20.4.2)
-- *************************************************************************************
--   HP Hot Swap Subsystem Device Table
-- ****************************************************************************

   hpnsaHSDevTable OBJECT-TYPE
      SYNTAX  SEQUENCE OF HpnsaHotSwapDevEntry
      ACCESS  not-accessible
      STATUS  mandatory
      DESCRIPTION
          "A table of Hot Swap Subsystem device information entries."
      ::= { hpnsaHSDev 1 }

   hpnsaHSDevEntry OBJECT-TYPE
      SYNTAX  HpnsaHotSwapDevEntry
      ACCESS  not-accessible
      STATUS  mandatory
      DESCRIPTION
          " Hot Swap Subsystem device information."
      INDEX   { hpnsaHSDevModuleIndex , hpnsaHSDevIndex }
      ::= { hpnsaHSDevTable 1 }

   HpnsaHotSwapDevEntry ::= SEQUENCE {
      hpnsaHSDevModuleIndex  INTEGER,
      hpnsaHSDevIndex        INTEGER,
      hpnsaHSDevExistence    INTEGER,
      hpnsaHSDevScsiAddr     INTEGER,
      hpnsaHSDevPowerStatus  INTEGER
      }                           

   hpnsaHSDevModuleIndex OBJECT-TYPE
      SYNTAX  INTEGER (0..255)
      ACCESS  read-only
      STATUS  mandatory
      DESCRIPTION
          "A unique index for the Hot Swap module."
      ::= { hpnsaHSDevEntry 1 }

   hpnsaHSDevIndex OBJECT-TYPE
      SYNTAX  INTEGER 
      ACCESS  read-only
      STATUS  mandatory
      DESCRIPTION
         "Physical device number in the Hot Swap Module."
      ::= { hpnsaHSDevEntry 2 }

   hpnsaHSDevExistence OBJECT-TYPE
      SYNTAX  INTEGER {
                        present(1),
                        not-present(2)
                      }
      ACCESS  read-only
      STATUS  mandatory
      DESCRIPTION
         "Defines whether a device exists in the physical slot of
         the Hot Swap Subsystem."
     ::= { hpnsaHSDevEntry 3 }

   hpnsaHSDevScsiAddr OBJECT-TYPE
      SYNTAX  INTEGER
      ACCESS  read-only
      STATUS  mandatory
      DESCRIPTION
         "SCSI address of the device in the physical slot of
         the Hot Swap Subsystem."
     ::= { hpnsaHSDevEntry 4 }

   hpnsaHSDevPowerStatus OBJECT-TYPE
      SYNTAX  INTEGER {
                        not-connected(1),
                        connected(2)
                      }         
      ACCESS  read-only         
      STATUS  mandatory         
      DESCRIPTION               
         "Defines whether the power connector of a particular device
         in the Hot Swap Subsystem is connected."
     ::= { hpnsaHSDevEntry 5 }

    hpnsaHSPwrAlertDelay OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        ACCESS  read-write
        STATUS  mandatory
        DESCRIPTION
            "Set this variable to non-zero integer value to skip 
			checking the power connection state of Starfish device."
        ::= { hpnsaHSDev 2 }
                                
END
