#-MIBFILE: cpqfca.mib

CPQFCA-MIB DEFINITIONS ::= BEGIN


compaq OBJECT IDENTIFIER ::= { enterprises 232 }
DisplayString ::=
	OCTET STRING

PhysAddress ::=
	OCTET STRING

mib-2 OBJECT IDENTIFIER ::= { mgmt 1 }
system OBJECT IDENTIFIER ::= { mib-2 1 }
sysName OBJECT IDENTIFIER ::= { system 5 }
cpqHostOs OBJECT IDENTIFIER ::= { compaq 11 }
cpqHoComponent OBJECT IDENTIFIER ::= { cpqHostOs 2 }
cpqHoTrapInfo OBJECT IDENTIFIER ::= { cpqHoComponent 11 }
cpqHoTrapFlags OBJECT IDENTIFIER ::= { cpqHoTrapInfo 1 }
cpqSsStorageSys OBJECT IDENTIFIER ::= { compaq 8 }
cpqSsDrvBox OBJECT IDENTIFIER ::= { cpqSsStorageSys 2 }
cpqSsBoxExtended OBJECT IDENTIFIER ::= { cpqSsDrvBox 2 }
cpqSsChassisTable OBJECT IDENTIFIER ::= { cpqSsBoxExtended 1 }
cpqSsChassisEntry OBJECT IDENTIFIER ::= { cpqSsChassisTable 1 }
cpqSsChassisName OBJECT IDENTIFIER ::= { cpqSsChassisEntry 4 }
cpqSsChassisTime OBJECT IDENTIFIER ::= { cpqSsChassisEntry 18 }
cpqFibreArray OBJECT IDENTIFIER ::= { compaq 16 }

cpqFcaMibRev OBJECT IDENTIFIER ::= { cpqFibreArray 1 }

cpqFcaComponent OBJECT IDENTIFIER ::= { cpqFibreArray 2 }

cpqFcTapeComponent OBJECT IDENTIFIER ::= { cpqFibreArray 3 }

cpqFcSwitchComponent OBJECT IDENTIFIER ::= { cpqFibreArray 4 }

cpqFcaInterface OBJECT IDENTIFIER ::= { cpqFcaComponent 1 }

cpqFcaCntlr OBJECT IDENTIFIER ::= { cpqFcaComponent 2 }

cpqFcaLogDrv OBJECT IDENTIFIER ::= { cpqFcaComponent 3 }

cpqFcaSpareDrv OBJECT IDENTIFIER ::= { cpqFcaComponent 4 }

cpqFcaPhyDrv OBJECT IDENTIFIER ::= { cpqFcaComponent 5 }

cpqFcaPhyDrvThr OBJECT IDENTIFIER ::= { cpqFcaComponent 6 }

cpqFcaHostCntlr OBJECT IDENTIFIER ::= { cpqFcaComponent 7 }

cpqExtArrRsrcVol OBJECT IDENTIFIER ::= { cpqFcaComponent 8 }

cpqExtArrSnapshot OBJECT IDENTIFIER ::= { cpqFcaComponent 9 }

cpqFcaOsCommon OBJECT IDENTIFIER ::= { cpqFcaInterface 4 }

cpqFcTapeCntlr OBJECT IDENTIFIER ::= { cpqFcTapeComponent 1 }

cpqFcTapeLibrary OBJECT IDENTIFIER ::= { cpqFcTapeComponent 2 }

cpqFcTapeDrive OBJECT IDENTIFIER ::= { cpqFcTapeComponent 3 }

cpqFcTapeCounters OBJECT IDENTIFIER ::= { cpqFcTapeComponent 4 }

cpqFcSwitch OBJECT IDENTIFIER ::= { cpqFcSwitchComponent 1 }

cpqFcaMibRevMajor OBJECT-TYPE
	SYNTAX INTEGER (1..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The Major Revision level.
A change in the major revision level represents a major change
in the architecture of the MIB.  A change in the major revision
level may indicate a significant change in the information
supported and/or the meaning of the supported information,
correct interpretation of data may require a MIB document with
the same major revision level."
	::= { cpqFcaMibRev 1 }


cpqFcaMibRevMinor OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The Minor Revision level.
A change in the minor revision level may represent some minor
additional support, no changes to any pre-existing information
has occurred."
	::= { cpqFcaMibRev 2 }


cpqFcaMibCondition OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	degraded(3),
	failed(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The overall condition (status) of the system represented by
this MIB."
	::= { cpqFcaMibRev 3 }


cpqFcaOsCommonPollFreq OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The Insight Agent's polling frequency.

The frequency, in seconds, at which the Insight Agent requests
information from the device driver.  A frequency of zero (0)
indicates that the Insight Agent retrieves the information upon
request of a management station, it does not poll the device
driver at a specific interval.

If the poll frequency is zero (0) all attempts to write to
this object will fail.  If the poll frequency is non-zero,
setting this value will change the polling frequency of the
Insight Agent.  Setting the poll frequency to zero (0) will
always fail, an agent may also choose to fail any request to
change the poll frequency to a value that would severely impact
system performance."
	::= { cpqFcaOsCommon 1 }


cpqFcaOsCommonModuleTable OBJECT-TYPE
	SYNTAX SEQUENCE OF CpqFcaOsCommonModuleEntry
	ACCESS read-only
	STATUS optional
	DESCRIPTION "A table of software modules that provide an interface to the
device this MIB describes."
	::= { cpqFcaOsCommon 2 }


cpqFcaOsCommonModuleEntry OBJECT-TYPE
	SYNTAX CpqFcaOsCommonModuleEntry
	ACCESS read-only
	STATUS optional
	DESCRIPTION "A description of a software module that provides an interface
to the device this MIB describes."
	INDEX { cpqFcaOsCommonModuleIndex  }

	::= { cpqFcaOsCommonModuleTable 1 }

cpqFcaOsCommonModuleEntry ::=
	SEQUENCE {
		cpqFcaOsCommonModuleIndex INTEGER,
		cpqFcaOsCommonModuleName DisplayString,
		cpqFcaOsCommonModuleVersion DisplayString,
		cpqFcaOsCommonModuleDate OCTET STRING,
		cpqFcaOsCommonModulePurpose DisplayString
		}

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


cpqFcaOsCommonModuleName OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..255))
	ACCESS read-only
	STATUS optional
	DESCRIPTION "The module name."
	::= { cpqFcaOsCommonModuleEntry 2 }


cpqFcaOsCommonModuleVersion OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..5))
	ACCESS read-only
	STATUS optional
	DESCRIPTION "The module version in XX.YY format.

Where XX is the major version number and YY is the minor version
number.  This field will be a null (size 0) string if the agent
cannot provide the module version."
	::= { cpqFcaOsCommonModuleEntry 3 }


cpqFcaOsCommonModuleDate OBJECT-TYPE
	SYNTAX OCTET STRING (SIZE(7))
	ACCESS read-only
	STATUS optional
	DESCRIPTION "The module date.

field  octets  contents                  range
=====  ======  =======                  =====
1      1-2   year                      0..65536
2       3    month                     1..12
3       4    day                       1..31
4       5    hour                      0..23
5       6    minute                    0..59
6       7    second                    0..60
(use 60 for leap-second)


This field will be set to year = 0 if the agent cannot provide
the module date.  The hour, minute, and second field will be set
to zero (0) if they are not relevant.  The year field is set
with the most significant octect first."
	::= { cpqFcaOsCommonModuleEntry 4 }


cpqFcaOsCommonModulePurpose OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..255))
	ACCESS read-only
	STATUS optional
	DESCRIPTION "The purpose of the module described in this entry."
	::= { cpqFcaOsCommonModuleEntry 5 }


cpqFcaCntlrTable OBJECT-TYPE
	SYNTAX SEQUENCE OF CpqFcaCntlrEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller Table."
	::= { cpqFcaCntlr 1 }


cpqFcaCntlrEntry OBJECT-TYPE
	SYNTAX CpqFcaCntlrEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Array Controller Entry."
	INDEX { cpqFcaCntlrBoxIndex , cpqFcaCntlrBoxIoSlot }

	::= { cpqFcaCntlrTable 1 }

cpqFcaCntlrEntry ::=
	SEQUENCE {
		cpqFcaCntlrBoxIndex INTEGER,
		cpqFcaCntlrBoxIoSlot INTEGER,
		cpqFcaCntlrModel INTEGER,
		cpqFcaCntlrFWRev DisplayString,
		cpqFcaCntlrStatus INTEGER,
		cpqFcaCntlrCondition INTEGER,
		cpqFcaCntlrProductRev DisplayString,
		cpqFcaCntlrWorldWideName DisplayString,
		cpqFcaCntlrSerialNumber DisplayString,
		cpqFcaCntlrCurrentRole INTEGER,
		cpqFcaCntlrRedundancyType INTEGER,
		cpqFcaCntlrRedundancyError INTEGER,
		cpqFcaCntlrBlinkTime Counter,
		cpqFcaCntlrWorldWideNodeName DisplayString,
		cpqFcaCntlrRebuildPriority INTEGER,
		cpqFcaCntlrExpandPriority INTEGER
		}

cpqFcaCntlrBoxIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller Storage Box Index.

The storage box index indicates which storage box this
controller is in."
	::= { cpqFcaCntlrEntry 1 }


cpqFcaCntlrBoxIoSlot OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller Box I/O Slot.

This identifies the physical I/O slot where this controller
resides in the storage box."
	::= { cpqFcaCntlrEntry 2 }


cpqFcaCntlrModel OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	fibreArray(2),
	msa1000(3),
	smartArrayClusterStorage(4),
	hsg80(5),
	hsv110(6),
	msa500G2(7),
	msa20(8),
	msa1510i(9)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller Model.

The type of controller card.  The valid types are:

Other (1)
You may need to upgrade your driver software and\or instrument
agent(s).  You have an array controller in the storage box
that the instrument agent does not recognize.

fibreArray (2)
Compaq StorageWorks RAID Array 4000 Controller.

msa1000 (3)
Compaq StorageWorks Modular Smart Array 1000 Controller.

smartArrayClusterStorage (4)
HP StorageWorks Modular Smart Array 500 Controller
(Formerly Smart Array Cluster Storage Controller).

hsg80 (5)
Compaq StorageWorks HSG80 RAID Array Controller.

hsv110 (6)
Compaq StorageWorks HSV110 Virtual Array Controller.

msa500G2 (7)
HP StorageWorks Modular Smart Array 500 G2 Controller.

msa20 (8)
HP StorageWorks Modular Smart Array 20 Controller.

msa1510i (9)
HP StorageWorks Modular Smart Array 1510i Controller.

Reserved (10)"
	::= { cpqFcaCntlrEntry 3 }


cpqFcaCntlrFWRev OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..5))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller Firmware Revision.

This value can be used to help identify a particular revision
of the controller."
	::= { cpqFcaCntlrEntry 4 }


cpqFcaCntlrStatus OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	failed(3),
	offline(4),
	redundantPathOffline(5),
	notConnected(6)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller Status.

This value represents the status of the External Array
Controller.  The following values are valid:

other (1)
Indicates that the agent does not recognize the status of the
controller.  You may need to upgrade the agent.

ok (2)
All paths to this controller are available.

offline (4)
No paths are available to this controller.

redundantPathOffline (5)
At least one path to this controller is available and at least
one path to this controller is unavailable.

notConnected (6)
No paths are available to this controller.  However, in an
active/active configuration, this is a valid configuration."
	::= { cpqFcaCntlrEntry 5 }


cpqFcaCntlrCondition OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	degraded(3),
	failed(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller Condition.

This value represents the overall condition of this controller
and any array accelerators."
	::= { cpqFcaCntlrEntry 6 }


cpqFcaCntlrProductRev OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..1))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller Product Revision.

The Product Revision of the controller.  This value can be
used to further identify a particular revision of the
controller model.  This will be one character ASCII value that
is zero terminated.  If the controller model or the firmware
does not support the product revision, the agents will return
a NULL string."
	::= { cpqFcaCntlrEntry 7 }


cpqFcaCntlrWorldWideName OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..16))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller World Wide Port Name.

This value can be used to further identify a particular
controller.  If the world wide port name is not supported, the
agent will return a NULL string."
	::= { cpqFcaCntlrEntry 8 }


cpqFcaCntlrSerialNumber OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..32))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller Serial Number.

This value can be used to further identify a particular
controller.  If the serial number is not supported, the agent
will return a NULL string."
	::= { cpqFcaCntlrEntry 9 }


cpqFcaCntlrCurrentRole OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	notDuplexed(2),
	active(3),
	backup(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller Current Role.

For duplexed controllers, this is the controllers current
role.  The following values are valid:

other (1)
Indicates that the instrument agent does not recognize the
role of the controller.  You may need to upgrade the instrument
agent.

notDuplexed (2)
This controller is not duplexed.

active (3)
This duplexed controller is the active controller.

backup (4)
This duplexed controller is the backup controller."
	::= { cpqFcaCntlrEntry 10 }


cpqFcaCntlrRedundancyType OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	notRedundant(2),
	fwActiveStandby(3),
	fwPrimarySecondary(4),
	fwActiveActive(5)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller Redundancy Type.

The following values are valid:

other (1)
Indicates that the instrument agent does not recognize the
redundancy type of the controller.  You may need to upgrade
the instrument agent.

notRedundant (2)
The array controller is not in a redundant configuration.

fwActiveStandby (3)
The array controller is using an active/standby algorithm
implemented in the controller firmware and the operating system
driver.

fwPrimarySecondary (4)
The array controller is using a primary/secondary algorithm
implemented in the controller firmware and the operating system
driver.

fwActiveActive (5)
The array controller is using an active/active algorithm
implemented in the controller firmware and the operating system
driver."
	::= { cpqFcaCntlrEntry 11 }


cpqFcaCntlrRedundancyError OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	noFailure(2),
	noRedundantController(3),
	differentHardware(4),
	noLink(5),
	differentFirmware(6),
	differentCache(7),
	otherCacheFailure(8),
	noDrives(9),
	otherNoDrives(10),
	unsupportedDrives(11),
	expandInProgress(12)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller Redundancy Error.

The following values are valid:

other (1)
Indicates that the instrument agent does not recognize the
redundancy error of the controller.  You may need to upgrade
the instrument agent.

noFailure (2)
No failures have been detected.

noRedundantController (3)
No redundant controller is installed.

differentHardware (4)
The other controller indicates a different hardware model.

noLink (5)
An inter-controller link to the other controller could not be
established.

differentFirmware (6)
The other controller indicates a different firmware version.

differentCache (7)
The other controller indicates a different cache size.

otherCacheFailure (8)
The other controller indicates a cache failure.

noDrives (9)
This controller cannot see any attached drives, but the other
controller can.

otherNoDrives (10)
This controller can see the attached drives, but the other
controller cannot.

unsupportedDrives (11)
One or more attached drives has been determined to be incapable
of properly supporting redundant controller operation.

expandInProgress (12)
Expand operation in progress.  Redundant operation not
supported until expand operation is complete."
	::= { cpqFcaCntlrEntry 12 }


cpqFcaCntlrBlinkTime OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller Physical Drive Blink Time Count.

The controller blink time variable allows the drive tray LEDs
of all physical drives attached to this controller to blink.
This value indicates the amount of time, in tenths of a second,
that the physical drive LEDs will continue to blink.  A value
of zero indicates the drive LEDs are not blinking.  If the
value cannot be determined or no drive on this controller is in
a hot plug tray, 4,294,967,295 is returned.

To blink the drive LEDs on all physical drives attached to this
controller, set this value to the time to blink in tenths of
seconds.

To stop the drive LEDs from blinking, set this value to 0."
	::= { cpqFcaCntlrEntry 13 }


cpqFcaCntlrWorldWideNodeName OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..16))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller World Wide Node Name.

This value can be used to further identify a particular
controller.  If the world wide name is not supported, the
agent will return a NULL string."
	::= { cpqFcaCntlrEntry 14 }


cpqFcaCntlrRebuildPriority OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	low(2),
	medium(3),
	high(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Array Controller Rebuild Priority.

This is the controller's rebuild priority.  The following values
are valid:

other (1)
Indicates that the agent does not recognize the rebuild
priority of the controller.  You may need to upgrade the
agent.

low (2)
The rebuild priority is low.

medium (3)
The rebuild priority is medium.

high (4)
The rebuild priority is high."
	::= { cpqFcaCntlrEntry 15 }


cpqFcaCntlrExpandPriority OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	low(2),
	medium(3),
	high(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Array Controller Expand Priority.

This is the controller's expand priority.  The following values
are valid:

other (1)
Indicates that the agent does not recognize the expand
priority of the controller.  You may need to upgrade the agent.

low (2)
The expand priority is low.

medium (3)
The expand priority is medium.

high (4)
The expand priority is high."
	::= { cpqFcaCntlrEntry 16 }


cpqFcaAccelTable OBJECT-TYPE
	SYNTAX SEQUENCE OF CpqFcaAccelEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Array Accelerator Board Table."
	::= { cpqFcaCntlr 2 }


cpqFcaAccelEntry OBJECT-TYPE
	SYNTAX CpqFcaAccelEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Array Accelerator Board Entry."
	INDEX { cpqFcaAccelBoxIndex , cpqFcaAccelBoxIoSlot }

	::= { cpqFcaAccelTable 1 }

cpqFcaAccelEntry ::=
	SEQUENCE {
		cpqFcaAccelBoxIndex INTEGER,
		cpqFcaAccelBoxIoSlot INTEGER,
		cpqFcaAccelStatus INTEGER,
		cpqFcaAccelBadData INTEGER,
		cpqFcaAccelErrCode INTEGER,
		cpqFcaAccelBatteryStatus INTEGER,
		cpqFcaAccelReadErrs Counter,
		cpqFcaAccelWriteErrs Counter,
		cpqFcaAccelCondition INTEGER,
		cpqFcaAccelWriteCache INTEGER,
		cpqFcaAccelReadCache INTEGER,
		cpqFcaAccelSerialNumber DisplayString,
		cpqFcaAccelTotalMemory INTEGER,
		cpqFcaAccelFailedBatteries OCTET STRING
		}

cpqFcaAccelBoxIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller Storage Box Index.

The storage box index indicates which storage box this
accelerator is in."
	::= { cpqFcaAccelEntry 1 }


cpqFcaAccelBoxIoSlot OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Controller Box I/O Slot.

This identifies the physical I/O slot where this accelerator
resides in the storage box."
	::= { cpqFcaAccelEntry 2 }


cpqFcaAccelStatus OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	invalid(2),
	enabled(3),
	tmpDisabled(4),
	permDisabled(5)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Array Accelerator Board Status.

This describes the status of the Array Accelerator Cache.

The status can be:

Other (1)
Indicates that the instrument agent does not recognize the
status of the Array Accelerator.  You may need to upgrade
the instrument agent.

Invalid (2)
Indicates that an Array Accelerator board has not been
installed in this system or is present but not configured.

Enabled (3)
Indicates that write cache operations are currently configured
and enabled for at least one logical drive.

Temporarily Disabled (4)
Indicates that write cache operations have been temporarily
disabled. View the Array Accelerator Board Error Code object
to determine why the write cache operations have been
temporarily disabled.

Permanently Disabled (5)
Indicates that write cache operations have been permanently
disabled.  View the Array Accelerator Board Error Code object
to determine why the write cache operations have been disabled."
	::= { cpqFcaAccelEntry 3 }


cpqFcaAccelBadData OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	none(2),
	possible(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Array Accelerator Board Bad Data.

The following values are valid:

None (2)
Indicates that no data loss occurred.  The battery packs were
properly charged when the system was initialized.

Possible (3)
Indicates that at power up, the battery packs were not
sufficiently charged.  Because the batteries did not retain
sufficient charge when the system resumed power, the board
has not retained any data that may have been stored.
If no data was on the board, no data was lost.  Several things
may have caused this condition:

* If the system was without power for eight days, and the
battery packs were on (battery packs only activate if
system looses power unexpectedly), any data that may have
been stored in the cache was lost.

* There may be a problem with the battery pack.
See the Battery Status for more information.

* This status will also appear if the Array Accelerator
board is replaced with a new board that has discharged
batteries.  No data has been lost in this case, and posted
writes will automatically be enabled when the batteries
reach full charge."
	::= { cpqFcaAccelEntry 4 }


cpqFcaAccelErrCode OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	invalid(2),
	badConfig(3),
	lowBattery(4),
	disableCmd(5),
	noResources(6),
	notConnected(7),
	badMirrorData(8),
	readErr(9),
	writeErr(10),
	configCmd(11),
	expandInProgress(12),
	snapshotInProgress(13),
	redundantLowBattery(14),
	redundantSizeMismatch(15),
	redundantCacheFailure(16),
	excessiveEccErrors(17),
	postEccErrors(19)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Array Accelerator Board Error Code.

Use this to determine the status of the write cache operations.

The status can be:

Other (1)
Indicates that the instrument agent does not recognize the
error code.  You may need to update your software.

Invalid (2)
Indicates that write cache operations are currently
configured and enabled for at least one logical drive.
No write cache errors have occurred.

Bad Configuration (3)
Indicates that write cache operations are temporarily
disabled.  The Array Accelerator board was configured for a
different controller.  This error could be caused if boards
were switched from one system to another.  Rerun the
configuration utility and ensurethat the board has been
properly configured for this system.

Low Battery Power (4)
Indicates that write cache operations are temporarily
disabled due to insufficient battery power.  Please view
the Battery Status object instance for more information.

Disable Command Issued (5)
Indicates that write cache operations are temporarily
disabled.  The device driver issues this command when
the server is taken down.  This condition should not
exist when the system regains power.

No Resources Available (6)
Indicates that write cache operations are temporarily
disabled.  The controller does not have sufficient
resources to perform write cache operations.
For example, when a replaced drive is being rebuilt,
there will not be sufficient resources.  Once the
operation that requires the resources has completed,
this condition will clear and write cache operations
will resume.

Board Not Connected (7)
Indicates that write cache operations are temporarily
disabled.  The Array Accelerator board has been
configured but is not currently attached to the
controller. Check the alignment of the board and
connections.

Bad Mirror Data (8)
Indicates that write cache operations have been
permanently disabled.  The Array Accelerator board stores
mirrored copies of all data.  If data exists on the
board when the system is first powered up, the board
performs a data compare test between the mirrored copies.
If the data does not match, an error has occurred.
Data may have been lost.  Your board may need servicing.

Read Failure (9)
Indicates that write cache operations have been permanently
disabled.  The Array Accelerator board stores mirror copies
of all data.  While reading the data from the board, memory
parity errors have occurred.  Both copies were corrupted and
cannot be retrieved.  Data has been lost, and you should
service the board.

Write Failure (10)
Indicates that write cache operations have been permanently
disabled.  This error occurs when an unsuccessful attempt was
made to write data to the Array Accelerator board.  Data could
not be written to write cache memory in duplicate due to the
detection of parity errors.  This error does not indicate data
loss.  You should service the Array Accelerator board.

Config Command (11)
Indicates that write cache operations have been permanently
disabled.  The configuration of the logical drives has changed.
You need to reconfigure the Array Accelerator board.

Expand In Progress (12)
Indicates that cache operations are temporarily disabled
due to an expand of a logical drive.  When the expand
operation completes, the accelerator will be enabled.

Snapshot In Progress (13)
Indicates that cache operations are temporarily disabled
due to a snapshot operation that is queued up or in progress.
When the snapshot operation completes, the accelerator will
be enabled.

Redundant Low Battery (14)
Indicates that cache operations are temporarily disabled.
The redundant controller has insufficient cache battery power.

Redundant Size Mismatch (15)
Indicates that cache operations are temporarily disabled.
The cache sizes on the redundant controllers do not match.

Redundant Cache Failure (16)
Indicates that cache operations are temporarily disabled.
The cache on the redundant controller has failed.

Excessive ECC Errors (17)
Indicates that write cache operations have been permanently
disabled.  The number of cache lines experiencing excess"
	::= { cpqFcaAccelEntry 5 }


cpqFcaAccelBatteryStatus OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	recharging(3),
	failed(4),
	degraded(5),
	notPresent(6)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Array Accelerator Board Battery Status.

This monitors the status of each battery pack on the board.  The
batteries can only recharge when the system has power applied.

The following values are valid:

Other (1)
Indicates that the instrument agent does not recognize
battery status.  You may need to update your software.

Ok (2)
Indicates that a particular battery pack is fully charged.

Charging (3)
The battery power is less than 75%.  The array controller
is attempting to recharge the battery.  A battery can take
as long as 36 hours to fully recharge.  After 36 hours,
if the battery has not recharged, it is considered failed.

Failed (4)
The battery pack is below the sufficient voltage level and
has not recharged in 36 hours.  Your Array Accelerator board
needs to be serviced.

Degraded (5)
The battery is still operating, however, one of the batteries
in the pack has failed to recharge properly.  Your Array
Accelerator board should be serviced as soon as possible.

NotPresent (6)
There are no batteries associated with this controller."
	::= { cpqFcaAccelEntry 6 }


cpqFcaAccelReadErrs OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Array Accelerator Board Read Errors.

This shows the total number of read memory parity errors that
were detected while reading from the Array Accelerator board.
The mirrored copy of data on the board can be accessed to
obtain correct data if a memory parity errors occurs.

Memory parity errors occur when the system detects that
information has not been transferred correctly.  A parity bit
is included for each byte of information stored in memory.
When the microprocessor reads or writes data, the system
counts the value of the bits in each byte.  If a total does
not match the system's expectations, a parity error has
occurred. A bad memory chip, memory corruption, or lack of
refresh may cause memory parity errors."
	::= { cpqFcaAccelEntry 7 }


cpqFcaAccelWriteErrs OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Array Accelerator Board Write Errors.

This shows the total number of write memory parity errors that
were detected while writing to the Array Accelerator board.

Write parity errors occur when the system detects that
information has not been transferred to the Array
Accelerator board correctly.  A parity bit is included for
each byte of information stored in memory.  When the
microprocessor reads or writes data, the system counts the
value of the bits in each byte.  If the total does not match
the system's expectations, a parity error has occurred."
	::= { cpqFcaAccelEntry 8 }


cpqFcaAccelCondition OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	degraded(3),
	failed(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The condition of the device.  This value represents the overall
condition of this array accelerator."
	::= { cpqFcaAccelEntry 9 }


cpqFcaAccelWriteCache OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Write Cache Memory.

This shows the amount of memory allocated for the write cache in
megabytes.  Because data is kept in duplicate (mirrored), the
actual amount of usable memory is half the amount shown."
	::= { cpqFcaAccelEntry 10 }


cpqFcaAccelReadCache OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Read Cache Memory.

This shows the amount of memory allocated for the read cache in
megabytes."
	::= { cpqFcaAccelEntry 11 }


cpqFcaAccelSerialNumber OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..32))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Array Accelerator Board Serial Number.

This value can be used to further identify the cache
controller.  If the serial number is not supported, the agent
will return a NULL string."
	::= { cpqFcaAccelEntry 12 }


cpqFcaAccelTotalMemory OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Array Accelerator Total Memory.

This value is the total amount of accelerator memory in
megabytes, including both battery-backed and non-battery-backed
memory."
	::= { cpqFcaAccelEntry 13 }


cpqFcaAccelFailedBatteries OBJECT-TYPE
	SYNTAX OCTET STRING (SIZE(0..16))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Array Accelerator Failed Batteries.

This lists the location of accelerator failed batteries.
Each octet present contains the position number of a failed
battery.  An octet string of length zero indicates that there
are no failed batteries or that the controller does not have
the ability to identify individual failed batteries."
	::= { cpqFcaAccelEntry 14 }


cpqFcaLogDrvTable OBJECT-TYPE
	SYNTAX SEQUENCE OF CpqFcaLogDrvEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Logical Drive Table.

A table of logical drive entries."
	::= { cpqFcaLogDrv 1 }


cpqFcaLogDrvEntry OBJECT-TYPE
	SYNTAX CpqFcaLogDrvEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Logical Drive Entry.

A logical drive entry."
	INDEX { cpqFcaLogDrvBoxIndex , cpqFcaLogDrvIndex }

	::= { cpqFcaLogDrvTable 1 }

cpqFcaLogDrvEntry ::=
	SEQUENCE {
		cpqFcaLogDrvBoxIndex INTEGER,
		cpqFcaLogDrvIndex INTEGER,
		cpqFcaLogDrvFaultTol INTEGER,
		cpqFcaLogDrvStatus INTEGER,
		cpqFcaLogDrvAutoRel INTEGER,
		cpqFcaLogDrvPercentRebuild Gauge,
		cpqFcaLogDrvHasAccel INTEGER,
		cpqFcaLogDrvAvailSpares OCTET STRING,
		cpqFcaLogDrvSize INTEGER,
		cpqFcaLogDrvPhyDrvIDs OCTET STRING,
		cpqFcaLogDrvCondition INTEGER,
		cpqFcaLogDrvStripeSize INTEGER,
		cpqFcaLogDrvOsName DisplayString,
		cpqFcaLogDrvBlinkTime Counter,
		cpqFcaLogDrvSpareReplaceMap OCTET STRING,
		cpqFcaLogDrvRebuildingPhyDrv INTEGER,
		cpqFcaLogDrvSnapshotResourceDrvIndex INTEGER,
		cpqFcaLogDrvSnapshotSourceDrvIndex INTEGER,
		cpqFcaLogDrvPreferredPath INTEGER,
		cpqFcaLogDrvCurrentPath INTEGER
		}

cpqFcaLogDrvBoxIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Logical Drive Storage Box Index.

The storage box index indicates which storage box this
logical drive is in."
	::= { cpqFcaLogDrvEntry 1 }


cpqFcaLogDrvIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Logical Drive Index.

This logical drive number keeps track of multiple instances of
logical drives which are in the same storage box.  For each
storage box index value, the logical drive index starts at 1 and
increments for each logical drive."
	::= { cpqFcaLogDrvEntry 2 }


cpqFcaLogDrvFaultTol OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	none(2),
	mirroring(3),
	dataGuard(4),
	distribDataGuard(5),
	advancedDataGuard(7)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Logical Drive Fault Tolerance.

This shows the fault tolerance mode of the logical drive.
To change the fault tolerance mode, run the configuration
utility.

The following values are valid for the Logical Drive Fault
Tolerance:

None (2)
Fault tolerance is not enabled.  If a physical drive reports
an error, the data cannot be recovered by the array
controller.

Mirroring (3)
For each physical drive, there is a second physical drive
containing identical data. If a drive fails, the data can be
retrieved from the mirror drive.

Data Guard (4)
One of the physical drives is used as a data guard drive and
contains the exclusive OR of the data on the remaining drives.
If a failure is detected, the External Array Controller
rebuilds the data using the data guard information plus
information from the other drives.

Distributed Data Guard (5)
Distributed Data Guarding, sometimes referred to as RAID 5,
is similar to Data Guarding, but instead of storing the parity
information on one drive, the information is distributed
across all of the drives.  If a failure is detected, the array
controller rebuilds the data using the data guard information
from all the drives.

Advanced Data Guarding (7)
Advanced Data Guarding (RAID ADG) is the fault tolerance method
that provides the highest level of data protection.  It
'stripes' data and parity across all the physical drives in the
configuration to ensure the uninterrupted availability of
uncorrupted data.  This fault-tolerance method is similar to
distributed data guard (RAID 5) in that parity data is
distributed across all drives in the array, except in RAID ADG
the capacity of multiple drives is used to store parity data.
Assuming the capacity of 2 drives is used for parity data,
this allows continued operation despite simultaneous failure of
any 2 drives in the array, whereas RAID 4 and RAID 5 can only
sustain failure of a single drive."
	::= { cpqFcaLogDrvEntry 3 }


cpqFcaLogDrvStatus OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	failed(3),
	unconfigured(4),
	recovering(5),
	readyForRebuild(6),
	rebuilding(7),
	wrongDrive(8),
	badConnect(9),
	overheating(10),
	shutdown(11),
	expanding(12),
	notAvailable(13),
	queuedForExpansion(14),
	hardError(15)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Logical Drive Status.

The logical drive can be in one of the following states:

Ok (2)
Indicates that the logical drive is in normal operation mode.

Failed (3)
Indicates that more physical drives have failed than the
fault tolerance mode of the logical drive can handle without
data loss.

Unconfigured (4)
Indicates that the logical drive is not configured.

Recovering (5)
Indicates that the logical drive is using Interim Recovery Mode.
In Interim Recovery Mode, at least one physical drive has
failed, but the logical drive's fault tolerance mode lets the
drive continue to operate with no data loss.

Ready Rebuild (6)
Indicates that the logical drive is ready for Automatic Data
Recovery.  The physical drive that failed has been replaced,
but the logical drive is still operating in Interim Recovery
Mode.

Rebuilding (7)
Indicates that the logical drive is currently doing Automatic
Data Recovery.  During Automatic Data Recovery, fault tolerance
algorithms restore data to the replacement drive.

Wrong Drive (8)
Indicates that the wrong physical drive was replaced after a
physical drive failure.

Bad Connect (9)
Indicates that a physical drive is not responding.

Overheating (10)
Indicates that the storage box that contains the logical drive
is overheating.  The array is still functioning, but
should be shutdown.

Shutdown (11)
Indicates that the storage box that contains the logical drive
has overheated.  The logical drive is no longer functioning.

Expanding (12)
Indicates that the logical drive is currently doing Automatic
Data Expansion.  During Automatic Data Expansion, fault
tolerance algorithms redistribute logical drive data to the
newly added physical drive.

Not Available (13)
Indicates that the logical drive is currently unavailable.
If a logical drive is expanding and the new configuration
frees additional disk space, this free space can be
configured into another logical volume.  If this is done,
the new volume will be set to not available.

Queued For Expansion (14)
Indicates that the logical drive is ready for Automatic Data
Expansion.  The logical drive is in the queue for expansion.

Hard Error (15)
Indicates that a hard error occurred for this LUN."
	::= { cpqFcaLogDrvEntry 4 }


cpqFcaLogDrvAutoRel OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Logical Drive Auto-Reliability Delay.

This value indicates how many seconds the logical drive will wait
with no requests before beginning Auto-Reliability monitoring.
For example, the default value is five, so the logical drive will
begin Auto-Reliability monitoring if it receives no requests for
five seconds.  If the value is zero, the logical drive will not
perform Auto-Reliability monitoring.  Auto-Reliability only
operates if the logical drive is configured in one of the fault
tolerance modes.

If the logical drive receives a request while performing
Auto-Reliability monitoring, the drive will stop monitoring to
process the request.  Once it has satisfied all incoming requests,
the drive will wait for the Auto-Reliability delay to expire
before returning to Auto-Reliability monitoring.

Auto-Reliability monitoring is a process to insure the highest
level of data reliability.  In this process each disk is scanned
to verify that all of the sectors in the array are readable.
If the Auto-Reliability monitoring process detects any bad
sectors on the drives, it automatically remaps these bad sectors
where possible.

If the value cannot be determined or is not applicable, the
value is set to -1."
	::= { cpqFcaLogDrvEntry 5 }


cpqFcaLogDrvPercentRebuild OBJECT-TYPE
	SYNTAX Gauge
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Logical Drive Percent Rebuild.

After a failed physical drive has been replaced, the physical
drive must have its data rebuilt.  This value the percent
complete of the rebuild.  When the value reaches 100, the
rebuilding process is complete.  The drive array continues to
operate in interim recovery mode while a drive is rebuilding.

When a logical volume is Expanding, the drive must redistribute
the logical volume data across the physical drives.  This value
shows how many blocks of data still need to be redistributed.
When the value reaches one hundred (100), the expand process
is complete.  The array continues to operate normally while
the drive is expanding.

This value is only valid if the Logical Drive Status is
rebuilding (7) or expanding (12).

If the value cannot be determined or a rebuild is not active,
the value is set to 4,294,967,295."
	::= { cpqFcaLogDrvEntry 6 }


cpqFcaLogDrvHasAccel OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	unavailable(2),
	enabled(3),
	disabled(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Logical Drive Has Array Accelerator Board.

This indicates whether the logical drive has an Array Accelerator
board configured and enabled.  The following values are valid:

Other (1)
Indicates that the instrument agent does not recognize the
Array Accelerator board.  You may need to upgrade your software.

Unavailable (2)
Indicates that there is no Array Accelerator board configured
for this logical drive.

Enabled (3)
Indicates that the Array Accelerator board is configured and
enabled for this logical drive.

Disabled (4)
Indicates that the Array Accelerator board is configured but
not enabled for this logical drive."
	::= { cpqFcaLogDrvEntry 7 }


cpqFcaLogDrvAvailSpares OBJECT-TYPE
	SYNTAX OCTET STRING (SIZE(0..255))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Logical Drive Available Spares.

This indicates if this logical drive has one or more spares
designated for it that are not currently in use by another drive.
Each octet present will be a physical drive ID that is an
available spare for this logical drive.  These are the same ID's
which can be used as indexes into the physical drive table.
An octet string of length zero indicates that there are no
available spares for this logical drive."
	::= { cpqFcaLogDrvEntry 8 }


cpqFcaLogDrvSize OBJECT-TYPE
	SYNTAX INTEGER (0..2147483647)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Logical Drive Size.

This is the size of the logical drive in megabytes.  This value
is calculated using the value 1,048,576 (2^20) as a megabyte.
Drive manufacturers sometimes use the number 1,000,000 as a
megabyte when giving drive capacities so this value may
differ from the advertised size of a drive."
	::= { cpqFcaLogDrvEntry 9 }


cpqFcaLogDrvPhyDrvIDs OBJECT-TYPE
	SYNTAX OCTET STRING (SIZE(0..255))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Logical Drive Physical Drive IDs.

This lists the physical drive IDs which are associated with this
logical drive. These are the same IDs which can be used as
indices into the physical drive table. Each byte of the string
is an index."
	::= { cpqFcaLogDrvEntry 10 }


cpqFcaLogDrvCondition OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	degraded(3),
	failed(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The Logical Drive condition.

This value represents the overall condition of this logical drive and
any associated physical drives."
	::= { cpqFcaLogDrvEntry 11 }


cpqFcaLogDrvStripeSize OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Logical Drive Stripe Size.

This is the size of a logical drive stripe in kilobytes."
	::= { cpqFcaLogDrvEntry 12 }


cpqFcaLogDrvOsName OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..255))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Logical Drive OS Name.

The OS name for this array logical drive.  This field will be
a null (size 0) string if the agent does not support OS name."
	::= { cpqFcaLogDrvEntry 13 }


cpqFcaLogDrvBlinkTime OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Logical Drive Physical Drive Blink Time Count.

The logical drive blink time variable allows the drive tray LEDs
of all physical drives in a logical drive to blink.  This value
indicates the amount of time, in tenths of a second, that the
physical drive LEDs will continue to blink.  A value of zero
indicates the drive LEDs are not blinking.  If the value cannot
be determined or no drive in this logical drive is in a hot
plug tray, 4,294,967,295 is returned.

To blink the drive LEDs on all physical drives in this logical
drive (including any configured spare drives), set this value
to the time to blink in tenths of seconds.

To stop the drive LEDs from blinking, set this value to 0."
	::= { cpqFcaLogDrvEntry 14 }


cpqFcaLogDrvSpareReplaceMap OBJECT-TYPE
	SYNTAX OCTET STRING (SIZE(0..256))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Logical Drive Spare To Replacement Drive Map.

This data structure contains the spare to physical drive
replacement map.  The format is:

octet  contents
=====  ========
1    Spare drive physical drive index
2    Replaced drive physical drive index

These 2 octets are repeated for each replaced drive.  For n
replaced drives, the string is 2 * n octets long.  An octet
string of length zero indicates that there are no replaced
drives currently in use."
	::= { cpqFcaLogDrvEntry 15 }


cpqFcaLogDrvRebuildingPhyDrv OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Logical Drive Physical Drive Rebuilding Index.

This is the physical drive index of the physical drive that is
currently rebuilding.  If the value cannot be determined or is
not applicable, the value is set to -1."
	::= { cpqFcaLogDrvEntry 16 }


cpqFcaLogDrvSnapshotResourceDrvIndex OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Logical Drive Snapshot Resource Drive Index.

This is the logical drive index of the Snapshot Resource Volume
associated with this logical drive.  If there is no Snapshot
Resource Volume association, the value is set to -1."
	::= { cpqFcaLogDrvEntry 17 }


cpqFcaLogDrvSnapshotSourceDrvIndex OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Logical Drive Snapshot Source Drive Index.

This is the drive index of the source logical drive associated
with this Snapshot Resource Volume.  If this logical drive is
not a Snapshot Resource Volume, the value is set to -1."
	::= { cpqFcaLogDrvEntry 18 }


cpqFcaLogDrvPreferredPath OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Logical Drive Preferred Path.

This identifies the preferred controller path to this logical
drive in a redundant active/active configuration.  The value is
the controller index.  If the controller is not configured as
active/active, the value is set to -1."
	::= { cpqFcaLogDrvEntry 19 }


cpqFcaLogDrvCurrentPath OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Logical Drive Current Path.

This identifies the current controller path to this logical drive
in a redundant active/active configuration.  The value is the
controller index.  If the controller is not configured as
active/active, the value is set to -1."
	::= { cpqFcaLogDrvEntry 20 }


cpqFcaSpareTable OBJECT-TYPE
	SYNTAX SEQUENCE OF CpqFcaSpareEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Spare Table.

A table of spare entries."
	::= { cpqFcaSpareDrv 1 }


cpqFcaSpareEntry OBJECT-TYPE
	SYNTAX CpqFcaSpareEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Spare Entry.

An entry in the spare table."
	INDEX { cpqFcaSpareBoxIndex , cpqFcaSparePhyDrvIndex }

	::= { cpqFcaSpareTable 1 }

cpqFcaSpareEntry ::=
	SEQUENCE {
		cpqFcaSpareBoxIndex INTEGER,
		cpqFcaSparePhyDrvIndex INTEGER,
		cpqFcaSpareStatus INTEGER,
		cpqFcaSpareReplacedDrvBay INTEGER,
		cpqFcaSparePercentRebuild Gauge,
		cpqFcaSpareCondition INTEGER,
		cpqFcaSpareBusNumber INTEGER,
		cpqFcaSpareBay INTEGER,
		cpqFcaSpareReplacedDrvBusNumber INTEGER,
		cpqFcaSpareLocationString DisplayString
		}

cpqFcaSpareBoxIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Spare Drive Storage Box Index.

The storage box index indicates which storage box this spare
drive is in."
	::= { cpqFcaSpareEntry 1 }


cpqFcaSparePhyDrvIndex OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Spare Physical Drive Index.

This index maps the spare to the physical drive it represents.
The value of this index is the same as the one used with the
physical drive table."
	::= { cpqFcaSpareEntry 2 }


cpqFcaSpareStatus OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	inactive(2),
	failed(3),
	building(4),
	active(5)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Spare Status.

This shows the status of the on-line spare drive.

The following values are valid for the spare status:

Inactive (2)
The monitored system has an on-line spare configured, but is
not currently in use.

Failed (3)
The on-line spare has failed and is no longer available for use.

Building (4)
A physical drive has failed. Automatic Data Recovery
is in progress to recover data to the on-line spare.

Active (5)
A physical drive has failed. Automatic Data Recovery is
complete.  The system is using the on-line spare as a
replacement for the failed drive."
	::= { cpqFcaSpareEntry 3 }


cpqFcaSpareReplacedDrvBay OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Spare Replaced Drive Bay.

If the spare status is active(6) or building(5), then this
has the physical drive bay number of the replaced drive.
If the value cannot be determined or is not applicable, the
value is set to -1."
	::= { cpqFcaSpareEntry 4 }


cpqFcaSparePercentRebuild OBJECT-TYPE
	SYNTAX Gauge
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Spare Percent Rebuild.

If the spare status is building(5), then this is percent
complete of of the rebuild.

The data contained on the failed physical drive must be
reconstructed from the fault tolerance data and copied to the
spare so that the spare can function in place of the failed drive.

When the number reaches one hundred (100), the building process
is complete and the spare has replaced the physical drive.

If the value cannot be determined or a rebuild is not active,
the value is set to 4,294,967,295."
	::= { cpqFcaSpareEntry 5 }


cpqFcaSpareCondition OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	degraded(3),
	failed(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The Spare Drive condition.

This value represents the overall condition of this spare drive
and any associated physical drives."
	::= { cpqFcaSpareEntry 6 }


cpqFcaSpareBusNumber OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Spare Drive SCSI Bus Number.

The bus number indicates to which SCSI bus this spare drive
is attached.  The first instance is one and increments
for each SCSI bus on a controller."
	::= { cpqFcaSpareEntry 7 }


cpqFcaSpareBay OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Spare Drive Bay Location.

This value matches the bay location where the physical drive has
been installed.  Each bay is labeled with a separate number so
that you can identify the location of the drive."
	::= { cpqFcaSpareEntry 8 }


cpqFcaSpareReplacedDrvBusNumber OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Spare Replaced Drive Bus Number.

If the spare status is active(6) or building(5), then this
has the physical drive bus number of the replaced drive.
If the value cannot be determined or is not applicable, the
value is set to -1."
	::= { cpqFcaSpareEntry 9 }


cpqFcaSpareLocationString OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..255))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Spare Drive Location String.

This string describes the location of the drive in relation to
the storage box.  If the location string cannot be determined,
the agent will return a NULL string."
	::= { cpqFcaSpareEntry 10 }


cpqFcaPhyDrvTable OBJECT-TYPE
	SYNTAX SEQUENCE OF CpqFcaPhyDrvEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Physical Drive Table.

A table of physical drive entries."
	::= { cpqFcaPhyDrv 1 }


cpqFcaPhyDrvEntry OBJECT-TYPE
	SYNTAX CpqFcaPhyDrvEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Physical Drive Entry.

A physical drive entry."
	INDEX { cpqFcaPhyDrvBoxIndex , cpqFcaPhyDrvIndex }

	::= { cpqFcaPhyDrvTable 1 }

cpqFcaPhyDrvEntry ::=
	SEQUENCE {
		cpqFcaPhyDrvBoxIndex INTEGER,
		cpqFcaPhyDrvIndex INTEGER,
		cpqFcaPhyDrvModel DisplayString,
		cpqFcaPhyDrvFWRev DisplayString,
		cpqFcaPhyDrvBay INTEGER,
		cpqFcaPhyDrvStatus INTEGER,
		cpqFcaPhyDrvUsedReallocs Counter,
		cpqFcaPhyDrvRefHours Counter,
		cpqFcaPhyDrvHReads Counter,
		cpqFcaPhyDrvReads Counter,
		cpqFcaPhyDrvHWrites Counter,
		cpqFcaPhyDrvWrites Counter,
		cpqFcaPhyDrvHSeeks Counter,
		cpqFcaPhyDrvSeeks Counter,
		cpqFcaPhyDrvHardReadErrs Counter,
		cpqFcaPhyDrvRecvReadErrs Counter,
		cpqFcaPhyDrvHardWriteErrs Counter,
		cpqFcaPhyDrvRecvWriteErrs Counter,
		cpqFcaPhyDrvHSeekErrs Counter,
		cpqFcaPhyDrvSeekErrs Counter,
		cpqFcaPhyDrvSpinupTime INTEGER,
		cpqFcaPhyDrvFunctTest1 Gauge,
		cpqFcaPhyDrvFunctTest2 Gauge,
		cpqFcaPhyDrvFunctTest3 Gauge,
		cpqFcaPhyDrvOtherTimeouts Counter,
		cpqFcaPhyDrvBadRecvReads Counter,
		cpqFcaPhyDrvBadRecvWrites Counter,
		cpqFcaPhyDrvFormatErrs Counter,
		cpqFcaPhyDrvNotReadyErrs Counter,
		cpqFcaPhyDrvHasMonInfo INTEGER,
		cpqFcaPhyDrvCondition INTEGER,
		cpqFcaPhyDrvHotPlugs Counter,
		cpqFcaPhyDrvMediaErrs Counter,
		cpqFcaPhyDrvHardwareErrs Counter,
		cpqFcaPhyDrvAbortedCmds Counter,
		cpqFcaPhyDrvSpinUpErrs Counter,
		cpqFcaPhyDrvBadTargetErrs Counter,
		cpqFcaPhyDrvSize INTEGER,
		cpqFcaPhyDrvBusFaults Counter,
		cpqFcaPhyDrvHotPlug INTEGER,
		cpqFcaPhyDrvPlacement INTEGER,
		cpqFcaPhyDrvBusNumber INTEGER,
		cpqFcaPhyDrvSerialNum DisplayString,
		cpqFcaPhyDrvPreFailMonitoring INTEGER,
		cpqFcaPhyDrvCurrentWidth INTEGER,
		cpqFcaPhyDrvCurrentSpeed INTEGER,
		cpqFcaPhyDrvFailureCode INTEGER,
		cpqFcaPhyDrvBlinkTime Counter,
		cpqFcaPhyDrvSmartStatus INTEGER,
		cpqFcaPhyDrvRotationalSpeed INTEGER,
		cpqFcaPhyDrvType INTEGER,
		cpqFcaPhyDrvSataVersion INTEGER,
		cpqFcaPhyDrvBoxConnector DisplayString,
		cpqFcaPhyDrvBoxOnConnector INTEGER,
		cpqFcaPhyDrvLocationString DisplayString,
		cpqFcaPhyDrvNegotiatedLinkRate INTEGER,
		cpqFcaPhyDrvPhyCount INTEGER,
		cpqFcaPhyDrvUnsupportedDrive INTEGER
		}

cpqFcaPhyDrvBoxIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Physical Drive Storage Box Index.

The storage box index indicates which storage box this physical
drive is in."
	::= { cpqFcaPhyDrvEntry 1 }


cpqFcaPhyDrvIndex OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Physical Drive Index.

This index is used for selecting the physical drive table entry.
This number, along with the cpqFcaPhyDrvBoxIndex uniquely
identify a specific physical drive."
	::= { cpqFcaPhyDrvEntry 2 }


cpqFcaPhyDrvModel OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..41))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Physical Drive Model.

This is a text description of the physical drive.  The text that
appears depends upon who manufactured the drive and the drive
type.

If a drive fails, note the model to identify the type of drive
necessary for replacement."
	::= { cpqFcaPhyDrvEntry 3 }


cpqFcaPhyDrvFWRev OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..8))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Physical Drive Firmware Revision.

This shows the physical drive firmware revision number."
	::= { cpqFcaPhyDrvEntry 4 }


cpqFcaPhyDrvBay OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Physical Drive Bay Location.

This value matches the bay location where the physical drive has
been installed.  Each bay is labeled with a separate number so
that you can identify the location of the drive."
	::= { cpqFcaPhyDrvEntry 5 }


cpqFcaPhyDrvStatus OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	unconfigured(2),
	ok(3),
	threshExceeded(4),
	predictiveFailure(5),
	failed(6),
	unsupportedDrive(7)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Physical Drive Status.

This shows the status of the physical drive.

The following values are valid for the physical drive status:

other (1)
Indicates that the instrument agent does not recognize
the drive.  You may need to upgrade your instrument agent
and/or driver software.

unconfigured (2)
Indicates the drive is present, but is not part of any
logical drive configuration.

ok (3)
Indicates the drive is functioning properly.

thresholdExceeded (4)
Indicates that the drive has a threshold exceeded error and
should be replaced.

predictiveFailure (5)
Indicates that the drive has a predictive failure error and
should be replaced.

failed (6)
Indicates that the drive is no longer operating and
should be replaced.

unsupportedDrive(7)
Indicates that an unsupported drive has been detected and
should be replaced.  See cpqFcaPhyDrvUnsupportedDrive for
more details."
	::= { cpqFcaPhyDrvEntry 6 }


cpqFcaPhyDrvUsedReallocs OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Physical Drive Used Reallocated Sectors.

This shows the number of sectors of the reallocation area that
have been used by the physical drive.

To see how many sectors were originally available for use in the
reallocation area, refer to the factory reallocation information
if it exists.  Not all drives support factory reallocation.

Because of the nature of magnetic disks, certain sectors on a
drive may have media defects. The reallocation area is part of
the disk drive that the drive manufacturer sets aside to
compensate for these defects. The drive array controller writes
information addressed from these unusable sectors to available
sectors in the reallocation area.  If too many sectors have
been reallocated, there may be a problem with the drive.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 7 }


cpqFcaPhyDrvRefHours OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Reference Time in hours.

This shows the total number of hours that a physical drive has
been spinning since the drive was stamped.  The drive will have
either been stamped when it left the factory or when you ran
diagnostics on your new drive.  You can use the reference
time to calculate rates for other physical drive events."
	::= { cpqFcaPhyDrvEntry 8 }


cpqFcaPhyDrvHReads OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Physical Drive Sectors Read (high).

The phyDrvHReads and the phyDrvReads together shows the total
number of sectors read from the physical disk drive during the
reference time (phyDrvRefHours).

The actual number of sectors read equals the phyDrvHReads
times 2^32 plus the phyDrvReads.

This information may be useful for determining rates.
For instance, if you wanted to calculate the average number
of reads per hour of operation, divide this number by the
reference hours.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 9 }


cpqFcaPhyDrvReads OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Physical Drive Sectors Read (low).

The phyDrvHReads and the phyDrvReads together shows
the total number of sectors read from the physical disk drive
during the reference time (phyDrvRefHours).

The actual number of sectors read equals the phyDrvHReads
times 2^32 plus the phyDrvReads.

This information may be useful for determining rates.
For instance, if you wanted to calculate the average number
of reads per hour of operation, divide this number by the
reference hours.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 10 }


cpqFcaPhyDrvHWrites OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Sectors Written (high).

The phyDrvHWrites and the phyDrvWrites together shows the
total number of sectors written to the physical disk drive
during the reference hours (phyDrvRefHours).

The actual number of sectors written equals the phyDrvHWrites
times 2^32 plus the phyDrvWrites.

This information may be useful for determining rates.
For instance, if you wanted to calculate the average number
of writes per hour of operation, divide this number by the
reference hours.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 11 }


cpqFcaPhyDrvWrites OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Sectors Written (low).

The phyDrvHWrites and the phyDrvWrites together
shows the total number of sectors written to the physical
disk drive during the reference hours (phyDrvRefHours).

The actual number of sectors written equals the phyDrvHWrites
times 2^32 plus the phyDrvWrites.

This information may be useful for determining rates.
For instance, if you wanted to calculate the average number of
writes per hour of operation, divide this number by the reference
hours.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 12 }


cpqFcaPhyDrvHSeeks OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Total Seeks (high).

The phyDrvHSeeks and the phyDrvSeeks together shows the total
number of seek operations performed by the physical disk drive
during the reference hours (phyDrvRefHours).

The actual number of seeks equals the phyDrvHSeeks times
2^32 plus the phyDrvWriteSeeks.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 13 }


cpqFcaPhyDrvSeeks OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Total Seeks (low).

The phyDrvHSeeks and the phyDrvSeeks together shows the total
number of seek operations performed by the physical disk drive
during the reference hours (phyDrvRefHours).

The actual number of seeks equals the phyDrvHSeeks times
2^32 plus the phyDrvWriteSeeks.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 14 }


cpqFcaPhyDrvHardReadErrs OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Hard Read Errors.

This shows the number of read errors that have occurred on a
drive that could not be recovered by a physical drive's Error
Correction Code (ECC) algorithm or through retries during the
reference time (phyDrvRefTime).  Over time, a disk drive may
produce these errors.  If you receive these errors, a problem
may exist with your drive.

The value increases every time the physical drive detects another
error.

The severity of these errors depends on whether the monitored
system is running in a fault tolerant mode. With fault tolerance,
the controller can remap data to eliminate the problems caused by
these errors.  In either case, if you see an increase in these
errors, run diagnostics to verify that a problem exists.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 15 }


cpqFcaPhyDrvRecvReadErrs OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Recovered Read Errors.

This shows the number of read errors corrected through physical
drive retries during the reference time (phyDrvRefTime).

Over time, all disk drives produce these errors.  If you notice a
rapid increase in the value for Recovered Read Errors (or Hard
Read Errors), a problem may exist with the drive.  The value
increases every time the physical drive detects and corrects
another error.

Expect more Recovered Read Errors than Hard Read Errors. If you
suspect that a problem may exist with the drive, run diagnostics.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 16 }


cpqFcaPhyDrvHardWriteErrs OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Hard Write Errors.

This shows the number of write errors that could not be recovered
by a physical drive during the reference time (phyDrvRefTime).

Over time a disk drive may detect these errors. If you notice an
increase in the value shown for Hard Write Errors or Recovered
Write Errors, a problem may exist with the drive.  The value
increases every time the physical drive detects another error.
On average, these errors should occur less frequently than
read errors.  If you see an increase in these errors, run
diagnostics to verify that a problem exists.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 17 }


cpqFcaPhyDrvRecvWriteErrs OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Recovered Write Errors.

This shows the number of write errors corrected through physical
drive retries or recovered by a physical drive during the
reference time (phyDrvRefTime).

Over time a disk drive may produce these errors.

If you notice an increase in the value shown for Hard Write
Errors or Recovered Write Errors, a problem may exist with
the drive.

The value increases every time the physical drive detects and
corrects an error. Only an unusually rapid increase in these
errors indicates a problem.

On average, these errors should occur less frequently than hard
read errors.  If you suspect that a problem may exist with the
drive, run diagnostics.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 18 }


cpqFcaPhyDrvHSeekErrs OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Seek Errors (High).

The phyDrvHSeekErrs and the phyDrvSeekErrs together shows the
total number of times that the physical disk drive detected a
seek error during the reference hours (phyDrvRefHours).

The actual number of seek errors equals the phyDrvHSeekErrs times
2^32 plus the phyDrvWriteSeekErrs.

Over time, a disk drive usually produces these errors. If you
notice a rapid increase in the value shown for Seek Errors,
this physical drive may be failing.

The value increases every time the physical drive produces
another error. Only an unusually rapid increase in these errors
indicates a problem. If you suspect that a problem exists,
run diagnostics.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 19 }


cpqFcaPhyDrvSeekErrs OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Seek Errors (low).
The phyDrvHSeekErrs and the phyDrvSeekErrs together shows the
total number of times that the physical disk drive detected a
seek error during the reference hours (phyDrvRefHours).

The actual number of seek errors equals the phyDrvHSeekErrs times
2^32 plus the phyDrvWriteSeekErrs.

Over time, a disk drive usually produces these errors. If you
notice a rapid increase in the value shown for Seek Errors,
this physical drive may be failing.

The value increases every time the physical drive produces
another error.  Only an unusually rapid increase in these errors
indicates a problem.  If you suspect that a problem exists, run
diagnostics.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 20 }


cpqFcaPhyDrvSpinupTime OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Spin up Time in tenths of seconds.

This is the time it takes for a physical drive to spin up to full
speed.

Disks require time to gain momentum and reach operating speed. As
cars are tested to go from 0 mph to 60 mph in x number of seconds,
drive manufacturers have preset expectations for the time it takes
the drive to spin to full speed. Drives that do not meet these
expectations may have problems.

The value may be zero (0) under one of the following conditions:

*  If you are monitoring a physical drive that is part of the
monitored system's internal drive array storage, and you use a
warm boot to reset the monitored system. During a warm boot,
the drives continue to spin.

*  If you are monitoring a physical drive in an ProLiant Storage
System storage and you reset the array but not the ProLiant
Storage System.

If the value cannot be determined, -1 is returned."
	::= { cpqFcaPhyDrvEntry 21 }


cpqFcaPhyDrvFunctTest1 OBJECT-TYPE
	SYNTAX Gauge
	ACCESS read-only
	STATUS optional
	DESCRIPTION "Functional Test 1.

This provides information about a series of tests that indicate
how well a physical drive works. These tests compare the way the
physical drive currently operates when performing various tasks
with the way it worked when it was new.

A percent value is displayed that represents how the drive works
currently when compared to how the drive worked when new.  New
drives operate at the 100 percent level.  By default, if the
current value is less than or equal to 80 percent, a problem may
exist.

If you suspect a problem, run diagnostics to verify that a
problem exists.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 22 }


cpqFcaPhyDrvFunctTest2 OBJECT-TYPE
	SYNTAX Gauge
	ACCESS read-only
	STATUS optional
	DESCRIPTION "Functional Test 2.

This provides information about a series of tests that indicate
how well a physical drive works. These tests compare the way the
physical drive currently operates when performing various tasks
with the way it worked when it was new.

A percent value is displayed that represents how the drive works
currently when compared to how the drive worked when new.  New
drives operate at the 100 percent level. By default, if the
current value is less than or equal to 80 percent, a problem may
exist.

If you suspect a problem, run diagnostics to verify that a
problem exists.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 23 }


cpqFcaPhyDrvFunctTest3 OBJECT-TYPE
	SYNTAX Gauge
	ACCESS read-only
	STATUS optional
	DESCRIPTION "Functional Test 3.

This provides information about a series of tests that indicate
how well a physical drive works. These tests compare the way the
physical drive currently operates when performing various tasks
with the way it worked when it was new.

A percent value is displayed that represents how the drive works
currently when compared to how the drive worked when new.  New
drives operate at the 100 percent level. By default, if the
current value is less than or equal to 80 percent, a problem may
exist.

If you suspect a problem, run diagnostics to verify that a
problem exists.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 24 }


cpqFcaPhyDrvOtherTimeouts OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Other Timeouts.

The number of times that a physical drive did not respond with an
interrupt within a controller-defined period of time after a
command had been issued during the reference time (phyDrvRefTime).
This does not include DRQ timeouts.

If you suspect a problem, complete the following steps for the
monitored system:

1.  Check the cables connecting the drive to ensure that they
are intact.

2.  If the cables are properly connected, run diagnostics to
verify that a problem exists.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 25 }


cpqFcaPhyDrvBadRecvReads OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Recovery Failed (Bad) Read Error.

The number of times a read error occurred while performing
Automatic Data Recovery from this physical drive to another
drive during the reference time (phyDrvRefTime).

If a read error occurs, Automatic Data Recovery stops.  These
errors indicate that the physical drive has failed.  If you
suspect a problem, run diagnostics to verify that a problem
exists.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 26 }


cpqFcaPhyDrvBadRecvWrites OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Recovery Failed (Bad) Write Error.

The number of times a write error occurred while performing
Automatic Data Recovery from another drive to this physical
drive during the reference time (phyDrvRefTime).

If a write error occurs, Automatic Data Recovery stops.  These
errors indicate that the physical drive has failed.  If you
suspect a problem, run diagnostics to verify that a problem
exists.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 27 }


cpqFcaPhyDrvFormatErrs OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Format Error.

The number of times a format operation failed when the controller
attempted to remap a bad sector during the reference time
(phyDrvRefTime).  Zero indicates that no format errors have
occurred.  The value increases each time a format error occurs.
A failed format operation may cause the controller to mark a
drive failed.

If you suspect a problem, run diagnostics to verify a problem
exists.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 28 }


cpqFcaPhyDrvNotReadyErrs OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Drive Not Ready Errors.

The number of times the physical drive failed after the spin up
command was issued during the reference time (phyDrvRefTime).
When the spin up command was issued, the drive failed to reach
its ready state.  If the current value is zero, the drive has
not failed.  If the current value is greater than zero, at
least one failure occurred.

This error could be caused because the physical drive has failed
to spin.

If you suspect a problem:

1.  Check the cables connecting the drive to ensure that they
are intact.

2.  If the cables are properly connected, run diagnostics to
verify that a problem exists.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 29 }


cpqFcaPhyDrvHasMonInfo OBJECT-TYPE
	SYNTAX INTEGER {
	false(1),
	true(2)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Has Monitor Information.

All of the physical disk table fields except for the physical
disk status (phyDrvStatus) and the bay location
(phyDrvBayLocation) are invalid unless this field has a value
of true(2)."
	::= { cpqFcaPhyDrvEntry 30 }


cpqFcaPhyDrvCondition OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	degraded(3),
	failed(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The condition of the device.
This value represents the overall condition of this physical
drive."
	::= { cpqFcaPhyDrvEntry 31 }


cpqFcaPhyDrvHotPlugs OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Hot Plug Count.

This value indicates the number of times this physical drive
was hot-plugged (removed) from a storage system.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 32 }


cpqFcaPhyDrvMediaErrs OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Media Failure Count.

This value indicates the number of times this physical drive
was failed due to unrecoverable media errors.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 33 }


cpqFcaPhyDrvHardwareErrs OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Hardware Error Count.

This value indicates the number of times this physical drive
returned a bad hardware status. The drive may be failed if
retries do not work.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 34 }


cpqFcaPhyDrvAbortedCmds OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Aborted Command Failures.

This value indicates the number of times this physical drive
was failed due to aborted commands that could not be retried
successfully.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 35 }


cpqFcaPhyDrvSpinUpErrs OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Spin-Up Failure Count.

This value indicates the number of times this physical drive
was failed due to a failure of a spin-up command.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 36 }


cpqFcaPhyDrvBadTargetErrs OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Bad Target Count.

This value indicates the number of times this physical drive
performed some action that did not conform to the SCSI-2 bus
protocol.  These actions will cause the SCSI bus to be reset.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 37 }


cpqFcaPhyDrvSize OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Size in MB.

This is the size of the physical drive in megabytes.  This value
is calculated using the value 1,048,576 (2^20) as a megabyte.
Drive manufacturers sometimes use the number 1,000,000 as a
megabyte when giving drive capacities so this value may differ
from the advertised size of a drive."
	::= { cpqFcaPhyDrvEntry 38 }


cpqFcaPhyDrvBusFaults OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Bus Fault Count.

This value indicates the number of times that a bus fault was
detected for the drive by the controller.

If the value cannot be determined, 4,294,967,295 is
returned."
	::= { cpqFcaPhyDrvEntry 39 }


cpqFcaPhyDrvHotPlug OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	hotPlug(2),
	nonHotPlug(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Hot Plug Support Status.

The following values are defined:

other(1)
The Insight Agent is unable to determine if this drive
supports hot plug replacement.

hotPlug(2)
The drive supports hot plug replacement.

nonhotPlug(3)
The drive does not support hot plug replacement."
	::= { cpqFcaPhyDrvEntry 40 }


cpqFcaPhyDrvPlacement OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	internal(2),
	external(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Placement.

The following values are defined:

other(1)
The agent is unable to determine if the drive is internal or
external to the system chassis.

internal(2)
The drive is located in the system chassis.

external(3)
The drive is located outside the system chassis in an
expansion box."
	::= { cpqFcaPhyDrvEntry 41 }


cpqFcaPhyDrvBusNumber OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive SCSI Bus Number.

The bus number indicates to which SCSI bus this physical
drive is attached.  The first instance is one and increments
for each SCSI bus on a controller."
	::= { cpqFcaPhyDrvEntry 42 }


cpqFcaPhyDrvSerialNum OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..40))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Serial Number.

This is the serial number assigned to the physical drive.
This value is based upon the serial number as returned by the
SCSI inquiry command but may have been modified due to space
limitations.  This can be used for identification purposes."
	::= { cpqFcaPhyDrvEntry 43 }


cpqFcaPhyDrvPreFailMonitoring OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	notAvailable(2),
	available(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Predictive Failure Monitoring.

The following values are defined:

other(1)
The agent is unable to determine if the drive supports
predictive failure monitoring.

notAvailable(2)
This drive does not support predictive failure monitoring.

available(3)
This drive supports predictive failure monitoring."
	::= { cpqFcaPhyDrvEntry 44 }


cpqFcaPhyDrvCurrentWidth OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	narrow(2),
	wide16(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Current Width.

The following values are defined:

other(1)
The agent is unable to determine the current negotiated data
transfer width for this drive.

narrow(2)
The negotiated data transfer width for this drive is narrow
(8 data bits).

wide16(3)
The negotiated data transfer width for this drive is wide
(16 data bits)."
	::= { cpqFcaPhyDrvEntry 45 }


cpqFcaPhyDrvCurrentSpeed OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	asynchronous(2),
	fast(3),
	ultra(4),
	ultra2(5),
	ultra3(6),
	ultra320(7)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Current Data Transfer Speed.

The following values are defined:

other(1)
The agent is unable to determine the current negotiated data
transfer speed for this drive.

asynchronous(2)
The negotiated data transfer speed for this drive is
asynchronous.

fast(3)
The negotiated data transfer speed for this drive is 10 million
transfers per second).

ultra(4)
The negotiated data transfer speed for this drive is 20 million
transfers per second.

ultra2(5)
The negotiated data transfer speed for this drive is 40 million
transfers per second.

ultra3(6)
The negotiated data transfer speed for this drive is 80 million
transfers per second.

ultra320(7)
The negotiated data transfer speed for this drive is 160
million transfers per second."
	::= { cpqFcaPhyDrvEntry 46 }


cpqFcaPhyDrvFailureCode OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Failure Code.

This value is the drive failure reason code returned by the
array firmware.  It is valid only when the drive is failed.
If the drive is not failed, 0 is returned."
	::= { cpqFcaPhyDrvEntry 47 }


cpqFcaPhyDrvBlinkTime OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive LED Blink Time.

This value is the amount of time remaining for the drive LEDs to
blink in tenths of seconds.  A value of zero means the drive
LEDs are not blinking.  If the value cannot be determined or the
drive is not in a hot plug tray, 4,294,967,295 is returned.

To blink the drive LEDs, set this value to the time to blink in
tenths of seconds.

To stop the drive LEDs from blinking, set this value to 0."
	::= { cpqFcaPhyDrvEntry 48 }


cpqFcaPhyDrvSmartStatus OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	replaceDrive(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive S.M.A.R.T Status.

The following values are defined:

other(1)
The agent is unable to determine if the status of S.M.A.R.T
predictive failure monitoring for this drive.

ok(2)
Indicates the drive is functioning properly.

replaceDrive(3)
Indicates that the drive has a S.M.A.R.T predictive failure
error and should be replaced."
	::= { cpqFcaPhyDrvEntry 49 }


cpqFcaPhyDrvRotationalSpeed OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	rpm7200(2),
	rpm10K(3),
	rpm15K(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Rotational Speed.

The following values are defined:

other(1)
The agent is unable to determine the rotational speed for
this drive.

rpm7200(2)
The rotational speed for this drive is 7200 rpm.

rpm10K(3)
The rotational speed for this drive is 10000 rpm.

rpm15K(4)
The rotational speed for this drive is 15000 rpm."
	::= { cpqFcaPhyDrvEntry 50 }


cpqFcaPhyDrvType OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	parallelScsi(2),
	sata(3),
	sas(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Type.

The following values are defined:

other(1)
The agent is unable to determine the type for this drive.

parallelScsi(2)
The drive type is parallel SCSI.

sata(3)
The drive type is Serial ATA.

sas(4)
The drive type is Serial Attached SCSI."
	::= { cpqFcaPhyDrvEntry 51 }


cpqFcaPhyDrvSataVersion OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	sataOne(2),
	sataTwo(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive SATA Version.

The following values are defined:

other(1)
The agent is unable to determine the SATA version for this
drive or it is not a SATA drive.

sataOne(2)
The drive is SATA version one.

sataTwo(3)
The drive is SATA version two."
	::= { cpqFcaPhyDrvEntry 52 }


cpqFcaPhyDrvBoxConnector OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..4))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Box Connector.

This is the box connector to which the drive is ultimately
attached.  If the box connector cannot be determined, the agent
will return a NULL string."
	::= { cpqFcaPhyDrvEntry 53 }


cpqFcaPhyDrvBoxOnConnector OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Box on Connector.

The box on connector indicates to which box instance this
physical drive belongs.  The instances start at one and increment for
each box attached to a connector.  If the value cannot be
determined or does not apply, -1 is returned."
	::= { cpqFcaPhyDrvEntry 54 }


cpqFcaPhyDrvLocationString OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..255))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Location String.

This string describes the location of the drive in relation to
the storage box.  If the location string cannot be determined,
the agent will return a NULL string."
	::= { cpqFcaPhyDrvEntry 55 }


cpqFcaPhyDrvNegotiatedLinkRate OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	rate-1-5(2),
	rate-3-0(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Negotiated Link Rate.

The following values are defined:

other(1)
The agent is unable to determine the negotiated link rate
this drive.

rate-1-5(2)
The negotiated link rate for this drive is 1.5 Gigabits per
second.

rate-3-0(3)
The negotiated link rate for this drive is 3.0 Gigabits per
second."
	::= { cpqFcaPhyDrvEntry 56 }


cpqFcaPhyDrvPhyCount OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive PHY Count.

This value indicates how many PHYs exist on a SAS or SATA disk
drive.  If the value cannot be determined or does not apply,
-1 is returned."
	::= { cpqFcaPhyDrvEntry 57 }


cpqFcaPhyDrvUnsupportedDrive OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	supported(2),
	unsupported-SinglePorted(3),
	unsupported-SATA(4),
	unsupported-TooSmall(5)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Physical Drive Unsupported Drive.

The following values are defined:

other(1)
The agent is unable to determine the value for this drive.

supported(2)
The drive is supported.

unsupported-SinglePorted(3)
The drive is unsupported.  A single ported drive has been
detected in a dual port only configuration.

unsupported-SATA(4)
The drive is unsupported.  A SATA drive has been detected in
a SAS only configuration.

unsupported-TooSmall(5)
The drive is unsupported.  A drive that is too small has been
detected."
	::= { cpqFcaPhyDrvEntry 58 }


cpqFcaPhyDrvThrTable OBJECT-TYPE
	SYNTAX SEQUENCE OF CpqFcaPhyDrvThrEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Drive Array Physical Drive Threshold Table.

A table of physical drive threshold entries."
	::= { cpqFcaPhyDrvThr 1 }


cpqFcaPhyDrvThrEntry OBJECT-TYPE
	SYNTAX CpqFcaPhyDrvThrEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Drive Array Physical Drive Threshold Entry.

A physical drive threshold entry."
	INDEX { cpqFcaPhyDrvThrBoxIndex , cpqFcaPhyDrvThrIndex }

	::= { cpqFcaPhyDrvThrTable 1 }

cpqFcaPhyDrvThrEntry ::=
	SEQUENCE {
		cpqFcaPhyDrvThrBoxIndex INTEGER,
		cpqFcaPhyDrvThrIndex INTEGER,
		cpqFcaPhyDrvThrUsedReallocs INTEGER,
		cpqFcaPhyDrvThrSpinupTime INTEGER,
		cpqFcaPhyDrvThrFunctTest1 INTEGER,
		cpqFcaPhyDrvThrFunctTest2 INTEGER,
		cpqFcaPhyDrvThrFunctTest3 INTEGER,
		cpqFcaPhyDrvThrViUsedReallocs INTEGER,
		cpqFcaPhyDrvThrViSpinupTime INTEGER,
		cpqFcaPhyDrvThrViFunctTest1 INTEGER,
		cpqFcaPhyDrvThrViFunctTest2 INTEGER,
		cpqFcaPhyDrvThrViFunctTest3 INTEGER
		}

cpqFcaPhyDrvThrBoxIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Physical Drive Threshold Storage Box Index.

The storage box index indicates which storage box this physical
drive is in."
	::= { cpqFcaPhyDrvThrEntry 1 }


cpqFcaPhyDrvThrIndex OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Drive Array Physical Drive Threshold Index.

This index maps the thresholds to a physical drive.  The value
of this index is the same as the one used with the physical
drive table."
	::= { cpqFcaPhyDrvThrEntry 2 }


cpqFcaPhyDrvThrUsedReallocs OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Used Reallocated Sectors Maximum Threshold.

This shows the maximum threshold of the reallocation area that
has been used by the physical drive.

This threshold is associated with the cpqFcaPhyDrvUsedReallocs
object in the Physical Drive Table.

If the value cannot be determined, -1 is returned."
	::= { cpqFcaPhyDrvThrEntry 3 }


cpqFcaPhyDrvThrSpinupTime OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Spin up Time Maximum Threshold in tenths of seconds.

This shows the maximum of time it takes for a physical drive to
spin up to full speed.

This threshold is associated with the cpqFcaPhyDrvSpinupTime
object in the Physical Drive Table.

If the value cannot be determined, -1 is returned."
	::= { cpqFcaPhyDrvThrEntry 4 }


cpqFcaPhyDrvThrFunctTest1 OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS optional
	DESCRIPTION "Functional Test 1 Minimum Threshold.

This provides the minimum threshold for information about a series
of tests that indicate how well a physical drive works. These
tests compare the way the physical drive currently operate
when performing various tasks with the way it worked when it
was new.

This threshold is associated with the cpqFcaPhyDrvFunctTest1
object in the Physical Drive Table.

If the value cannot be determined, -1 is returned."
	::= { cpqFcaPhyDrvThrEntry 5 }


cpqFcaPhyDrvThrFunctTest2 OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS optional
	DESCRIPTION "Functional Test 2 Minimum Threshold.

This provides the minimum threshold for information about a
series of tests that indicate how well a physical drive works.
These tests compare the way the physical drive currently
operates when performing various tasks with the way it worked
when it was new.

This threshold is associated with the cpqFcaPhyDrvFunctTest2
object in the Physical Drive Table.

If the value cannot be determined, -1 is returned."
	::= { cpqFcaPhyDrvThrEntry 6 }


cpqFcaPhyDrvThrFunctTest3 OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS optional
	DESCRIPTION "Functional Test 3 Minimum Threshold.

This provides the minimum threshold for information about a
series of tests that indicate how well a physical drive works.
These tests compare the way the physical drive currently operates
when performing various tasks with the way it worked when it was
new.

This threshold is associated with the cpqFcaPhyDrvFunctTest3
object in the Physical Drive Table.

If the value cannot be determined, -1 is returned."
	::= { cpqFcaPhyDrvThrEntry 7 }


cpqFcaPhyDrvThrViUsedReallocs OBJECT-TYPE
	SYNTAX INTEGER {
	false(1),
	true(2),
	unknown(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Used Reallocated Sectors Threshold Has Been Violated.

This is used to indicate whether the number of used sectors of
the reallocation area for a physical drive has ever exceeded
the maximum allowable threshold.

The valid values are:

false (1)
Indicates that the Used Reallocated Sectors object
(cpqFcaPhyDrvUsedReallocs) value has not exceeded
the maximum threshold (cpqFcaPhyDrvThrUsedReallocs).

true (2)
Indicates that the Used Reallocated Sectors object
(cpqFcaPhyDrvUsedReallocs) value has exceeded
the maximum threshold (cpqFcaPhyDrvThrUsedReallocs).

unknown (3)
The agent is unable to determine if the drive has a
threshold violation."
	::= { cpqFcaPhyDrvThrEntry 8 }


cpqFcaPhyDrvThrViSpinupTime OBJECT-TYPE
	SYNTAX INTEGER {
	false(1),
	true(2),
	unknown(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Spin up Time in tenths of seconds Threshold Has Been Violated.

This is used to indicate whether the time it took for a physical
drive to spin up to full speed has ever exceeded the maximum
allowable threshold.

The valid values are:

false (1)
Indicates that the Spin up Time object (cpqFcaPhyDrvSpinupTime)
value has not exceeded the maximum threshold
(cpqFcaPhyDrvThrSpinupTime).

true (2)
Indicates that the Spin up Time object (cpqFcaPhyDrvSpinupTime)
value has exceeded the maximum threshold
(cpqFcaPhyDrvThrSpinupTime).

unknown (3)
The agent is unable to determine if the drive has a
threshold violation."
	::= { cpqFcaPhyDrvThrEntry 9 }


cpqFcaPhyDrvThrViFunctTest1 OBJECT-TYPE
	SYNTAX INTEGER {
	false(1),
	true(2),
	unknown(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Functional Test 1 Threshold Has Been Violated.

This is used to indicate whether the percentage value returned
from Functional Test 1 has every dropped below the allowable
threshold for that test.

The valid values are:

false (1)
Indicates that the Functional Test 1 object
(cpqFcaPhyDrvFunctTest1) value has not fallen below the
minimum threshold (cpqFcaPhyDrvThrFunctTest1).

true (2)
Indicates that the Functional Test 1 object
(cpqFcaPhyDrvFunctTest1) value has fallen below
the minimum threshold (cpqFcaPhyDrvThrFunctTest1).

unknown (3)
The agent is unable to determine if the drive has a
threshold violation."
	::= { cpqFcaPhyDrvThrEntry 10 }


cpqFcaPhyDrvThrViFunctTest2 OBJECT-TYPE
	SYNTAX INTEGER {
	false(1),
	true(2),
	unknown(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Functional Test 2 Threshold Has Been Violated.

This is used to indicate whether the percentage value returned
from Functional Test 2 has every dropped below the allowable
threshold for that test.

The valid values are:

false (1)
Indicates that the Functional Test 2 object
(cpqFcaPhyDrvFunctTest2) value has not fallen below
the minimum threshold (cpqFcaPhyDrvThrFunctTest2).

true (2)
Indicates that the Functional Test 2 object
(cpqFcaPhyDrvFunctTest2) value has fallen below
the minimum threshold (cpqFcaPhyDrvThrFunctTest2).

unknown (3)
The agent is unable to determine if the drive has a
threshold violation."
	::= { cpqFcaPhyDrvThrEntry 11 }


cpqFcaPhyDrvThrViFunctTest3 OBJECT-TYPE
	SYNTAX INTEGER {
	false(1),
	true(2),
	unknown(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Functional Test 3 Threshold Has Been Violated.

This is used to indicate whether the percentage value returned
from Functional Test 3 has every dropped below the allowable
threshold for that test.

The valid values are:

false (1)
Indicates that the Functional Test 3 object
(cpqFcaPhyDrvFunctTest3) value has not fallen below
the minimum threshold (cpqFcaPhyDrvThrFunctTest3).

true (2)
Indicates that the Functional Test 3 object
(cpqFcaPhyDrvFunctTest3) value has fallen below
the minimum threshold (cpqFcaPhyDrvThrFunctTest3).

unknown (3)
The agent is unable to determine if the drive has a
threshold violation."
	::= { cpqFcaPhyDrvThrEntry 12 }


cpqFcaHostCntlrTable OBJECT-TYPE
	SYNTAX SEQUENCE OF CpqFcaHostCntlrEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Host Controller Table."
	::= { cpqFcaHostCntlr 1 }


cpqFcaHostCntlrEntry OBJECT-TYPE
	SYNTAX CpqFcaHostCntlrEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Array Controller Entry."
	INDEX { cpqFcaHostCntlrIndex  }

	::= { cpqFcaHostCntlrTable 1 }

cpqFcaHostCntlrEntry ::=
	SEQUENCE {
		cpqFcaHostCntlrIndex INTEGER,
		cpqFcaHostCntlrSlot INTEGER,
		cpqFcaHostCntlrModel INTEGER,
		cpqFcaHostCntlrStatus INTEGER,
		cpqFcaHostCntlrCondition INTEGER,
		cpqFcaHostCntlrWorldWideName DisplayString,
		cpqFcaHostCntlrStorBoxList OCTET STRING,
		cpqFcaHostCntlrOverallCondition INTEGER,
		cpqFcaHostCntlrTapeCntlrList OCTET STRING,
		cpqFcaHostCntlrSerialNumber DisplayString,
		cpqFcaHostCntlrHwLocation DisplayString,
		cpqFcaHostCntlrWorldWidePortName DisplayString,
		cpqFcaHostCntlrFirmwareVersion DisplayString,
		cpqFcaHostCntlrOptionRomVersion DisplayString
		}

cpqFcaHostCntlrIndex OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Host Controller Index.

This value is a logical number whose meaning is OS dependent.
Each physical controller has one unique controller number
associated with it."
	::= { cpqFcaHostCntlrEntry 1 }


cpqFcaHostCntlrSlot OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Host Controller Slot.

This identifies the physical slot where the Fibre Channel Host
Controller resides in the system.  For example, if this value is
three, the controller is located in slot three of your computer.
If the slot cannot be determined, the value is set to 255."
	::= { cpqFcaHostCntlrEntry 2 }


cpqFcaHostCntlrModel OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	fchc-p(2),
	fchc-e(3),
	fchc64(4),
	sa-sam(5),
	fca-2101(6),
	sw64-33(7),
	fca-221x(8),
	dpfcmc(9),
	fca-2404(10),
	fca-2214(11),
	a7298a(12),
	fca-2214dc(13),
	a6826a(14),
	fcmcG3(15),
	fcmcG4(16),
	ab46xa(17),
	fc-generic(18),
	fca-1143(19),
	fca-1243(20),
	fca-2143(21),
	fca-2243(22),
	fca-1050(23),
	fca-lpe1105(24),
	fca-qmh2462(25),
	fca-1142sr(26),
	fca-1242sr(27),
	fca-2142sr(28),
	fca-2242sr(29),
	fcmc20pe(30),
	fca-81q(31),
	fca-82q(32),
	fca-qmh2562(33),
	fca-81e(34),
	fca-82e(35),
	fca-1205(36)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Host Controller Model.

The type of controller card.  The valid types are:

Other  (1)
You may need to upgrade your driver software and\or instrument
agent(s).  You have a drive array controller in the system
that the instrument agent does not recognize.

fchc-p (2)
Compaq StorageWorks Fibre Channel Host Bus Adapter/P.

fchc-e (3)
Compaq StorageWorks Fibre Channel Host Bus Adapter/E.

fchc64 (4)
Compaq StorageWorks 64-Bit/66-Mhz Fibre Host Bus Adapter.

sa-sam(5)
Compaq Smart Array, SAN Access Module.

fca-2101(6)
FCA-2101

sw64-33(7)
Compaq StorageWorks 64bit/33Mhz PCI to Fibre Channel HBA.

fca-221x(8)
FCA-221x

dpfcmc(9)
Dual Port Fibre Channel Mezzanine Card (2 Gb) for BL20Gp2 G2.

fca-2404(10)
PCI-X 2Gb FCA2404 Fibre Channel HBA

fca-2214(11)
PCI-X 2Gb FCA2214 Fibre Channel HBA

a7298a(12)
PCI-X 2Gb A7298A Fibre Channel HBA

fca-2214dc(13)
PCI-X 2Gb FCA2214DC Fibre Channel HBA

a6826a(14)
PCI-X Dual Channel 2GB A6826A Fibre Channel HBA

fcmcG3(15)
Fibre Channel Mezzaine Card G3, BL3x p Series

fcmcG4(16)
Fibre Channel Mezzaine Card G4, BL2x p Series

ab46xa(17)
PCI-X 2GB AB466A/AB467A Fibre Channel HBA

fc-generic(18)
Fibre Channel HBA

fca-1143(19)
HP FC1143 4Gb PCI-X 2.0 HBA

fca-1243(20)
HP FC1243 4Gb PCI-X 2.0 DC HBA

fca-2143(21)
HP FC2143 4Gb PCI-X 2.0 HBA

fca-2243(22)
HP FC2243 4Gb PCI-X 2.0 DC HBA

fca-1050(23)
HP StorageWorks 1050 HBA

fca-lpe1105(24)
Emulex LPe1105-HP 4Gb FC HBA for HP c-Class Blade System

fca-qmh2462(25)
Qlogic QMH2462 4Gb FC HBA for HP c-Class Blade System

fca-1142sr(26)
HP FC1142SR 4Gb PCI-e HBA

fca-1242sr(27)
HP FC1242SR 4Gb PCI-e DC HBA

fca-2142sr(28)
HP FC2142SR 4Gb PCI-e HBA

fca-2242sr(29)
HP FC2242SR 4Gb PCI-e DC HBA

fcmc20pe(30)
Emulex based BL20p Fibre Channel Mezz HBA

fca-81q(31)
HP StorageWorks 81Q 8Gb PCI-e FC HBA

fca-82q(32)
HP StorageWorks 82Q 8Gb PCI-e Dual Port FC HBA 

fca-qmh2562(33)
QLogic QMH2562 8Gb FC HBA for HP BladeSystem c-Class

fca-81e(34)
HP StorageWorks 81E 8Gb PCI-e FC HBA 

fca-82e(35)
HP StorageWorks 82E 8Gb PCI-e Dual Port FC HBA

fca-1205(36)
Emulex LPe 1205-HP 8Gb FC HBA for HP BladeSystem c-Class"
	::= { cpqFcaHostCntlrEntry 3 }


cpqFcaHostCntlrStatus OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	failed(3),
	shutdown(4),
	loopDegraded(5),
	loopFailed(6),
	notConnected(7)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Host Controller Status.

The host controller can be in one of the following states:

Other (1)
The agent is unable to determine the status of the host
controller.

Ok (2)
Indicates that the host controller is in normal operation mode.

Failed (3)
Indicates that the host controller has failed and should be
replaced.

Shutdown (4)
Indicates that the host controller has been shutdown.

LoopDegraded (5)
Indicates that the fibre channel connection is degraded.

LoopFailed (6)
Indicates that the fibre channel connection is failed.

NotConnected (7)
Indicates that the fibre channel port is not connected or the
device to which it is connected is powered down."
	::= { cpqFcaHostCntlrEntry 4 }


cpqFcaHostCntlrCondition OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	degraded(3),
	failed(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Host Controller Condition.

This value represents the condition of this controller."
	::= { cpqFcaHostCntlrEntry 5 }


cpqFcaHostCntlrWorldWideName OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..16))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Host Controller World Wide Node Name.

This value can be used to further identify a particular
controller.  If the world wide node name is not supported,
the agent will return a NULL string."
	::= { cpqFcaHostCntlrEntry 6 }


cpqFcaHostCntlrStorBoxList OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Host Controller Storage Box List.

This lists the storage boxes which are associated with this
host controller. These are the same IDs which can be used as
indices into the storage box table. Each 2 bytes of the
string is an index."
	::= { cpqFcaHostCntlrEntry 7 }


cpqFcaHostCntlrOverallCondition OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	degraded(3),
	failed(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Host Controller Overall Condition.

This value represents the overall condition of this controller,
and any associated storage boxes."
	::= { cpqFcaHostCntlrEntry 8 }


cpqFcaHostCntlrTapeCntlrList OBJECT-TYPE
	SYNTAX OCTET STRING
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Host Controller Tape Controller List.

This lists the tape controllers which are associated with this
host controller. These are the same IDs which can be used as
indices into the tape controller table. Each 2 bytes of the
string is an index."
	::= { cpqFcaHostCntlrEntry 9 }


cpqFcaHostCntlrSerialNumber OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..128))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Host Controller Serial Number.

This value can be used to further identify a particular
controller.  If the serial number is not supported, the agent
will return a NULL string."
	::= { cpqFcaHostCntlrEntry 10 }


cpqFcaHostCntlrHwLocation OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..255))
	ACCESS read-only
	STATUS obsolete
	DESCRIPTION "A text description of the hardware location, on complex
multi SBB hardware only, for the controller.
A NULL string indicates that the hardware location could not
be determined or is irrelevant."
	::= { cpqFcaHostCntlrEntry 11 }


cpqFcaHostCntlrWorldWidePortName OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..16))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Host Controller World Wide Port Name.

This value can be used to further identify a particular
controller.  If the world wide port name is not supported,
the agent will return a NULL string."
	::= { cpqFcaHostCntlrEntry 12 }


cpqFcaHostCntlrFirmwareVersion OBJECT-TYPE
	SYNTAX DisplayString
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Host Controller Firmware Version.

This shows the host controller firmware version number.
If the firmware version number is not supported, the agent
will return a NULL string."
	::= { cpqFcaHostCntlrEntry 13 }


cpqFcaHostCntlrOptionRomVersion OBJECT-TYPE
	SYNTAX DisplayString
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Host Controller Option ROM Version.

This shows the host controller option ROM version number.
If the option ROM version number is not supported, the agent
will return a NULL string."
	::= { cpqFcaHostCntlrEntry 14 }


cpqExtArrRsrcVolTable OBJECT-TYPE
	SYNTAX SEQUENCE OF CpqExtArrRsrcVolEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Resource Volume Table.

A table of snapshot resource volume entries."
	::= { cpqExtArrRsrcVol 1 }


cpqExtArrRsrcVolEntry OBJECT-TYPE
	SYNTAX CpqExtArrRsrcVolEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Resource Volume Entry.

A snapshot resource volume entry."
	INDEX { cpqExtArrRsrcVolBoxIndex , cpqExtArrRsrcVolIndex }

	::= { cpqExtArrRsrcVolTable 1 }

cpqExtArrRsrcVolEntry ::=
	SEQUENCE {
		cpqExtArrRsrcVolBoxIndex INTEGER,
		cpqExtArrRsrcVolIndex INTEGER,
		cpqExtArrRsrcVolActiveInstances INTEGER,
		cpqExtArrRsrcVolDisabledInstances INTEGER,
		cpqExtArrRsrcVolAllowCreation INTEGER,
		cpqExtArrRsrcVolVolumeId DisplayString,
		cpqExtArrRsrcVolSourceVolumeId DisplayString,
		cpqExtArrRsrcVolTotalSpace Counter,
		cpqExtArrRsrcVolFreeActiveSpace Counter,
		cpqExtArrRsrcVolFreeNewSpace Counter,
		cpqExtArrRsrcVolStatus INTEGER
		}

cpqExtArrRsrcVolBoxIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Resource Volume Storage Box Index.

This is the index of the storage box that contains this snapshot
resource volume."
	::= { cpqExtArrRsrcVolEntry 1 }


cpqExtArrRsrcVolIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Resource Volume Index.

This index maps the snapshot resource volume to its associated
logical drive (cpqFcaLogDrvIndex)."
	::= { cpqExtArrRsrcVolEntry 2 }


cpqExtArrRsrcVolActiveInstances OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Resource Volume Active Instances.

This is the number of active snapshot instances on this snapshot
resource volume."
	::= { cpqExtArrRsrcVolEntry 3 }


cpqExtArrRsrcVolDisabledInstances OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Resource Volume Disabled Instances.

This is the number of disabled snapshot instances on this
snapshot resource volume."
	::= { cpqExtArrRsrcVolEntry 4 }


cpqExtArrRsrcVolAllowCreation OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	allowed(2),
	notAllowed(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Resource Volume Allow Snapshot Creation.

other (1)
The agent is unable to determine if snapshot creation is
allowed.

allowed (2)
Indicates that snapshot creation is allowed for this resource
volume.

notAllowed (3)
Indicates that snapshot creation is not allowed for this
resource volume."
	::= { cpqExtArrRsrcVolEntry 5 }


cpqExtArrRsrcVolVolumeId OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..32))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Resource Volume Id.

This is the snapshot resource volume id.  It can be used for
identification purposes."
	::= { cpqExtArrRsrcVolEntry 6 }


cpqExtArrRsrcVolSourceVolumeId OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..32))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Resource Volume Source Volume Id.

This is the snapshot resource volume source resource volume id.
It can be used for identification purposes."
	::= { cpqExtArrRsrcVolEntry 7 }


cpqExtArrRsrcVolTotalSpace OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Resource Volume Total Space.

This is total amount (megabytes) of resource pool space.  If the
value cannot be determined, 4,294,967,295 is returned."
	::= { cpqExtArrRsrcVolEntry 8 }


cpqExtArrRsrcVolFreeActiveSpace OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Resource Volume Free Active Space.

This is the amount of free space (megabytes) available for the
current active snapshot.  If the value cannot be determined,
4,294,967,295 is returned."
	::= { cpqExtArrRsrcVolEntry 9 }


cpqExtArrRsrcVolFreeNewSpace OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Resource Volume Free New Space.

This is the amount of free space (megabytes) available for new
snapshot creation.  If the value cannot be determined,
4,294,967,295 is returned."
	::= { cpqExtArrRsrcVolEntry 10 }


cpqExtArrRsrcVolStatus OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	unknownFailure(3),
	resourceVolDisconnected(4),
	sourceVolNotLocated(5),
	resourceVolNotLocated(6),
	sourceVolFailed(7),
	resourceVolFailed(8),
	sourceVolNotAvail(9),
	resourceVolNotAvail(10),
	resourceVolObsolete(11),
	resourceVolObsoleteFailed(12)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Resource Volume Status.

The resource volume can be in one of the following states:

other (1)
The agent is unable to determine the status of the resource
volume.

ok (2)
Indicates that the resource volume is in normal operation mode.

unknownFailure (3)
Indicates that an unknown failure has occurred.

resourceVolDisconnected (4)
Indicates that the resource volume has disconnected from the
source volume.

sourceVolNotLocated (5)
Indicates that the resource volume could not locate the source
volume.

resourceVolNotLocated (6)
Indicates that the source volume could not locate the resource
volume.

sourceVolFailed (7)
Indicates that the source volume has failed.

resourceVolFailed (8)
Indicates that the resource volume has failed.

sourceVolNotAvail (9)
Indicates that the source volume is not available.

resourceVolNotAvail (10)
Indicates that the resource volume is not available.

resourceVolObsolete (11)
Indicates that the resource volume is obsolete.

resourceVolObsoleteFailed (12)
Indicates that the resource volume is obsolete and failed."
	::= { cpqExtArrRsrcVolEntry 11 }


cpqExtArrSnapshotTable OBJECT-TYPE
	SYNTAX SEQUENCE OF CpqExtArrSnapshotEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Table.

A table of snapshot entries."
	::= { cpqExtArrSnapshot 1 }


cpqExtArrSnapshotEntry OBJECT-TYPE
	SYNTAX CpqExtArrSnapshotEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Entry.

A snapshot entry."
	INDEX { cpqExtArrSnapshotBoxIndex , cpqExtArrSnapshotRsrcVolIndex, cpqExtArrSnapshotIndex }

	::= { cpqExtArrSnapshotTable 1 }

cpqExtArrSnapshotEntry ::=
	SEQUENCE {
		cpqExtArrSnapshotBoxIndex INTEGER,
		cpqExtArrSnapshotRsrcVolIndex INTEGER,
		cpqExtArrSnapshotIndex INTEGER,
		cpqExtArrSnapshotInstance INTEGER,
		cpqExtArrSnapshotUsedSpace Counter,
		cpqExtArrSnapshotDateTime OCTET STRING,
		cpqExtArrSnapshotType INTEGER,
		cpqExtArrSnapshotMounted INTEGER,
		cpqExtArrSnapshotAccess INTEGER
		}

cpqExtArrSnapshotBoxIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Storage Box Index.

This is the index of the storage box that contains this snapshot."
	::= { cpqExtArrSnapshotEntry 1 }


cpqExtArrSnapshotRsrcVolIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Resource Volume Index.

This is the index of the snapshot resource volume that contains
this snapshot."
	::= { cpqExtArrSnapshotEntry 2 }


cpqExtArrSnapshotIndex OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Index.

This is a unique index for this snapshot."
	::= { cpqExtArrSnapshotEntry 3 }


cpqExtArrSnapshotInstance OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Instance.

This is the snapshot instance returned from the controller."
	::= { cpqExtArrSnapshotEntry 4 }


cpqExtArrSnapshotUsedSpace OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Used Space.

This is the total amount of space (megabytes) used by this
snapshot instance.  If the value cannot be determined,
4,294,967,295 is returned."
	::= { cpqExtArrSnapshotEntry 5 }


cpqExtArrSnapshotDateTime OBJECT-TYPE
	SYNTAX OCTET STRING (SIZE(7))
	ACCESS read-only
	STATUS optional
	DESCRIPTION "External Array Snapshot Creation Date and Time.

field  octets  contents                  range
=====  ======  =======                  =====
1      1-2   year                      0..65536
2       3    month                     1..12
3       4    day                       1..31
4       5    hour                      0..23
5       6    minute                    0..59
6       7    second                    0..60
(use 60 for leap-second)


This field will be set to year = 0 if the agent cannot provide
the snapshot creation date.  The year field is set with the most
significant octet first."
	::= { cpqExtArrSnapshotEntry 6 }


cpqExtArrSnapshotType OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	cow(2)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Type.

other (1)
The agent is unable to determine the snapshot type.

cow (2)
Indicates that the snapshot type is copy on write."
	::= { cpqExtArrSnapshotEntry 7 }


cpqExtArrSnapshotMounted OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	mounted(2),
	notMounted(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Mounted.

other (1)
The agent is unable to determine if the snapshot is mounted.

mounted (2)
Indicates that the snapshot is mounted and available to the
operating system.

notMounted (3)
Indicates that the snapshot is not mounted."
	::= { cpqExtArrSnapshotEntry 8 }


cpqExtArrSnapshotAccess OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	readWrite(2),
	readOnly(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Array Snapshot Access.

other (1)
The agent is unable to determine if the snapshot is mounted.

readWrite (2)
Indicates that the snapshot is read-write.

readOnly (3)
Indicates that the snapshot is read-only."
	::= { cpqExtArrSnapshotEntry 9 }


cpqFcTapeCntlrTable OBJECT-TYPE
	SYNTAX SEQUENCE OF CpqFcTapeCntlrEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Controller Table."
	::= { cpqFcTapeCntlr 1 }


cpqFcTapeCntlrEntry OBJECT-TYPE
	SYNTAX CpqFcTapeCntlrEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Controller Entry."
	INDEX { cpqFcTapeCntlrIndex  }

	::= { cpqFcTapeCntlrTable 1 }

cpqFcTapeCntlrEntry ::=
	SEQUENCE {
		cpqFcTapeCntlrIndex INTEGER,
		cpqFcTapeCntlrStatus INTEGER,
		cpqFcTapeCntlrCondition INTEGER,
		cpqFcTapeCntlrOverallCondition INTEGER,
		cpqFcTapeCntlrWWN DisplayString,
		cpqFcTapeCntlrFWRev DisplayString,
		cpqFcTapeCntlrType INTEGER,
		cpqFcTapeCntlrModel DisplayString,
		cpqFcTapeCntlrSerialNumber DisplayString
		}

cpqFcTapeCntlrIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Controller Index.

This value is a logical number whose meaning is OS dependent.
Each tape controller has one unique controller number associated
with it."
	::= { cpqFcTapeCntlrEntry 1 }


cpqFcTapeCntlrStatus OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	offline(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Controller Status.

The following values are defined:

other(1)
The agent is unable to determine the status of the tape
controller.

ok(2)
The tape controller is OK.

offline(3)
The tape controller is offline.  The tape controller may be powered
off or there may be a cabling problem."
	::= { cpqFcTapeCntlrEntry 2 }


cpqFcTapeCntlrCondition OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	degraded(3),
	failed(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Controller Condition.

This value represents the condition of the tape controller."
	::= { cpqFcTapeCntlrEntry 3 }


cpqFcTapeCntlrOverallCondition OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	degraded(3),
	failed(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Controller Index.

This value represents the overall condition of the tape controller
and any associated tape libraries."
	::= { cpqFcTapeCntlrEntry 4 }


cpqFcTapeCntlrWWN OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..16))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Controller World Wide Name.

This value can be used to further identify a particular tape
controller.  If the world wide name is not supported, the
agent will return a NULL string."
	::= { cpqFcTapeCntlrEntry 5 }


cpqFcTapeCntlrFWRev OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..8))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Controller Firmware Revision.

This shows the tape controller firmware revision number.
If the firmware revision number is not supported, the agent will
return a NULL string."
	::= { cpqFcTapeCntlrEntry 6 }


cpqFcTapeCntlrType OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	fiberTape(2),
	modularDataRouter(3),
	extended(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Controller Type.

The following values are defined:

other(1)
The agent is unable to determine if the type of the tape
controller.

fiberTape(2)
The original Fibre Channel Tape Controller.

modularDataRouter(3)
The Compaq Modular Data Router.

extended(4)
The tape controller is described by cpqFcTapeCntlrModel."
	::= { cpqFcTapeCntlrEntry 7 }


cpqFcTapeCntlrModel OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..128))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Controller Model.

This is the model name of the tape controller.  It can be used
for identification purposes.  If the model name can not be
determined, the agent will return a NULL string."
	::= { cpqFcTapeCntlrEntry 8 }


cpqFcTapeCntlrSerialNumber OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..64))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Controller Serial Number.

This is the serial number of the tape controller.  It can be
used for identification purposes.  If the serial number can not
be determined, the agent will return a NULL string."
	::= { cpqFcTapeCntlrEntry 9 }


cpqFcTapeLibraryTable OBJECT-TYPE
	SYNTAX SEQUENCE OF CpqFcTapeLibraryEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Library Table."
	::= { cpqFcTapeLibrary 1 }


cpqFcTapeLibraryEntry OBJECT-TYPE
	SYNTAX CpqFcTapeLibraryEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Library Entry."
	INDEX { cpqFcTapeLibraryCntlrIndex , cpqFcTapeLibraryScsiBus, cpqFcTapeLibraryScsiTarget, cpqFcTapeLibraryScsiLun }

	::= { cpqFcTapeLibraryTable 1 }

cpqFcTapeLibraryEntry ::=
	SEQUENCE {
		cpqFcTapeLibraryCntlrIndex INTEGER,
		cpqFcTapeLibraryScsiBus INTEGER,
		cpqFcTapeLibraryScsiTarget INTEGER,
		cpqFcTapeLibraryScsiLun INTEGER,
		cpqFcTapeLibrarySerialNumber DisplayString,
		cpqFcTapeLibraryModel DisplayString,
		cpqFcTapeLibraryFWRev DisplayString,
		cpqFcTapeLibraryStatus INTEGER,
		cpqFcTapeLibraryDoorStatus INTEGER,
		cpqFcTapeLibraryCondition INTEGER,
		cpqFcTapeLibraryOverallCondition INTEGER,
		cpqFcTapeLibraryLastError INTEGER,
		cpqFcTapeLibraryStatHours Counter,
		cpqFcTapeLibraryStatMoves Counter,
		cpqFcTapeLibraryDriveList OCTET STRING,
		cpqFcTapeLibraryLocation DisplayString,
		cpqFcTapeLibraryTemperature INTEGER,
		cpqFcTapeLibraryRedundancy INTEGER,
		cpqFcTapeLibraryHotSwap INTEGER
		}

cpqFcTapeLibraryCntlrIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Library Controller Index.

This value is a logical number whose meaning is OS dependent.
Each tape controller has one unique controller number associated
with it."
	::= { cpqFcTapeLibraryEntry 1 }


cpqFcTapeLibraryScsiBus OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Library Scsi Bus.

The bus index indicates to which SCSI bus instance on a tape
controller this table entry belongs."
	::= { cpqFcTapeLibraryEntry 2 }


cpqFcTapeLibraryScsiTarget OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Library Scsi Target.

The target index indicates to which SCSI ID on a tape controller
SCSI bus this table entry belongs."
	::= { cpqFcTapeLibraryEntry 3 }


cpqFcTapeLibraryScsiLun OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Library Scsi Lun.

The Lun index indicates to which logical unit on a SCSI ID on a
tape controller SCSI bus this table entry belongs."
	::= { cpqFcTapeLibraryEntry 4 }


cpqFcTapeLibrarySerialNumber OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..64))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Library Serial Number.

This is the unit serial number for the tape library.  It can be
used for identification purposes."
	::= { cpqFcTapeLibraryEntry 5 }


cpqFcTapeLibraryModel OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..128))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Library Model.

This is the model name of the tape library.  It can be used for
identification purposes."
	::= { cpqFcTapeLibraryEntry 6 }


cpqFcTapeLibraryFWRev OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..8))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Firmware Revision.

This is firmware revision level of the tape library.  It can be
used for identification purposes."
	::= { cpqFcTapeLibraryEntry 7 }


cpqFcTapeLibraryStatus OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	degraded(3),
	failed(4),
	offline(5)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Library Status.

The library can be in one of the following states:

other(1)
The library is in a state other than one of those listed
below.

ok(2)
Indicates that the library is in normal operation mode.
No user action is necessary.

degraded(3)
Indicates that the library has degraded in some manner.

failed(4)
Indicates that the library has failed and can no longer
return data.  The library may need to be replaced.

offline(5)
Indicates that the Insight Agents can no longer communicate with
the library.  This could be caused by a cabling problem or the
library may be powered off."
	::= { cpqFcTapeLibraryEntry 8 }


cpqFcTapeLibraryDoorStatus OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	notSupported(2),
	closed(3),
	open(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Library Door Status.

The door can be in one of the following states:

other(1)
The door is in a state other than one of those listed
below.

notSupported(2)
The door status is not supported by the device.

closed(3)
The door is closed.

open(4)
The door is open."
	::= { cpqFcTapeLibraryEntry 9 }


cpqFcTapeLibraryCondition OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Library Condition.

This value represents the overall condition of the tape
library."
	::= { cpqFcTapeLibraryEntry 10 }


cpqFcTapeLibraryOverallCondition OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Library Overall Condition.

This value represents the overall condition of the tape library
and any associated tape drives."
	::= { cpqFcTapeLibraryEntry 11 }


cpqFcTapeLibraryLastError OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Library Last Error.

This is the last error returned by the tape library."
	::= { cpqFcTapeLibraryEntry 12 }


cpqFcTapeLibraryStatHours OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Library Stat Hours.

This is the number of hours of operation for the library."
	::= { cpqFcTapeLibraryEntry 13 }


cpqFcTapeLibraryStatMoves OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Library Stat Moves.

This is the number of tape moves for the library loader arm."
	::= { cpqFcTapeLibraryEntry 14 }


cpqFcTapeLibraryDriveList OBJECT-TYPE
	SYNTAX OCTET STRING (SIZE(0..60))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Library Tape Drive List.

This is a data structure containing the list of tape drive ids
that are present in this library.  The format is:

field  octets  contents
=====  ======  ========
1     1-2    Tape controller index
2      3     Tape drive SCSI bus
3      4     Tape drive SCSI target
4      5     Tape drive SCSI logical unit number

These 5 octets are repeated for each drive in the library.  For n
tape drives in a library, the string is 5 * n octets long."
	::= { cpqFcTapeLibraryEntry 15 }


cpqFcTapeLibraryLocation OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..128))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Library Location.

This is the location of the tape library."
	::= { cpqFcTapeLibraryEntry 16 }


cpqFcTapeLibraryTemperature OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	notSupported(2),
	ok(3),
	safeTempExceeded(4),
	maxTempExceeded(5)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Library Temperature Status.

The library temperature can be in one of the following states:

other(1)
The library temperature status is unknown.

notSupported(2)
Indicates that the library cannot detect or report temperature.

ok(3)
Indicates that the temperature of the library is within normal
operating limits.

safeTempExceeded(4)
Indicates that the temperature of the library has exceeded the
safe operational temperature. The library will continue to
operate under this warning.

maxTempExceeded(5)
Indicates that the temperature of the library has exceeded
normal operating limits to the extent that the library may
no longer function."
	::= { cpqFcTapeLibraryEntry 17 }


cpqFcTapeLibraryRedundancy OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	notSupported(2),
	capable(3),
	notCapable(4),
	active(5)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Library Redundancy Status.

Redundancy status denotes the presence of internal redundant
components such as fans, power supplies, etc. The library
redundancy can be in one of the following states:

other(1)
The library redundancy status is unknown.

notSupported(2)
Indicates that the library cannot detect or report redundancy
status.

capable(3)
Indicates that the library is capable of detecting and reporting
redundant components but there are not enough redundant units
installed to make redundancy active.

notCapable(4)
Indicates that the library is capable of detecting and reporting
redundant components but there are no components that support
redundancy.

active(5)
Indicates that the library is capable of detecting and reporting
redundant components, there are enough redundant units installed,
and redundancy is active."
	::= { cpqFcTapeLibraryEntry 18 }


cpqFcTapeLibraryHotSwap OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	notSupported(2),
	capable(3),
	notCapable(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Library Hot Swap Status.

Hot swap status denotes the presence of hot swappable internal
components such as drives, fans, power supplies, etc. The library
hot swap status can be in one of the following states:

other(1)
The library hot swap status is unknown.

notSupported(2)
Indicates that the library cannot detect or report hot swap
status.

capable(3)
Indicates that the library is capable of detecting and reporting
hot swappable internal components and has at least one hot
swappable component.

notCapable(4)
Indicates that the library is capable of detecting and reporting
hot swappable internal components but there are no hot swappable
components installed."
	::= { cpqFcTapeLibraryEntry 19 }


cpqFcTapeDriveTable OBJECT-TYPE
	SYNTAX SEQUENCE OF CpqFcTapeDriveEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Drive Table."
	::= { cpqFcTapeDrive 1 }


cpqFcTapeDriveEntry OBJECT-TYPE
	SYNTAX CpqFcTapeDriveEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Drive Entry."
	INDEX { cpqFcTapeDriveCntlrIndex , cpqFcTapeDriveScsiBus, cpqFcTapeDriveScsiTarget, cpqFcTapeDriveScsiLun }

	::= { cpqFcTapeDriveTable 1 }

cpqFcTapeDriveEntry ::=
	SEQUENCE {
		cpqFcTapeDriveCntlrIndex INTEGER,
		cpqFcTapeDriveScsiBus INTEGER,
		cpqFcTapeDriveScsiTarget INTEGER,
		cpqFcTapeDriveScsiLun INTEGER,
		cpqFcTapeDriveSerialNumber DisplayString,
		cpqFcTapeDriveModel DisplayString,
		cpqFcTapeDriveFWRev DisplayString,
		cpqFcTapeDriveType INTEGER,
		cpqFcTapeDriveFWSubtype INTEGER,
		cpqFcTapeDriveStatus INTEGER,
		cpqFcTapeDriveCleanReq INTEGER,
		cpqFcTapeDriveCleanTapeRepl INTEGER,
		cpqFcTapeDriveCondition INTEGER,
		cpqFcTapeDriveCleanTapeCount INTEGER,
		cpqFcTapeDriveLibraryDrive INTEGER,
		cpqFcTapeDriveLocation DisplayString,
		cpqFcTapeDriveHotPlug INTEGER,
		cpqFcTapeDriveBay INTEGER,
		cpqFcTapeDriveCurrentWidth INTEGER,
		cpqFcTapeDriveCurrentSpeed INTEGER
		}

cpqFcTapeDriveCntlrIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Controller Index.

This value is a logical number whose meaning is OS dependent.
For tape controller has one unique controller number associated
with it."
	::= { cpqFcTapeDriveEntry 1 }


cpqFcTapeDriveScsiBus OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Scsi Bus.

The bus index indicates to which SCSI bus instance on a tape
controller this table entry belongs."
	::= { cpqFcTapeDriveEntry 2 }


cpqFcTapeDriveScsiTarget OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Scsi Target.

The target index indicates to which SCSI ID on a tape controller
SCSI bus this table entry belongs."
	::= { cpqFcTapeDriveEntry 3 }


cpqFcTapeDriveScsiLun OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Scsi Lun.

The Lun index indicates to which logical unit on a SCSI ID on a
tape controller SCSI bus this table entry belongs."
	::= { cpqFcTapeDriveEntry 4 }


cpqFcTapeDriveSerialNumber OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..64))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Serial Number.

This is the unit serial number for the tape drive.  It can be
used for identification purposes."
	::= { cpqFcTapeDriveEntry 5 }


cpqFcTapeDriveModel OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..128))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Model.

This is the model name of the tape drive.  It can be used for
identification purposes."
	::= { cpqFcTapeDriveEntry 6 }


cpqFcTapeDriveFWRev OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..8))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Firmware Revision.

This is firmware revision level of the tape drive.  It can be
used for identification purposes."
	::= { cpqFcTapeDriveEntry 7 }


cpqFcTapeDriveType OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	cpqDlt35-70(2)
	}
	ACCESS read-only
	STATUS optional
	DESCRIPTION "External Tape Drive Type.

This is the drive type.  It can be used for identification
purposes.  The following values are defined:

other(1)       The management agent does not recognize this model.
You may need to upgrade your software.

cpqDlt35-70(2) Compaq 35/70-Gigabyte DLT Tape Drive."
	::= { cpqFcTapeDriveEntry 8 }


cpqFcTapeDriveFWSubtype OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Firmware Subtype.

This is used to differentiate the firmware versions
which have the same tape drive type (as specified by
cpqFcTapeDriveType).  Tape drives will contain a value
of 1 for this variable when they first ship, and this value
will be incremented if future versions are shipped which
are not firmware compatible with the predecessor.  If the
tape drive does not support this capability, a value of 0
will be returned."
	::= { cpqFcTapeDriveEntry 9 }


cpqFcTapeDriveStatus OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	degraded(3),
	failed(4),
	offline(5),
	missingWasOk(6),
	missingWasOffline(7)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Status.

The tape drive can be in one of the following states:

other(1)
The tape drive is in a state other than one of those listed
below.

ok(2)
Indicates that the tape drive is in normal operation mode.
No user action is necessary.

degraded(3)
Indicates that the tape drive has degraded in some manner.

failed(4)
Indicates that the tape drive has failed and can no longer
return data.  The tape drive may need to be replaced.

offline(5)
Indicates that the agent can no longer communicate with the
tape drive.  This could be caused by a cabling problem or the
tape drive may be powered off.

missingWasOk(6)
Indicates that a tape drive had a status of OK and is no
longer present.  The drive has been removed.

missingWasOffline(7)
Indicates that a tape drive had a status of OFFLINE and is no
longer present.  The drive has been removed."
	::= { cpqFcTapeDriveEntry 10 }


cpqFcTapeDriveCleanReq OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	true(2),
	false(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Cleaning Required.

This is an indication of whether the tape drive heads
require a cleaning session to occur.  If this variable
indicates a need to clean the tape heads, then a cleaning
tape will need to be inserted and run through a cleaning
cycle.

This variable can be in one of the following states:

other(1)
The tape drive does not support monitoring of the cleaning
required status.

true(2)
The tape drive requires a cleaning tape session in order
to clean the heads.

false(3)
The tape drive does not require any cleaning tape session."
	::= { cpqFcTapeDriveEntry 11 }


cpqFcTapeDriveCleanTapeRepl OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	true(2),
	false(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Cleaning Tape Replacement.

This variable is only applicable to autoloader tape drives.
This variable indicates whether the cleaning tape which is
inserted in an autoloader needs to be replaced because its
cleaning capability is exhausted (it is at end of tape).

This variable can be in one of the following states:

other(1)
The tape drive does not support monitoring of the cleaning
tape replacement status.

true(2)
The autoloader tape drive requires a new cleaning tape to
be inserted.

false(3)
The tape drive does not require a new cleaning tape."
	::= { cpqFcTapeDriveEntry 12 }


cpqFcTapeDriveCondition OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Condition.

This value represents the overall condition of the tape drive."
	::= { cpqFcTapeDriveEntry 13 }


cpqFcTapeDriveCleanTapeCount OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Cleaning Tape Count.

This variable is a count from a tape drive of the number of
cleanings done by the tape cleaner last in the drive."
	::= { cpqFcTapeDriveEntry 14 }


cpqFcTapeDriveLibraryDrive OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	true(2),
	false(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Library Drive.

This variable indicates whether or not the tape drive is part
of a tape library.  It can be in one of the following states:

other(1)
Indicates that the storage agent cannot determine if the
tape drive is part of a tape library.

true(2)
The tape drive is part of a tape library.

false(3)
The tape drive is not part of a tape library."
	::= { cpqFcTapeDriveEntry 15 }


cpqFcTapeDriveLocation OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..128))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Location.

This is the location of the tape drive."
	::= { cpqFcTapeDriveEntry 16 }


cpqFcTapeDriveHotPlug OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	hotPlug(2),
	nonHotPlug(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Hot Plug Support Status.

The following values are defined:

other(1)
The agent is unable to determine if this drive
supports hot plug replacement.

hotPlug(2)
The drive supports hot plug replacement.

nonhotPlug(3)
The drive does not support hot plug replacement."
	::= { cpqFcTapeDriveEntry 17 }


cpqFcTapeDriveBay OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Bay.

For drives in a hot plug storage system, this is the bay where
the tape drive is located.  If the value cannot be determined
or is not applicable, the value is set to -1."
	::= { cpqFcTapeDriveEntry 18 }


cpqFcTapeDriveCurrentWidth OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	narrow(2),
	wide16(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Current Width.

The following values are defined:

other(1)
The agent is unable to determine the current negotiated data
transfer width for this drive.

narrow(2)
The negotiated data transfer width for this drive is narrow
(8 data bits).

wide16(3)
The negotiated data transfer width for this drive is wide
(16 data bits)."
	::= { cpqFcTapeDriveEntry 19 }


cpqFcTapeDriveCurrentSpeed OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	asynchronous(2),
	fast(3),
	ultra(4),
	ultra2(5),
	ultra3(6)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "External Tape Drive Current Data Transfer Speed.

The following values are defined:

other(1)
The agent is unable to determine the current negotiated data
transfer speed for this drive.

asynchronous(2)
The negotiated data transfer speed for this drive is
asynchronous.

fast(3)
The negotiated data transfer speed for this drive is 10 million
transfers per second).

ultra(4)
The negotiated data transfer speed for this drive is 20 million
transfers per second.

ultra2(5)
The negotiated data transfer speed for this drive is 40 million
transfers per second.

ultra3(6)
The negotiated data transfer speed for this drive is 80 million
transfers per second."
	::= { cpqFcTapeDriveEntry 20 }


cpqFcTapeCountersTable OBJECT-TYPE
	SYNTAX SEQUENCE OF CpqFcTapeCountersEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Counters Table."
	::= { cpqFcTapeCounters 1 }


cpqFcTapeCountersEntry OBJECT-TYPE
	SYNTAX CpqFcTapeCountersEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Counters Entry."
	INDEX { cpqFcTapeCountersCntlrIndex , cpqFcTapeCountersScsiBus, cpqFcTapeCountersScsiTarget, cpqFcTapeCountersScsiLun }

	::= { cpqFcTapeCountersTable 1 }

cpqFcTapeCountersEntry ::=
	SEQUENCE {
		cpqFcTapeCountersCntlrIndex INTEGER,
		cpqFcTapeCountersScsiBus INTEGER,
		cpqFcTapeCountersScsiTarget INTEGER,
		cpqFcTapeCountersScsiLun INTEGER,
		cpqFcTapeCountersReWrites Counter,
		cpqFcTapeCountersReReads Counter,
		cpqFcTapeCountersTotalErrors Counter,
		cpqFcTapeCountersTotalUncorrectable Counter,
		cpqFcTapeCountersTotalBytes Counter
		}

cpqFcTapeCountersCntlrIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Counters Controller Index.

This value is a logical number whose meaning is OS dependent.
Each tape controller has one unique controller number associated
with it."
	::= { cpqFcTapeCountersEntry 1 }


cpqFcTapeCountersScsiBus OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Counters Scsi Bus.

The bus index indicates to which SCSI bus instance on a tape
controller this table entry belongs."
	::= { cpqFcTapeCountersEntry 2 }


cpqFcTapeCountersScsiTarget OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Counters Scsi Target.

The target index indicates to which SCSI ID on a tape controller
SCSI bus this table entry belongs."
	::= { cpqFcTapeCountersEntry 3 }


cpqFcTapeCountersScsiLun OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Tape Counters Scsi Lun.

The Lun index indicates to which logical unit on a SCSI ID on a
tape controller SCSI bus this table entry belongs."
	::= { cpqFcTapeCountersEntry 4 }


cpqFcTapeCountersReWrites OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Tape Device Re-write count.

This is the number of times blocks had to be re-written to the
device.  This value is maintained since the Tape Hardware Interface
driver was loaded.

Re-write errors may occasionally occur.  If this value should rise
dramatically, you may need to clean the device.  If you continue
to have re-writes, you may have a problem.  Some common causes
include radio frequency interference (RFI) on the bus cables,
bad or missing terminating resisters on the drives or having more
than one device with the same SCSI ID.  Insure the bus cable is
free of obstructions and that the devices on the bus are properly
configured."
	::= { cpqFcTapeCountersEntry 5 }


cpqFcTapeCountersReReads OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Tape Device Re-read count.

This is the number of times blocks had to be re-read from the
device.  This value is maintained since the Tape Hardware Interface
driver was loaded.

Re-read errors may occasionally occur.  If this value should rise
dramatically, you may need to clean the device.  If you continue
to have re-reads, you may have a problem.  Some common causes
include radio frequency interference (RFI) on the bus cables,
bad or missing terminating resisters on the drives or having more
than one device with the same SCSI ID.  Insure the bus cable is
free of obstructions and that the devices on the bus are properly
configured."
	::= { cpqFcTapeCountersEntry 6 }


cpqFcTapeCountersTotalErrors OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Tape Device Total Errors.

This is the total number of read/write errors encountered.
This value is maintained since the Tape Hardware Interface
driver was loaded.

Errors may occasionally occur.  If this value should rise
dramatically, you may need to clean the device.  If you continue
to have errors, you may have a problem.  Some common causes include
radio frequency interference (RFI) on the bus cables, bad or
missing terminating resisters on the drives or having more than
one device with the same SCSI ID.  Insure the bus cable is free
of obstructions and that the devices on the bus are properly
configured."
	::= { cpqFcTapeCountersEntry 7 }


cpqFcTapeCountersTotalUncorrectable OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Tape Device Total Uncorrectable Errors.

This is the total number of read and write errors which could not
be corrected.  This value is maintained since the Tape Hardware
Interface driver was loaded.

Errors may occasionally occur.  If this value should rise
dramatically, you may need to clean the device.  If you continue
to have errors, you may have a problem.  Some common causes include
radio frequency interference (RFI) on the bus cables, bad or
missing terminating resisters on the drives or having more than
one device with the same SCSI ID.  Insure the bus cable is free
of obstructions and that the devices on the bus are properly
configured."
	::= { cpqFcTapeCountersEntry 8 }


cpqFcTapeCountersTotalBytes OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Tape Device Total Bytes.

This is the number total number of bytes read/written to the tape
currently installed in the device.  This value is reset whenever
a new tape is inserted into the device."
	::= { cpqFcTapeCountersEntry 9 }


cpqFcSwitchTable OBJECT-TYPE
	SYNTAX SEQUENCE OF CpqFcSwitchEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Switch Table."
	::= { cpqFcSwitch 1 }


cpqFcSwitchEntry OBJECT-TYPE
	SYNTAX CpqFcSwitchEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Switch Entry."
	INDEX { cpqFcSwitchIndex  }

	::= { cpqFcSwitchTable 1 }

cpqFcSwitchEntry ::=
	SEQUENCE {
		cpqFcSwitchIndex INTEGER,
		cpqFcSwitchLocation INTEGER,
		cpqFcSwitchChassisIndex INTEGER,
		cpqFcSwitchChassisSlot INTEGER,
		cpqFcSwitchWorldWideNodeName DisplayString,
		cpqFcSwitchWorldWidePortName DisplayString,
		cpqFcSwitchIpAddress DisplayString,
		cpqFcSwitchIpGateway DisplayString,
		cpqFcSwitchIpSubnet DisplayString,
		cpqFcSwitchName DisplayString,
		cpqFcSwitchNetworkLinkStatus INTEGER,
		cpqFcSwitchFibreConnectStatus INTEGER,
		cpqFcSwitchFWRev DisplayString
		}

cpqFcSwitchIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Switch Index.

This value is a logical number whose meaning is OS dependent.
Each switch has one unique controller number associated with it."
	::= { cpqFcSwitchEntry 1 }


cpqFcSwitchLocation OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	internal(2),
	external(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Switch Location.

The following values are defined:

other(1)
The agent is unable to determine if the switch is internal or
external to the storage system chassis.

internal(2)
The switch is located in the storage system chassis.

external(3)
The switch is located outside the storage system chassis."
	::= { cpqFcSwitchEntry 2 }


cpqFcSwitchChassisIndex OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Switch Chassis Index.

The chassis index indicates the storage system in which this
switch resides.  If the switch does not reside in a storage
system chassis, then this field is invalid and a value of 65535
will be returned."
	::= { cpqFcSwitchEntry 3 }


cpqFcSwitchChassisSlot OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Switch Chassis Slot.

The chassis slot identifies the physical slot of the storage
system in which this switch resides.  If the switch does not
reside in a storage system chassis, then this field is invalid
and a value of 255 will be returned."
	::= { cpqFcSwitchEntry 4 }


cpqFcSwitchWorldWideNodeName OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..16))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Switch World Wide Node Name.

This value can be used to further identify a particular
controller.  If the world wide node name is not supported, the
agent will return a NULL string."
	::= { cpqFcSwitchEntry 5 }


cpqFcSwitchWorldWidePortName OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..16))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Switch World Wide Port Name.

This value can be used to further identify a particular
controller.  If the world wide port name is not supported, the
agent will return a NULL string."
	::= { cpqFcSwitchEntry 6 }


cpqFcSwitchIpAddress OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..15))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Switch IP Address.

This is the IP address of the switch.  If the IP address is not
supported, the agent will return a NULL string."
	::= { cpqFcSwitchEntry 7 }


cpqFcSwitchIpGateway OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..15))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Switch IP Gateway.

This is the IP gateway of the switch.  If the IP gateway is not
supported, the agent will return a NULL string."
	::= { cpqFcSwitchEntry 8 }


cpqFcSwitchIpSubnet OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..15))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Switch IP Subnet.

This is the IP subnet of the switch.  If the IP subnet is not
supported, the agent will return a NULL string."
	::= { cpqFcSwitchEntry 9 }


cpqFcSwitchName OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..255))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Switch Name.

This is the name of the switch.  If the name is not supported,
the agent will return a NULL string."
	::= { cpqFcSwitchEntry 10 }


cpqFcSwitchNetworkLinkStatus OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	active(2),
	notActive(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Switch Network Link Status.

The following values are defined:

other(1)
The agent is unable to determine the status of the switch
network link.

active(2)
The switch network link is active.

notActive(3)
The switch network link is not active."
	::= { cpqFcSwitchEntry 11 }


cpqFcSwitchFibreConnectStatus OBJECT-TYPE
	SYNTAX INTEGER {
	other(1),
	ok(2),
	offline(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Switch Fibre Channel Connection Status.

The following values are defined:

other(1)
The agent is unable to determine the status of the switch
fibre channel connection.

ok(2)
The switch Fibre Channel connection is OK.

offline(3)
The switch Fibre Channel connection is offline."
	::= { cpqFcSwitchEntry 12 }


cpqFcSwitchFWRev OBJECT-TYPE
	SYNTAX DisplayString (SIZE(0..8))
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Fibre Channel Switch Firmware Revision.

This is firmware revision level of the Fibre channel switch."
	::= { cpqFcSwitchEntry 13 }


cpqFcaLogDrvStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqSsChassisName, cpqSsChassisTime, cpqFcaLogDrvIndex, cpqFcaLogDrvStatus }
      --#SUMMARY "Status is now %d."
      --#ARGUMENTS {5}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#Chassis Name: # $V5V#Logical Drive: # $V6V#Logical Drive Status: #"
      --#TYPE "External Array Logical Drive Status Change (16001)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 6
      --#SEVERITYMAP  "other = CRITICAL, ok = INFORMATIONAL, failed = CRITICAL, unconfigured = MINOR, recovering = INFORMATIONAL, readyForRebuild = INFORMATIONAL, rebuilding = INFORMATIONAL, wrongDrive = CRITICAL, badConnect = CRITICAL, overheating = CRITICAL, shutdown = CRITICAL, expanding = INFORMATIONAL, notAvailable = INFORMATIONAL, queuedForExpansion = INFORMATIONAL, hardError = CRITICAL"
DESCRIPTION "External Array Logical Drive Status Change.  This trap signifies that the agent has detected a change in the status of a External Array logical drive.  The variable cpqFcaLogDrvStatus indicates the current logical drive status.  User Action: If the logical drive status is failed, examine the array for failed drives that need replacement."
      ::= 16001


cpqFcaSpareStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqSsChassisName, cpqSsChassisTime, cpqFcaSpareBusNumber, cpqFcaSpareBay, cpqFcaSpareStatus }
      --#SUMMARY "Spare Status is now %d on bus %d."
      --#ARGUMENTS {6,4}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#Chassis Name: # $V5V#Port: # $V6V#Bay Number: # $V7V#Spare Status: #"
      --#TYPE "External Array Spare Drive Status Change (16002)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 2
DESCRIPTION "External Array Spare Drive Status Change.  This trap signifies that the agent has detected a change in the status of a External Array spare drive.  The variable cpqFcaSpareStatus indicates the current spare drive status.  The variable cpqFcaSpareBusNumber indicates the SCSI bus number associated with this drive.  User Action: If the spare drive status is failed, replace the drive."
      ::= 16002


cpqFcaPhyDrvStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqSsChassisName, cpqSsChassisTime, cpqFcaPhyDrvBusNumber, cpqFcaPhyDrvBay, cpqFcaPhyDrvStatus }
      --#SUMMARY "Status is now %d for a physical drive on bus %d."
      --#ARGUMENTS {6,4}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#Chassis Name: # $V5V#Port: # $V6V#Bay Number: # $V7V#Physical Drive Status: #"
      --#TYPE "External Array Physical Drive Status Change (16003)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 2
DESCRIPTION "External Array Physical Drive Status Change.  This trap signifies that the agent has detected a change in the status of a physical drive.  The variable cpaFcaPhyDrvStatus indicates the current physical drive status.  The variable cpqFcaPhyDrvBusNumber indicates the SCSI bus number associated with this drive.  User Action: If the physical drive status is threshExceeded(4), predictiveFailure(5) or failed(6), replace the drive."
      ::= 16003


cpqFcaAccelStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqSsChassisName, cpqSsChassisTime, cpqFcaAccelBoxIoSlot, cpqFcaAccelStatus }
      --#SUMMARY "Status is now %d."
      --#ARGUMENTS {5}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#Chassis Name: # $V5V#Slot Number: # $V6V#Array Accelerator Status: #"
      --#TYPE "External Array Accelerator Board Status Change (16004)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 6
      --#SEVERITYMAP "other = CRITICAL, invalid = INFORMATIONAL, enabled = INFORMATIONAL, tmpDisabled = CRITICAL, permDisabled = CRITICAL"
DESCRIPTION "External Array Accelerator Board Status Change.  This trap signifies that the agent has detected a change in the cpqFcaAccelStatus of a Array Accelerator Cache Board.  The current status is represented by the variable cpqFcaAccelStatus.  User Action: None."
      ::= 16004


cpqFcaAccelBadDataTrap TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqSsChassisName, cpqSsChassisTime, cpqFcaAccelBoxIoSlot }
      --#SUMMARY "Accelerator lost battery power.  Data Loss possible."
      --#ARGUMENTS {}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "V3V#Chassis Name: # $V5V#Slot Number: #"
      --#TYPE "External Array Accelerator Board Bad Data (16005)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
DESCRIPTION "External Array Accelerator Board Bad Data.  This trap signifies that the agent has detected a Array Accelerator Cache Board that has lost battery power.  If data was being stored in the accelerator memory when the system lost power, that data has been lost.  User Action: Verify that no data has been lost."
      ::= 16005


cpqFcaAccelBatteryFailed TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqSsChassisName, cpqSsChassisTime, cpqFcaAccelBoxIoSlot }
      --#SUMMARY "Battery status is failed."
      --#ARGUMENTS {}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#Chassis Name: # $V5V#Slot Number: #"
      --#TYPE "External Array Accelerator Board Battery Failed (16006)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
DESCRIPTION "External Array Accelerator Board Battery Failed.  This trap signifies that the agent has detected a battery failure associated with the Array Accelerator Cache Board.  User Action: Replace the Accelerator Cache Board."
      ::= 16006


cpqFcaCntlrStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqSsChassisName, cpqSsChassisTime, cpqFcaCntlrBoxIoSlot, cpqFcaCntlrStatus }
      --#SUMMARY "Status is now %d."
      --#ARGUMENTS {5}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#Chassis Name: # $V5V#Slot Number: # $V6V#Controller Status: #"
      --#TYPE "External Array Controller Status Change (16007)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 6
      --#SEVERITYMAP "other = CRITICAL, ok = INFORMATIONAL, failed = CRITICAL, offline = CRITICAL, redundantPathOffline = MAJOR"
DESCRIPTION "External Array Array Controller Status Change.  This trap signifies that the agent has detected a change in the status of a External Array Controller.  The variable cpqFcaCntlrStatus indicates the current controller status.  User Action: If the controller status is offline, access to the storage box has been lost.  Check the storage box and all fibre channel connections for problems."
      ::= 16007


cpqFcTapeCntlrStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqFcTapeCntlrWWN, cpqFcTapeCntlrStatus }
      --#SUMMARY "Status is now %d for tape controller %s."
      --#ARGUMENTS {3,2}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#World Wide Name: # $V4V#Controller Status: #"
      --#TYPE "Fibre Channel Tape Controller Status Change (16008)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 2
DESCRIPTION "Fibre Channel Tape Controller Status Change.  This trap signifies that the agent has detected a change in the status of a Fiber Channel Tape Controller.  The variable cpqFcTapeCntlrStatus indicates the current tape controller status.  The variable cpqFcTapeCntlrWWN indicates the unique tape controller world wide name associated with this controller.  User Action: If the tape controller status is offline, access to the tape library and tapes has been lost.  Check the tape library and all Fibre connections for problems."
      ::= 16008


cpqFcTapeLibraryStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqFcTapeCntlrWWN, cpqFcTapeLibraryScsiBus, cpqFcTapeLibraryScsiTarget, cpqFcTapeLibraryScsiLun, cpqFcTapeLibraryStatus }
      --#SUMMARY "Status is now %d for the tape library."
      --#ARGUMENTS {6}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#World Wide Name: # $V4V#Port: # $V5V#SCSI ID: # $V6V#Drive LUN: # $V7V#Library Status: #"
      --#TYPE "Fibre Channel Tape Library Status Change (16009)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 7
      --#SEVERITYMAP "other = CRITICAL, ok = INFORMATIONAL, degraded = CRITICAL, failed = CRITICAL, offline = CRITICAL"
DESCRIPTION "Fibre Channel Tape Library Status Change.  This trap signifies that the agent has detected a change in the status of a Fiber Channel Tape library.  The variable cpqFcTapeLibraryStatus indicates the current tape library status.  The variable cpqFcTapeLibraryScsiTarget indicates the SCSI ID of the tape library.  User Action: If the tape library is failed or offline, check the tape library front panel and all fibre channel connections."
      ::= 16009


cpqFcTapeLibraryDoorStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqFcTapeCntlrWWN, cpqFcTapeLibraryScsiBus, cpqFcTapeLibraryScsiTarget, cpqFcTapeLibraryScsiLun, cpqFcTapeLibraryDoorStatus }
      --#SUMMARY "The door is %d for tape library."
      --#ARGUMENTS {6}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#World Wide Name: # $V4V#Port: # $V5V#SCSI ID: # $V6V#Drive LUN: # $V7V#Door Status: #"
      --#TYPE "Fibre Channel Tape Library Door Status Change (16010)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 7
      --#SEVERITYMAP "other = CRITICAL, notSupported = INFORMATIONAL, closed = INFORMATIONAL, open = CRITICAL"
DESCRIPTION "Fibre Channel Tape Library Door Status Change.  This trap signifies that the agent has detected a change in the door status of a Fiber Channel Tape library.  The variable cpqFcTapeLibraryDoorStatus indicates the current tape library door status.  The variable cpqFcTapeLibraryScsiTarget indicates the the SCSI ID of the tape library.  User Action: If the tape library door is open, close the tape library door."
      ::= 16010


cpqFcTapeDriveStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqFcTapeCntlrWWN, cpqFcTapeDriveScsiBus, cpqFcTapeDriveScsiTarget, cpqFcTapeDriveScsiLun, cpqFcTapeDriveStatus }
      --#SUMMARY "Status is now %d for a tape drive."
      --#ARGUMENTS {6}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#World Wide Name: # $V4V#Port: # $V5V#SCSI ID: # $V6V#Drive LUN: # $V7V#Tape Drive Status: #"
      --#TYPE "Fibre Channel Tape Drive Status Change (16011)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 7
      --#SEVERITYMAP "other = CRITICAL, ok = INFORMATIONAL, degraded = CRITICAL, failed = CRITICAL, offline = CRITICAL, missingWasOk = CRITICAL, missingWasOffline = CRITICAL"
DESCRIPTION "Fibre Channel Tape Drive Status Change.  This trap signifies that the agent has detected a change in the status of a Fiber Channel Tape Drive.  The variable cpqFcTapeDriveStatus indicates the current tape status.  The variable cpqFcTapeDriveScsiTarget indicates the the SCSI ID of the tape drive.  User Action: If the tape is failed or offline, check the tape and all fibre channel connections."
      ::= 16011


cpqFcTapeDriveCleaningRequired TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqFcTapeCntlrWWN, cpqFcTapeDriveScsiBus, cpqFcTapeDriveScsiTarget, cpqFcTapeDriveScsiLun }
      --#SUMMARY "Cleaning is needed for tape drive."
      --#ARGUMENTS {}
      --#SEVERITY MAJOR
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#World Wide Name: # $V4V#Port: # $V5V#SCSI ID: # $V6V#Drive LUN: #"
      --#TYPE "Fibre Channel Tape Drive Cleaning Required (16012)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
DESCRIPTION "Fibre Channel Tape Drive Cleaning Required trap.  The agent has detected a tape drive that needs to have a cleaning tape inserted and run.  This will cause the tape drive heads to be cleaned."
      ::= 16012


cpqFcTapeDriveCleanTapeReplace TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqFcTapeCntlrWWN, cpqFcTapeDriveScsiBus, cpqFcTapeDriveScsiTarget, cpqFcTapeDriveScsiLun }
      --#SUMMARY "Cleaning tape needs replacing"
      --#ARGUMENTS {}
      --#SEVERITY MAJOR
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#World Wide Name: # $V4V#Port: # $V5V#SCSI ID: # $V6V#Drive LUN: #"
      --#TYPE "Fibre Channel Tape Drive Cleaning Tape Needs Replacing (16013)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
DESCRIPTION "Fibre Channel Tape Drive Cleaning Tape Needs Replacing.  The agent has detected that an autoloader tape unit has a cleaning tape that has been fully used and therefore needs to be replaced with a new cleaning tape."
      ::= 16013


cpqFcaCntlrActive TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqSsChassisName, cpqSsChassisTime, cpqFcaCntlrBoxIoSlot }
      --#SUMMARY "Controller in i/o slot %d is now active on chassis %s."
      --#ARGUMENTS {4,2}
      --#SEVERITY INFORMATIONAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#Chassis Name: # $V5V#Active Controller I/O Slot: #"
      --#TYPE "External Array Redundant Controller Active (16014)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
DESCRIPTION "Fibre Array Controller Active.  This trap signifies that the Storage Agent has detected that a backup array controller in a duplexed pair has switched over to the active role.  The variable cpqFcaCntlrBoxIoSlot indicates the new active controller index.  User Action: Check the partner controller for problems. If this was the result of a user initiated switch over, no action is required."
      ::= 16014


cpqFcaHostCntlrStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqFcaHostCntlrSlot, cpqFcaHostCntlrStatus }
      --#SUMMARY "Host controller in slot %d has a new status of %d."
      --#ARGUMENTS {2,3}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#Host Controller Slot: # $V4V#Host Controller Status: #"
      --#TYPE "Fibre Channel Host Controller Status Change (16015)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 4
      --#SEVERITYMAP "other = CRITICAL, ok = INFORMATIONAL, failed = CRITICAL, shutdown = CRITICAL, loopDegraded = CRITICAL, loopFailed = CRITICAL"
DESCRIPTION "Fibre Channel Host Controller Status Change.  This trap signifies that the Insight Agent has detected a change in the status of a Fibre Channel Host Controller.  The variable cpqFcaHostCntlrStatus indicates the current controller status.  User Action: If the controller status is failed, replace the controller."
      ::= 16015


cpqFca2PhyDrvStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqSsChassisName, cpqSsChassisTime, cpqFcaPhyDrvBusNumber, cpqFcaPhyDrvBay, cpqFcaPhyDrvStatus, cpqFcaPhyDrvModel, cpqFcaPhyDrvSerialNum, cpqFcaPhyDrvFWRev, cpqFcaPhyDrvFailureCode }
      --#SUMMARY "Status is now %d for a physical drive on bus %d, bay %d."
      --#ARGUMENTS {6,4,5}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#Chassis Name: # $V5V#Port: # $V6V#Bay Number: # $V7V#Physical Drive Status: #"
      --#TYPE "External Array Physical Drive Status Change (16016)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 7
      --#SEVERITYMAP  "Other = CRITICAL, unconfigured = MINOR, OK = INFORMATIONAL, threshExceeded = CRITICAL, predictiveFailure = CRITICAL, failed = CRITICAL"
DESCRIPTION "External Array Physical Drive Status Change.  This trap signifies that the agent has detected a change in the status of a physical drive.  The variable cpaFcaPhyDrvStatus indicates the current physical drive status.  User Action: If the physical drive status is threshExceeded(4), predictiveFailure(5) or failed(6), replace the drive."
      ::= 16016


cpqFca2AccelStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqSsChassisName, cpqSsChassisTime, cpqFcaAccelBoxIoSlot, cpqFcaAccelStatus, cpqFcaCntlrModel, cpqFcaAccelSerialNumber, cpqFcaAccelTotalMemory, cpqFcaAccelErrCode }
      --#SUMMARY "Status is now %d."
      --#ARGUMENTS {5}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#Chassis Name: # $V5V#Slot Number: # $V6V#Array Accelerator Status: # $V7V#Array Controller Model: # $V8V#Accelerator Serial Number: # $V9V#Accelerator Total Memory (MB): # $V10V#Accelerator Total Memory (MB): #"
      --#TYPE "External Array Accelerator Board Status Change (16017)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 2
DESCRIPTION "External Array Accelerator Board Status Change.  This trap signifies that the agent has detected a change in the status of a Array Accelerator Cache Board.  The current status is represented by the variable cpqFcaAccelStatus.  User Action: If the accelerator board status is permDisabled(5), you may need to replace the accelerator board."
      ::= 16017


cpqFca2AccelBadDataTrap TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqSsChassisName, cpqSsChassisTime, cpqFcaAccelBoxIoSlot, cpqFcaCntlrModel, cpqFcaAccelSerialNumber, cpqFcaAccelTotalMemory }
      --#SUMMARY "Accelerator lost battery power.  Data Loss possible."
      --#ARGUMENTS {}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#Chassis Name: # $V5V#Slot Number: # $V6V#Array Controller Model: # $V7V#Accelerator Serial Number: # $V8V#Accelerator Total Memory (MB): #"
      --#TYPE "External Array Accelerator Board Bad Data (16018)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
DESCRIPTION "External Array Accelerator Board Bad Data.  This trap signifies that the agent has detected a Array Accelerator Cache Board that has lost battery power.  If data was being stored in the accelerator memory when the system lost power, that data has been lost.  User Action: Verify that no data has been lost."
      ::= 16018


cpqFca2AccelBatteryFailed TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqSsChassisName, cpqSsChassisTime, cpqFcaAccelBoxIoSlot, cpqFcaCntlrModel, cpqFcaAccelSerialNumber, cpqFcaAccelTotalMemory }
      --#SUMMARY "Battery status is failed."
      --#ARGUMENTS {}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#Chassis Name: # $V5V#Slot: # $V6V#Model: # $V7V#Serial Number: # $V8V#Total Memory (MB): #"
      --#TYPE "External Array Accelerator Board Battery Failed (16019)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
DESCRIPTION "External Array Accelerator Board Battery Failed.  This trap signifies that the agent has detected a battery failure associated with the Array Accelerator Cache Board.  User Action: Replace the Accelerator Cache Board."
      ::= 16019


cpqFca2CntlrStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqSsChassisName, cpqSsChassisTime, cpqFcaCntlrBoxIoSlot, cpqFcaCntlrStatus, cpqFcaCntlrModel, cpqFcaCntlrSerialNumber, cpqFcaAccelTotalMemory }
      --#SUMMARY "Status is now %d."
      --#ARGUMENTS {5}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#Chassis Name: # $V5V#Controller Slot Number: # $V6V#Controller Status: # $V7V#Array Controller Model: # $V8V#Controller Serial Number: # $V9V#Accelerator Total Memory (MB): #"
      --#TYPE "External Array Controller Status Change (16020)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 2
DESCRIPTION "External Array Controller Status Change.  This trap signifies that the agent has detected a change in the status of a External Array Controller.  The variable cpqFcaCntlrStatus indicates the current controller status.  User Action: If the controller status is offline(4), access to the storage box has been lost.  Check the storage box and all fibre channel connections for problems."
      ::= 16020


cpqFca2HostCntlrStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqFcaHostCntlrSlot, cpqFcaHostCntlrStatus, cpqFcaHostCntlrModel, cpqFcaHostCntlrWorldWideName }
      --#SUMMARY "Host controller in slot %d has a new status of %d."
      --#ARGUMENTS {2,3}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#Host Controller Slot: # $V4V#Host Controller Status: # $V5V#Host Controller Type: # $V6V#Host Controller World Wide Name: #"
      --#TYPE "Fibre Channel Host Controller Status Change (16021)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 4
      --#SEVERITYMAP "other = CRITICAL, ok = INFORMATIONAL, failed = CRITICAL, shutdown = CRITICAL, loopDegraded = CRITICAL, loopFailed = CRITICAL"
DESCRIPTION "Fibre Channel Host Controller Status Change.  This trap signifies that the agent has detected a change in the status of a Fibre Channel Host Controller.  The variable cpqFcaHostCntlrStatus indicates the current controller status.  User Action: If the controller status is failed, replace the controller."
      ::= 16021


cpqExtArrayLogDrvStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqSsChassisName, cpqSsChassisTime, cpqFcaLogDrvBoxIndex, cpqFcaLogDrvIndex, cpqFcaLogDrvStatus, cpqFcaLogDrvOsName, cpqFcaLogDrvFaultTol, cpqFcaLogDrvSize }
      --#SUMMARY "Status is now %d."
      --#ARGUMENTS {6}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#Chassis Name: # $V4V#Chassis Time: # $V7V#Logical Drv. Status: # $V8V#Logical Drv. Os Name: # $V9V#Logical Drv. Fault Tolerance: # $V10V#Logical Drv. Size: #"
      --#TYPE "External Array Logical Drive Status Change (16022)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 2
DESCRIPTION "External Array Logical Drive Status Change.  This trap signifies that the agent has detected a change in the status of an External Array logical drive.  The variable cpqFcaLogDrvStatus indicates the current logical drive status.  User Action: If the logical drive status is failed, examine the array for failed drives that need replacement."
      ::= 16022


cpqExtTapeDriveStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqFcTapeDriveCntlrIndex, cpqFcTapeDriveScsiBus, cpqFcTapeDriveScsiTarget, cpqFcTapeDriveScsiLun, cpqFcTapeDriveModel, cpqFcTapeDriveFWRev, cpqFcTapeDriveSerialNumber, cpqFcTapeDriveLocation, cpqFcTapeDriveStatus }
      --#SUMMARY "Status is now %d for a tape drive."
      --#ARGUMENTS {10}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V4V#Scsi Bus: # $V5V#Scsi Target: # $V6V#Scsi Lun: # $V7V#Model Name: # $V8V#FW Revision: # $V9V#Serial Number: # $V10V#Location: # $V10V#Logical Drv. Size: #"
      --#TYPE "External Tape Drive Status Change (16023)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 2
DESCRIPTION "External Tape Drive Status Change.  This trap signifies that the agent has detected a change in the status of an External Tape Drive.  The variable cpqFcTapeDriveStatus indicates the current tape status.  User Action: If the tape is failed or offline, check the tape and all connections."
      ::= 16023


cpqExtTapeDriveCleaningRequired TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqFcTapeDriveCntlrIndex, cpqFcTapeDriveScsiBus, cpqFcTapeDriveScsiTarget, cpqFcTapeDriveScsiLun, cpqFcTapeDriveModel, cpqFcTapeDriveFWRev, cpqFcTapeDriveSerialNumber, cpqFcTapeDriveLocation }
      --#SUMMARY "Cleaning is needed for tape drive."
      --#ARGUMENTS {}
      --#SEVERITY MAJOR
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V4V#Scsi Bus: # $V5V#Scsi Target: # $V6V#Scsi Lun: # $V7V#Model Name: # $V8V#FW Revision: # $V9V#Serial Number: # $V10V#Location: #"
      --#TYPE "External Tape Drive Cleaning Required (16024)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
DESCRIPTION "External Tape Drive Cleaning Required trap.  The agent has detected a tape drive that needs to have a cleaning tape inserted and run.  This will cause the tape drive heads to be cleaned."
      ::= 16024


cpqExtTapeDriveCleanTapeReplace TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqFcTapeDriveCntlrIndex, cpqFcTapeDriveScsiBus, cpqFcTapeDriveScsiTarget, cpqFcTapeDriveScsiLun, cpqFcTapeDriveModel, cpqFcTapeDriveFWRev, cpqFcTapeDriveSerialNumber, cpqFcTapeDriveLocation }
      --#SUMMARY "Cleaning tape needs replacing"
      --#ARGUMENTS {}
      --#SEVERITY MAJOR
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V4V#Scsi Bus: # $V5V#Scsi Target: # $V6V#Scsi Lun: # $V7V#Model Name: # $V8V#FW Revision: # $V9V#Serial Number: # $V10V#Location: #"
      --#TYPE "External Tape Drive Cleaning Tape Needs Replacing (16025)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
DESCRIPTION "External Tape Drive Cleaning Tape Needs Replacing.  The agent has detected that an autoloader tape unit has a cleaning tape that has been fully used and therefore needs to be replaced with a new cleaning tape."
      ::= 16025


cpqExtTapeLibraryStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqFcTapeLibraryCntlrIndex, cpqFcTapeLibraryScsiBus, cpqFcTapeLibraryScsiTarget, cpqFcTapeLibraryScsiLun, cpqFcTapeLibraryModel, cpqFcTapeLibraryFWRev, cpqFcTapeLibrarySerialNumber, cpqFcTapeLibraryLocation, cpqFcTapeLibraryStatus }
      --#SUMMARY "Status is now %d for the tape library."
      --#ARGUMENTS {10}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V4V#Scsi Bus: # $V5V#Scsi Target: # $V6V#Scsi Lun: # $V7V#Model Name: # $V8V#FW Revision: # $V9V#Serial Number: # $V10V#Location: # $V11V#Status: #"
      --#TYPE "External Tape Library Status Change (16026)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 2
DESCRIPTION "External Tape Library Status Change.  This trap signifies that the agent has detected a change in the status of an External Tape library.  The variable cpqFcTapeLibraryStatus indicates the current tape library status.  User Action: If the tape library is failed or offline, check the tape library front panel and all connections."
      ::= 16026


cpqExtTapeLibraryDoorStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqFcTapeLibraryCntlrIndex, cpqFcTapeLibraryScsiBus, cpqFcTapeLibraryScsiTarget, cpqFcTapeLibraryScsiLun, cpqFcTapeLibraryModel, cpqFcTapeLibraryFWRev, cpqFcTapeLibrarySerialNumber, cpqFcTapeLibraryLocation, cpqFcTapeLibraryDoorStatus }
      --#SUMMARY "The door is %d for tape library."
      --#ARGUMENTS {10}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V4V#Scsi Bus: # $V5V#Scsi Target: # $V6V#Scsi Lun: # $V7V#Model Name: # $V8V#FW Revision: # $V9V#Serial Number: # $V10V#Location: # $V11V#Status: #"
      --#TYPE "External Tape Library Door Status Change (16027)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 2
DESCRIPTION "External Tape Library Door Status Change.  This trap signifies that the agent has detected a change in the door status of an External Tape library.  The variable cpqFcTapeLibraryDoorStatus indicates the current tape library door status.  User Action: If the tape library door is open, close the tape library door."
      ::= 16027


cpqFca3HostCntlrStatusChange TRAP-TYPE
      ENTERPRISE compaq
      VARIABLES { sysName, cpqHoTrapFlags, cpqFcaHostCntlrHwLocation, cpqFcaHostCntlrIndex, cpqFcaHostCntlrStatus, cpqFcaHostCntlrModel, cpqFcaHostCntlrSerialNumber, cpqFcaHostCntlrWorldWideName, cpqFcaHostCntlrWorldWidePortName }
      --#SUMMARY "Host controller has a new status of %d."
      --#ARGUMENTS {4}
      --#SEVERITY CRITICAL
      --#TIMEINDEX 99
      --#MSG_FORMATTER "$V3V#Location: # $V5V#Status: # $V6V#Model: # $V7V#Serial Number: # $V8V#World wide name: # $V9V#World wide port name: #"
      --#TYPE "Fibre Channel Host Controller Status Change (16028)"
      --#ENABLE true
      --#CATEGORY "Proliant Storage Events"
      --#VARBINDSEVERITY 2
DESCRIPTION "Fibre Channel Host Controller Status Change.  This trap signifies that the agent has detected a change in the status of a Fibre Channel Host Controller.  The variable cpqFcaHostCntlrStatus indicates the current controller status.  User Action: If the controller status is failed, replace the controller."
      ::= 16028


END

