diff options
Diffstat (limited to 'drivers/scsi/mpt3sas/mpi/mpi2_ioc.h')
| -rw-r--r-- | drivers/scsi/mpt3sas/mpi/mpi2_ioc.h | 40 | 
1 files changed, 35 insertions, 5 deletions
diff --git a/drivers/scsi/mpt3sas/mpi/mpi2_ioc.h b/drivers/scsi/mpt3sas/mpi/mpi2_ioc.h index cf510ed91924..8bae305bc156 100644 --- a/drivers/scsi/mpt3sas/mpi/mpi2_ioc.h +++ b/drivers/scsi/mpt3sas/mpi/mpi2_ioc.h @@ -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)  | 
