|
@@ -6,7 +6,7 @@
|
|
|
* Title: MPI IOC, Port, Event, FW Download, and FW Upload messages
|
|
|
* Creation Date: October 11, 2006
|
|
|
*
|
|
|
- * mpi2_ioc.h Version: 02.00.26
|
|
|
+ * mpi2_ioc.h Version: 02.00.27
|
|
|
*
|
|
|
* NOTE: Names (typedefs, defines, etc.) beginning with an MPI25 or Mpi25
|
|
|
* prefix are for use only on MPI v2.5 products, and must not be used
|
|
@@ -134,9 +134,13 @@
|
|
|
* Added Encrypted Hash Extended Image.
|
|
|
* 12-05-13 02.00.24 Added MPI25_HASH_IMAGE_TYPE_BIOS.
|
|
|
* 11-18-14 02.00.25 Updated copyright information.
|
|
|
- * 03-16-15 02.00.26 Added MPI26_FW_HEADER_PID_FAMILY_3324_SAS and
|
|
|
+ * 03-16-15 02.00.26 Updated for MPI v2.6.
|
|
|
+ * Added MPI2_EVENT_ACTIVE_CABLE_EXCEPTION and
|
|
|
+ * MPI26_EVENT_DATA_ACTIVE_CABLE_EXCEPT.
|
|
|
+ * Added MPI26_FW_HEADER_PID_FAMILY_3324_SAS and
|
|
|
* MPI26_FW_HEADER_PID_FAMILY_3516_SAS.
|
|
|
* Added MPI26_CTRL_OP_SHUTDOWN.
|
|
|
+ * 08-25-15 02.00.27 Added IC ARCH Class based signature defines
|
|
|
* --------------------------------------------------------------------------
|
|
|
*/
|
|
|
|
|
@@ -168,7 +172,7 @@ typedef struct _MPI2_IOC_INIT_REQUEST {
|
|
|
U16 MsgVersion; /*0x0C */
|
|
|
U16 HeaderVersion; /*0x0E */
|
|
|
U32 Reserved5; /*0x10 */
|
|
|
- U16 Reserved6; /*0x14 */
|
|
|
+ U16 ConfigurationFlags; /* 0x14 */
|
|
|
U8 HostPageSize; /*0x16 */
|
|
|
U8 HostMSIxVectors; /*0x17 */
|
|
|
U16 Reserved8; /*0x18 */
|
|
@@ -516,6 +520,7 @@ typedef struct _MPI2_EVENT_NOTIFICATION_REPLY {
|
|
|
#define MPI2_EVENT_TEMP_THRESHOLD (0x0027)
|
|
|
#define MPI2_EVENT_HOST_MESSAGE (0x0028)
|
|
|
#define MPI2_EVENT_POWER_PERFORMANCE_CHANGE (0x0029)
|
|
|
+#define MPI2_EVENT_ACTIVE_CABLE_EXCEPTION (0x0034)
|
|
|
#define MPI2_EVENT_MIN_PRODUCT_SPECIFIC (0x006E)
|
|
|
#define MPI2_EVENT_MAX_PRODUCT_SPECIFIC (0x007F)
|
|
|
|
|
@@ -580,7 +585,7 @@ typedef struct _MPI2_EVENT_DATA_HOST_MESSAGE {
|
|
|
} MPI2_EVENT_DATA_HOST_MESSAGE, *PTR_MPI2_EVENT_DATA_HOST_MESSAGE,
|
|
|
Mpi2EventDataHostMessage_t, *pMpi2EventDataHostMessage_t;
|
|
|
|
|
|
-/*Power Performance Change Event */
|
|
|
+/*Power Performance Change Event data */
|
|
|
|
|
|
typedef struct _MPI2_EVENT_DATA_POWER_PERF_CHANGE {
|
|
|
U8 CurrentPowerMode; /*0x00 */
|
|
@@ -605,6 +610,21 @@ typedef struct _MPI2_EVENT_DATA_POWER_PERF_CHANGE {
|
|
|
#define MPI2_EVENT_PM_MODE_REDUCED_POWER (0x05)
|
|
|
#define MPI2_EVENT_PM_MODE_STANDBY (0x06)
|
|
|
|
|
|
+/* Active Cable Exception Event data */
|
|
|
+
|
|
|
+typedef struct _MPI26_EVENT_DATA_ACTIVE_CABLE_EXCEPT {
|
|
|
+ U32 ActiveCablePowerRequirement; /* 0x00 */
|
|
|
+ U8 ReasonCode; /* 0x04 */
|
|
|
+ U8 ReceptacleID; /* 0x05 */
|
|
|
+ U16 Reserved1; /* 0x06 */
|
|
|
+} MPI26_EVENT_DATA_ACTIVE_CABLE_EXCEPT,
|
|
|
+ *PTR_MPI26_EVENT_DATA_ACTIVE_CABLE_EXCEPT,
|
|
|
+ Mpi26EventDataActiveCableExcept_t,
|
|
|
+ *pMpi26EventDataActiveCableExcept_t;
|
|
|
+
|
|
|
+/* defines for ReasonCode field */
|
|
|
+#define MPI26_EVENT_ACTIVE_CABLE_INSUFFICIENT_POWER (0x00)
|
|
|
+
|
|
|
/*Hard Reset Received Event data */
|
|
|
|
|
|
typedef struct _MPI2_EVENT_DATA_HARD_RESET_RECEIVED {
|
|
@@ -1366,7 +1386,16 @@ typedef struct _MPI2_FW_IMAGE_HEADER {
|
|
|
/*Signature0 field */
|
|
|
#define MPI2_FW_HEADER_SIGNATURE0_OFFSET (0x04)
|
|
|
#define MPI2_FW_HEADER_SIGNATURE0 (0x5AFAA55A)
|
|
|
-#define MPI26_FW_HEADER_SIGNATURE0 (0x5AEAA55A)
|
|
|
+/* Last byte is defined by architecture */
|
|
|
+#define MPI26_FW_HEADER_SIGNATURE0_BASE (0x5AEAA500)
|
|
|
+#define MPI26_FW_HEADER_SIGNATURE0_ARC_0 (0x5A)
|
|
|
+#define MPI26_FW_HEADER_SIGNATURE0_ARC_1 (0x00)
|
|
|
+#define MPI26_FW_HEADER_SIGNATURE0_ARC_2 (0x01)
|
|
|
+/* legacy (0x5AEAA55A) */
|
|
|
+#define MPI26_FW_HEADER_SIGNATURE0 \
|
|
|
+ (MPI26_FW_HEADER_SIGNATURE0_BASE+MPI26_FW_HEADER_SIGNATURE0_ARC_0)
|
|
|
+#define MPI26_FW_HEADER_SIGNATURE0_3516 \
|
|
|
+ (MPI26_FW_HEADER_SIGNATURE0_BASE+MPI26_FW_HEADER_SIGNATURE0_ARC_1)
|
|
|
|
|
|
/*Signature1 field */
|
|
|
#define MPI2_FW_HEADER_SIGNATURE1_OFFSET (0x08)
|
|
@@ -1778,6 +1807,7 @@ typedef struct _MPI26_IOUNIT_CONTROL_REQUEST {
|
|
|
#define MPI26_CTRL_OP_SAS_PHY_LINK_RESET (0x06)
|
|
|
#define MPI26_CTRL_OP_SAS_PHY_HARD_RESET (0x07)
|
|
|
#define MPI26_CTRL_OP_PHY_CLEAR_ERROR_LOG (0x08)
|
|
|
+#define MPI26_CTRL_OP_LINK_CLEAR_ERROR_LOG (0x09)
|
|
|
#define MPI26_CTRL_OP_SAS_SEND_PRIMITIVE (0x0A)
|
|
|
#define MPI26_CTRL_OP_FORCE_FULL_DISCOVERY (0x0B)
|
|
|
#define MPI26_CTRL_OP_REMOVE_DEVICE (0x0D)
|