aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/mpt3sas/mpi/mpi2_init.h
diff options
context:
space:
mode:
authorSuganath prabu Subramani <suganath-prabu.subramani@avagotech.com>2016-01-28 01:36:58 -0500
committerMartin K. Petersen <martin.petersen@oracle.com>2016-02-23 21:27:02 -0500
commitb130b0d56fa97ef17796314995a9dc5dda0edaa5 (patch)
tree1a5864621707993346bb656f036fa548bbadcd38 /drivers/scsi/mpt3sas/mpi/mpi2_init.h
parent8038e6456a3e6f5c4759e0d73c4f9165b90c93e7 (diff)
mpt3sas: Added support for high port count HBA variants.
Updated hardware description headers with MPI v2.6 and mpt3sas_pci_table[] with vendor_ids, device_ids of Cutlass and Intruder HBA which have support for 4 ports. Signed-off-by: Suganath prabu Subramani <suganath-prabu.subramani@avagotech.com> Signed-off-by: Chaitra P B <chaitra.basappa@avagotech.com> Reviewed-by: Tomas Henzl <thenzl@redhat.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/mpt3sas/mpi/mpi2_init.h')
-rw-r--r--drivers/scsi/mpt3sas/mpi/mpi2_init.h21
1 files changed, 15 insertions, 6 deletions
diff --git a/drivers/scsi/mpt3sas/mpi/mpi2_init.h b/drivers/scsi/mpt3sas/mpi/mpi2_init.h
index 068c98efd742..49166999a664 100644
--- a/drivers/scsi/mpt3sas/mpi/mpi2_init.h
+++ b/drivers/scsi/mpt3sas/mpi/mpi2_init.h
@@ -1,12 +1,12 @@
1/* 1/*
2 * Copyright (c) 2000-2014 LSI Corporation. 2 * Copyright 2000-2015 Avago Technologies. All rights reserved.
3 * 3 *
4 * 4 *
5 * Name: mpi2_init.h 5 * Name: mpi2_init.h
6 * Title: MPI SCSI initiator mode messages and structures 6 * Title: MPI SCSI initiator mode messages and structures
7 * Creation Date: June 23, 2006 7 * Creation Date: June 23, 2006
8 * 8 *
9 * mpi2_init.h Version: 02.00.15 9 * mpi2_init.h Version: 02.00.17
10 * 10 *
11 * NOTE: Names (typedefs, defines, etc.) beginning with an MPI25 or Mpi25 11 * NOTE: Names (typedefs, defines, etc.) beginning with an MPI25 or Mpi25
12 * prefix are for use only on MPI v2.5 products, and must not be used 12 * prefix are for use only on MPI v2.5 products, and must not be used
@@ -46,6 +46,10 @@
46 * 07-10-12 02.00.14 Added MPI2_SCSIIO_CONTROL_SHIFT_DATADIRECTION. 46 * 07-10-12 02.00.14 Added MPI2_SCSIIO_CONTROL_SHIFT_DATADIRECTION.
47 * 04-09-13 02.00.15 Added SCSIStatusQualifier field to MPI2_SCSI_IO_REPLY, 47 * 04-09-13 02.00.15 Added SCSIStatusQualifier field to MPI2_SCSI_IO_REPLY,
48 * replacing the Reserved4 field. 48 * replacing the Reserved4 field.
49 * 11-18-14 02.00.16 Updated copyright information.
50 * 03-xx-15 02.00.17 Updated for MPI v2.6.
51 * Added MPI2_SEP_REQ_SLOTSTATUS_DEV_OFF and
52 * MPI2_SEP_REPLY_SLOTSTATUS_DEV_OFF.
49 * -------------------------------------------------------------------------- 53 * --------------------------------------------------------------------------
50 */ 54 */
51 55
@@ -128,6 +132,7 @@ typedef struct _MPI2_SCSI_IO_REQUEST {
128#define MPI2_SCSIIO_MSGFLAGS_IOCDDR_SENSE_ADDR (0x04) 132#define MPI2_SCSIIO_MSGFLAGS_IOCDDR_SENSE_ADDR (0x04)
129#define MPI2_SCSIIO_MSGFLAGS_IOCPLB_SENSE_ADDR (0x08) 133#define MPI2_SCSIIO_MSGFLAGS_IOCPLB_SENSE_ADDR (0x08)
130#define MPI2_SCSIIO_MSGFLAGS_IOCPLBNTA_SENSE_ADDR (0x0C) 134#define MPI2_SCSIIO_MSGFLAGS_IOCPLBNTA_SENSE_ADDR (0x0C)
135#define MPI26_SCSIIO_MSGFLAGS_IOCCTL_SENSE_ADDR (0x08)
131 136
132/*SCSI IO SGLFlags bits */ 137/*SCSI IO SGLFlags bits */
133 138
@@ -228,7 +233,7 @@ typedef union _MPI25_SCSI_IO_CDB_UNION {
228} MPI25_SCSI_IO_CDB_UNION, *PTR_MPI25_SCSI_IO_CDB_UNION, 233} MPI25_SCSI_IO_CDB_UNION, *PTR_MPI25_SCSI_IO_CDB_UNION,
229 Mpi25ScsiIoCdb_t, *pMpi25ScsiIoCdb_t; 234 Mpi25ScsiIoCdb_t, *pMpi25ScsiIoCdb_t;
230 235
231/*MPI v2.5 SCSI IO Request Message */ 236/*MPI v2.5/2.6 SCSI IO Request Message */
232typedef struct _MPI25_SCSI_IO_REQUEST { 237typedef struct _MPI25_SCSI_IO_REQUEST {
233 U16 DevHandle; /*0x00 */ 238 U16 DevHandle; /*0x00 */
234 U8 ChainOffset; /*0x02 */ 239 U8 ChainOffset; /*0x02 */
@@ -302,12 +307,14 @@ typedef struct _MPI25_SCSI_IO_REQUEST {
302#define MPI25_SCSIIO_NUM_SGLOFFSETS (4) 307#define MPI25_SCSIIO_NUM_SGLOFFSETS (4)
303 308
304/*defines for the IoFlags field */ 309/*defines for the IoFlags field */
305#define MPI25_SCSIIO_IOFLAGS_IO_PATH_MASK (0xC000) 310#define MPI25_SCSIIO_IOFLAGS_IO_PATH_MASK (0xC000)
306#define MPI25_SCSIIO_IOFLAGS_NORMAL_PATH (0x0000) 311#define MPI25_SCSIIO_IOFLAGS_NORMAL_PATH (0x0000)
307#define MPI25_SCSIIO_IOFLAGS_FAST_PATH (0x4000) 312#define MPI25_SCSIIO_IOFLAGS_FAST_PATH (0x4000)
308 313
314#define MPI26_SCSIIO_IOFLAGS_ESCAPE_PASSTHROUGH (0x2000)
309#define MPI25_SCSIIO_IOFLAGS_LARGE_CDB (0x1000) 315#define MPI25_SCSIIO_IOFLAGS_LARGE_CDB (0x1000)
310#define MPI25_SCSIIO_IOFLAGS_BIDIRECTIONAL (0x0800) 316#define MPI25_SCSIIO_IOFLAGS_BIDIRECTIONAL (0x0800)
317#define MPI26_SCSIIO_IOFLAGS_PORT_REQUEST (0x0400)
311#define MPI25_SCSIIO_IOFLAGS_CDBLENGTH_MASK (0x01FF) 318#define MPI25_SCSIIO_IOFLAGS_CDBLENGTH_MASK (0x01FF)
312 319
313/*MPI v2.5 defines for the EEDPFlags bits */ 320/*MPI v2.5 defines for the EEDPFlags bits */
@@ -512,6 +519,7 @@ typedef struct _MPI2_SEP_REQUEST {
512#define MPI2_SEP_REQ_FLAGS_ENCLOSURE_SLOT_ADDRESS (0x01) 519#define MPI2_SEP_REQ_FLAGS_ENCLOSURE_SLOT_ADDRESS (0x01)
513 520
514/*SlotStatus defines */ 521/*SlotStatus defines */
522#define MPI2_SEP_REQ_SLOTSTATUS_DEV_OFF (0x00080000)
515#define MPI2_SEP_REQ_SLOTSTATUS_REQUEST_REMOVE (0x00040000) 523#define MPI2_SEP_REQ_SLOTSTATUS_REQUEST_REMOVE (0x00040000)
516#define MPI2_SEP_REQ_SLOTSTATUS_IDENTIFY_REQUEST (0x00020000) 524#define MPI2_SEP_REQ_SLOTSTATUS_IDENTIFY_REQUEST (0x00020000)
517#define MPI2_SEP_REQ_SLOTSTATUS_REBUILD_STOPPED (0x00000200) 525#define MPI2_SEP_REQ_SLOTSTATUS_REBUILD_STOPPED (0x00000200)
@@ -547,6 +555,7 @@ typedef struct _MPI2_SEP_REPLY {
547 Mpi2SepReply_t, *pMpi2SepReply_t; 555 Mpi2SepReply_t, *pMpi2SepReply_t;
548 556
549/*SlotStatus defines */ 557/*SlotStatus defines */
558#define MPI2_SEP_REPLY_SLOTSTATUS_DEV_OFF (0x00080000)
550#define MPI2_SEP_REPLY_SLOTSTATUS_REMOVE_READY (0x00040000) 559#define MPI2_SEP_REPLY_SLOTSTATUS_REMOVE_READY (0x00040000)
551#define MPI2_SEP_REPLY_SLOTSTATUS_IDENTIFY_REQUEST (0x00020000) 560#define MPI2_SEP_REPLY_SLOTSTATUS_IDENTIFY_REQUEST (0x00020000)
552#define MPI2_SEP_REPLY_SLOTSTATUS_REBUILD_STOPPED (0x00000200) 561#define MPI2_SEP_REPLY_SLOTSTATUS_REBUILD_STOPPED (0x00000200)