DECRU-CHASSIS-MIB DEFINITIONS ::= BEGIN
    IMPORTS
	dcrChassis FROM DECRU-BASE-MIB
        TruthValue FROM SNMPv2-TC;

-- General Info
    dcrChassisInfo OBJECT IDENTIFIER ::= { dcrChassis 1 }

    dcrChsVerSEP OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "SEP version. (example: '3731')"
	::= { dcrChassisInfo 1 }
    dcrChsTypeSEP OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "SEP Type. (example: 'DCC')"
	::= { dcrChassisInfo 2 }
    dcrChsVerFPGA OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "FPGA firmware version. (example: '28')"
	::= { dcrChassisInfo 3 }
    dcrChsVerUC OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "Microcontroller firmware version. (example: 'CCUC22')"
	::= { dcrChassisInfo 4 }
    dcrChsVerBMC OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "Motherboard BMC version."
	::= { dcrChassisInfo 5 }
    dcrChsVerMB OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS not-accessible
	STATUS current
	DESCRIPTION  
	    "Motherboard version.
	    This MIB is not accessible to the customer."
	::= { dcrChassisInfo 6 }
    dcrChsBios OBJECT IDENTIFIER ::= { dcrChassisInfo 7 }

    dcrChsBiosVersion OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "BIOS version."
	::= { dcrChsBios 1 }
    dcrChsBiosVendor OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS not-accessible
	STATUS current
	DESCRIPTION  
	    "BIOS vendor.
	    This MIB is not accessible to the customer."
	::= { dcrChsBios 2 }
    dcrChsBiosMemSize OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "Physical memory size recognized by BIOS in bytes."
	::= { dcrChsBios 3 }

    dcrChsLCDCapability OBJECT-TYPE
	SYNTAX INTEGER {
	  none(0),
	  graphic(1),
	  text(2) 
	}
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "LCD capability."
	::= { dcrChassisInfo 8 }

    dcrChsNumCards OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "Number of chassis cards in system."
	::= { dcrChassisInfo 9 }

-- chassis card table
    DcrChsCardEntry ::=
      SEQUENCE {
        dcrChsCardIndex INTEGER,
	dcrChsCardName OCTET STRING,
	dcrChsCardVerSEP OCTET STRING,
	dcrChsCardTypeSEP OCTET STRING,
	dcrChsCardVerFPGA OCTET STRING,
	dcrChsCardVerUC OCTET STRING
      }

    dcrChsCardTable OBJECT-TYPE 
	SYNTAX SEQUENCE OF DcrChsCardEntry
	ACCESS  not-accessible
	STATUS current
	DESCRIPTION  
	    "Contains the list of chassis card entries."
	::= { dcrChassisInfo 10 }

    dcrChsCardEntry OBJECT-TYPE
	SYNTAX DcrChsCardEntry
	ACCESS  not-accessible
	STATUS current
	INDEX { dcrChsCardIndex }
	::= { dcrChsCardTable 1 }

    dcrChsCardIndex OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS current	
	::= { dcrChsCardEntry 1 }
    dcrChsCardName OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "Card name. (example: '/dev/dcc0')"
	::= { dcrChsCardEntry 2 }
    dcrChsCardVerSEP OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "SEP version. (example: '3731')"
	::= { dcrChsCardEntry 3 }
    dcrChsCardTypeSEP OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "SEP Type. (example: 'DCC')"
	::= { dcrChsCardEntry 4 }
    dcrChsCardVerFPGA OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "FPGA firmware version. (example: '28')"
	::= { dcrChsCardEntry 5 }
    dcrChsCardVerUC OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "Microcontroller firmware version. (example: 'CCUC22')"
	::= { dcrChsCardEntry 6 }

-- Status group 
    dcrChassisStatus OBJECT IDENTIFIER ::= { dcrChassis 2 }

    dcrChsStatLCD OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "LCD controller status. It is 0, if no error found."
	::= { dcrChassisStatus 1 }
    dcrChsStatSDRAM OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "SDRAM controller status. It is 0, if no error found."
	::= { dcrChassisStatus 2 }
    dcrChsStatGPIOPins OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "GPIO pins position."
	::= { dcrChassisStatus 3 }
    dcrChsStatMicroController OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "Microcontroller status. It is 0, if no error found."
	::= { dcrChassisStatus 4 }
    dcrChsStatBatCharger OBJECT-TYPE
	SYNTAX INTEGER {error(-1), stopped(0), working(1), charging(3)}
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "Battery charger status."
	::= { dcrChassisStatus 5 }
    dcrChsStatBattery OBJECT-TYPE
	SYNTAX INTEGER {error(-1), ok(0), low(1), notFound(2)}
	ACCESS read-only
	STATUS current
	DESCRIPTION  
	    "Battery status."
	::= { dcrChassisStatus 6 }

-- fan table
    DcrFanEntry ::=
      SEQUENCE {
        dcrFanIndex INTEGER,
	dcrFanName OCTET STRING,
	dcrFanSpeed INTEGER
      }

    dcrFanTable OBJECT-TYPE 
	SYNTAX SEQUENCE OF DcrFanEntry
	ACCESS  not-accessible
	STATUS current
	DESCRIPTION  
	    "Contains the list of fan entries."
	::= { dcrChassis 3 }	

    dcrFanEntry OBJECT-TYPE
	SYNTAX DcrFanEntry
	ACCESS  not-accessible
	STATUS current
	INDEX { dcrFanIndex }
	::= { dcrFanTable 1 }

    dcrFanIndex OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS current	
	::= { dcrFanEntry 1 }
    dcrFanName OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS current	
	DESCRIPTION  
	    "Conventional fan name."
	::= { dcrFanEntry 2 }
    dcrFanSpeed OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS  read-only
	STATUS current
	DESCRIPTION  
	    "Fan speed in RPM"
	::= { dcrFanEntry 3 }

-- temperature sensor table
    DcrTempSensorEntry ::=
      SEQUENCE {
        dcrTempSensorIndex INTEGER,
	dcrTempSensorName OCTET STRING,
	dcrTempSensorValue INTEGER
      }

    dcrTempSensorTable OBJECT-TYPE 
	SYNTAX SEQUENCE OF DcrTempSensorEntry
	ACCESS  not-accessible
	STATUS current
	DESCRIPTION  
	    "Contains the list of thermometer entries."
	::= { dcrChassis 4 }	

    dcrTempSensorEntry OBJECT-TYPE
	SYNTAX DcrTempSensorEntry
	ACCESS  not-accessible
	STATUS current
	INDEX { dcrTempSensorIndex }
	::= { dcrTempSensorTable 1 }

    dcrTempSensorIndex OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS current	
	::= { dcrTempSensorEntry 1 }
    dcrTempSensorName OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS current	
	DESCRIPTION  
	    "Conventional thermometer name."
	::= { dcrTempSensorEntry 2 }
    dcrTempSensorValue OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS  read-only
	STATUS current
	DESCRIPTION  
	    "Temperature value in fahrenheit."
	::= { dcrTempSensorEntry 3 }

-- voltage sensor table
    DcrVoltSensorEntry ::=
      SEQUENCE {
        dcrVoltSensorIndex INTEGER,
	dcrVoltSensorName OCTET STRING,
	dcrVoltSensorValue INTEGER
      }

    dcrVoltSensorTable OBJECT-TYPE 
	SYNTAX SEQUENCE OF DcrVoltSensorEntry
	ACCESS  not-accessible
	STATUS current
	DESCRIPTION  
	    "Contains the list of voltage sensor entries."
	::= { dcrChassis 5 }	

    dcrVoltSensorEntry OBJECT-TYPE
	SYNTAX DcrVoltSensorEntry
	ACCESS  not-accessible
	STATUS current
	INDEX { dcrVoltSensorIndex }
	::= { dcrVoltSensorTable 1 }

    dcrVoltSensorIndex OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS current	
	::= { dcrVoltSensorEntry 1 }
    dcrVoltSensorName OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS current	
	DESCRIPTION  
	    "Conventional voltage sensor name."
	::= { dcrVoltSensorEntry 2 }
    dcrVoltSensorValue OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS  read-only
	STATUS current
	DESCRIPTION  
	    "Voltage value in milivolts."
	::= { dcrVoltSensorEntry 3 }

-- power supply  table
    DcrPowerSupplyEntry ::=
      SEQUENCE {
        dcrPowerSupplyIndex INTEGER,
	dcrPowerSupplyName OCTET STRING,
	dcrPowerSupplyStatus INTEGER
      }

    dcrPowerSupplyTable OBJECT-TYPE 
	SYNTAX SEQUENCE OF DcrPowerSupplyEntry
	ACCESS  not-accessible
	STATUS current
	DESCRIPTION  
	    "Contains the list of power-supply entries."
	::= { dcrChassis 6 }	

    dcrPowerSupplyEntry OBJECT-TYPE
	SYNTAX DcrPowerSupplyEntry
	ACCESS  not-accessible
	STATUS current
	INDEX { dcrPowerSupplyIndex }
	::= { dcrPowerSupplyTable 1 }

    dcrPowerSupplyIndex OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS current	
	::= { dcrPowerSupplyEntry 1 }
    dcrPowerSupplyName OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS current	
	DESCRIPTION  
	    "Conventional power-supply name."
	::= { dcrPowerSupplyEntry 2 }
    dcrPowerSupplyStatus OBJECT-TYPE
	SYNTAX INTEGER {
	  ok(1),
	  noSensor(2),
	  notPresent(3),
	  errorFound(4),
	  acLost(8)
	}
	ACCESS  read-only
	STATUS current
	DESCRIPTION  
	    "Power-supply status."
	::= { dcrPowerSupplyEntry 3 }

-- HBA table
    DcrHBAEntry ::=
      SEQUENCE {
        dcrHBAIndex INTEGER,
	dcrHBADescr OCTET STRING,
	dcrHBAOperStatus INTEGER
      }

    dcrHBATable OBJECT-TYPE 
	SYNTAX SEQUENCE OF DcrHBAEntry
	ACCESS  not-accessible
	STATUS current
	DESCRIPTION  
	    "Contains the list of HBA entries. This table exists
	    only for SAN products."
	::= { dcrChassis 7 }	

    dcrHBAEntry OBJECT-TYPE
	SYNTAX DcrHBAEntry
	ACCESS  not-accessible
	STATUS current
	INDEX { dcrHBAIndex }
	::= { dcrHBATable 1 }

    dcrHBAIndex OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS current	
	::= { dcrHBAEntry 1 }
    dcrHBADescr OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS current	
	DESCRIPTION  
	    "HBA description"
	::= { dcrHBAEntry 2 }
    dcrHBAOperStatus OBJECT-TYPE
	SYNTAX  INTEGER {up(1),down(2)}
	ACCESS  read-only
	STATUS current
	DESCRIPTION  
	    "HBA status"
	::= { dcrHBAEntry 3 }
END

