11da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/*
2fd7a253311412b3fc7c85586552c90eca61e7d23Kashyap, Desai *  Copyright (c) 2000-2008 LSI Corporation.
31da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *
41da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *
51da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *           Name:  mpi_fc.h
61da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *          Title:  MPI Fibre Channel messages and structures
71da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  Creation Date:  June 12, 2000
81da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *
9c1a71d1c0440c47e006845f8accc1f212ca86852Moore, Eric Dean *    mpi_fc.h Version:  01.05.01
101da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *
111da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  Version History
121da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  ---------------
131da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *
141da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  Date      Version   Description
151da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  --------  --------  ------------------------------------------------------
161da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  05-08-00  00.10.01  Original release for 0.10 spec dated 4/26/2000.
171da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  06-06-00  01.00.01  Update version number for 1.0 release.
181da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  06-12-00  01.00.02  Added _MSG_FC_ABORT_REPLY structure.
191da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  11-02-00  01.01.01  Original release for post 1.0 work
201da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  12-04-00  01.01.02  Added messages for Common Transport Send and
211da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *                      Primitive Send.
221da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  01-09-01  01.01.03  Modifed some of the new flags to have an MPI prefix
231da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *                      and modified the FcPrimitiveSend flags.
241da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  01-25-01  01.01.04  Move InitiatorIndex in LinkServiceRsp reply to a larger
251da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *                      field.
261da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *                      Added FC_ABORT_TYPE_CT_SEND_REQUEST and
271da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *                      FC_ABORT_TYPE_EXLINKSEND_REQUEST for FcAbort request.
281da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *                      Added MPI_FC_PRIM_SEND_FLAGS_STOP_SEND.
291da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  02-20-01  01.01.05  Started using MPI_POINTER.
301da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  03-27-01  01.01.06  Added Flags field to MSG_LINK_SERVICE_BUFFER_POST_REPLY
311da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *                      and defined MPI_LS_BUF_POST_REPLY_FLAG_NO_RSP_NEEDED.
321da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *                      Added MPI_FC_PRIM_SEND_FLAGS_RESET_LINK define.
331da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *                      Added structure offset comments.
341da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  04-09-01  01.01.07  Added RspLength field to MSG_LINK_SERVICE_RSP_REQUEST.
351da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  08-08-01  01.02.01  Original release for v1.2 work.
361da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  09-28-01  01.02.02  Change name of reserved field in
371da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *                      MSG_LINK_SERVICE_RSP_REPLY.
381da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  05-31-02  01.02.03  Adding AliasIndex to FC Direct Access requests.
39c1a71d1c0440c47e006845f8accc1f212ca86852Moore, Eric Dean *  01-16-04  01.02.04  Added define for MPI_FC_PRIM_SEND_FLAGS_ML_RESET_LINK.
40c1a71d1c0440c47e006845f8accc1f212ca86852Moore, Eric Dean *  05-11-04  01.03.01  Original release for MPI v1.3.
41c1a71d1c0440c47e006845f8accc1f212ca86852Moore, Eric Dean *  08-19-04  01.05.01  Original release for MPI v1.5.
421da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *  --------------------------------------------------------------------------
431da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */
441da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
451da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#ifndef MPI_FC_H
461da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_H
471da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
481da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
491da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/*****************************************************************************
501da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds*
511da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds*        F C    D i r e c t    A c c e s s     M e s s a g e s
521da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds*
531da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds*****************************************************************************/
541da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
551da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/****************************************************************************/
561da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* Link Service Buffer Post messages                                        */
571da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/****************************************************************************/
581da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
591da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldstypedef struct _MSG_LINK_SERVICE_BUFFER_POST_REQUEST
601da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds{
611da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      BufferPostFlags;    /* 00h */
621da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      BufferCount;        /* 01h */
631da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      ChainOffset;        /* 02h */
641da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Function;           /* 03h */
651da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved;           /* 04h */
661da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Reserved1;          /* 06h */
671da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      MsgFlags;           /* 07h */
681da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     MsgContext;         /* 08h */
691da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    SGE_TRANS_SIMPLE_UNION  SGL;
701da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds} MSG_LINK_SERVICE_BUFFER_POST_REQUEST,
711da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds MPI_POINTER PTR_MSG_LINK_SERVICE_BUFFER_POST_REQUEST,
721da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds  LinkServiceBufferPostRequest_t, MPI_POINTER pLinkServiceBufferPostRequest_t;
731da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
741da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define LINK_SERVICE_BUFFER_POST_FLAGS_PORT_MASK (0x01)
751da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
761da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldstypedef struct _WWNFORMAT
771da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds{
781da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     PortNameHigh;       /* 00h */
791da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     PortNameLow;        /* 04h */
801da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     NodeNameHigh;       /* 08h */
811da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     NodeNameLow;        /* 0Ch */
821da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds} WWNFORMAT,
831da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds  WwnFormat_t;
841da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
851da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* Link Service Buffer Post Reply */
861da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldstypedef struct _MSG_LINK_SERVICE_BUFFER_POST_REPLY
871da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds{
881da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Flags;              /* 00h */
891da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Reserved;           /* 01h */
901da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      MsgLength;          /* 02h */
911da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Function;           /* 03h */
921da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved1;          /* 04h */
931da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      PortNumber;         /* 06h */
941da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      MsgFlags;           /* 07h */
951da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     MsgContext;         /* 08h */
961da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved2;          /* 0Ch */
971da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     IOCStatus;          /* 0Eh */
981da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     IOCLogInfo;         /* 10h */
991da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     TransferLength;     /* 14h */
1001da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     TransactionContext; /* 18h */
1011da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     Rctl_Did;           /* 1Ch */
1021da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     Csctl_Sid;          /* 20h */
1031da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     Type_Fctl;          /* 24h */
1041da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     SeqCnt;             /* 28h */
1051da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Dfctl;              /* 2Ah */
1061da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      SeqId;              /* 2Bh */
1071da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Rxid;               /* 2Ch */
1081da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Oxid;               /* 2Eh */
1091da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     Parameter;          /* 30h */
1101da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    WWNFORMAT               Wwn;                /* 34h */
1111da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds} MSG_LINK_SERVICE_BUFFER_POST_REPLY, MPI_POINTER PTR_MSG_LINK_SERVICE_BUFFER_POST_REPLY,
1121da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds  LinkServiceBufferPostReply_t, MPI_POINTER pLinkServiceBufferPostReply_t;
1131da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1141da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_LS_BUF_POST_REPLY_FLAG_NO_RSP_NEEDED    (0x80)
1151da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1161da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_DID_MASK                             (0x00FFFFFF)
1171da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_DID_SHIFT                            (0)
1181da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_RCTL_MASK                            (0xFF000000)
1191da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_RCTL_SHIFT                           (24)
1201da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_SID_MASK                             (0x00FFFFFF)
1211da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_SID_SHIFT                            (0)
1221da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_CSCTL_MASK                           (0xFF000000)
1231da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_CSCTL_SHIFT                          (24)
1241da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_FCTL_MASK                            (0x00FFFFFF)
1251da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_FCTL_SHIFT                           (0)
1261da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_TYPE_MASK                            (0xFF000000)
1271da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_TYPE_SHIFT                           (24)
1281da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1291da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* obsolete name for the above */
1301da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FCP_TARGET_DID_MASK                         (0x00FFFFFF)
1311da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FCP_TARGET_DID_SHIFT                        (0)
1321da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FCP_TARGET_RCTL_MASK                        (0xFF000000)
1331da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FCP_TARGET_RCTL_SHIFT                       (24)
1341da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FCP_TARGET_SID_MASK                         (0x00FFFFFF)
1351da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FCP_TARGET_SID_SHIFT                        (0)
1361da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FCP_TARGET_CSCTL_MASK                       (0xFF000000)
1371da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FCP_TARGET_CSCTL_SHIFT                      (24)
1381da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FCP_TARGET_FCTL_MASK                        (0x00FFFFFF)
1391da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FCP_TARGET_FCTL_SHIFT                       (0)
1401da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FCP_TARGET_TYPE_MASK                        (0xFF000000)
1411da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FCP_TARGET_TYPE_SHIFT                       (24)
1421da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1431da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1441da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/****************************************************************************/
1451da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* Link Service Response messages                                           */
1461da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/****************************************************************************/
1471da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1481da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldstypedef struct _MSG_LINK_SERVICE_RSP_REQUEST
1491da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds{
1501da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      RspFlags;           /* 00h */
1511da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      RspLength;          /* 01h */
1521da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      ChainOffset;        /* 02h */
1531da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Function;           /* 03h */
1541da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved1;          /* 04h */
1551da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Reserved2;          /* 06h */
1561da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      MsgFlags;           /* 07h */
1571da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     MsgContext;         /* 08h */
1581da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     Rctl_Did;           /* 0Ch */
1591da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     Csctl_Sid;          /* 10h */
1601da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     Type_Fctl;          /* 14h */
1611da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     SeqCnt;             /* 18h */
1621da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Dfctl;              /* 1Ah */
1631da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      SeqId;              /* 1Bh */
1641da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Rxid;               /* 1Ch */
1651da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Oxid;               /* 1Eh */
1661da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     Parameter;          /* 20h */
1671da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    SGE_SIMPLE_UNION        SGL;                /* 24h */
1681da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds} MSG_LINK_SERVICE_RSP_REQUEST, MPI_POINTER PTR_MSG_LINK_SERVICE_RSP_REQUEST,
1691da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds  LinkServiceRspRequest_t, MPI_POINTER pLinkServiceRspRequest_t;
1701da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1711da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define LINK_SERVICE_RSP_FLAGS_IMMEDIATE        (0x80)
1721da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define LINK_SERVICE_RSP_FLAGS_PORT_MASK        (0x01)
1731da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1741da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1751da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* Link Service Response Reply  */
1761da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldstypedef struct _MSG_LINK_SERVICE_RSP_REPLY
1771da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds{
1781da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved;           /* 00h */
1791da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      MsgLength;          /* 02h */
1801da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Function;           /* 03h */
1811da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved1;          /* 04h */
1821da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Reserved_0100_InitiatorIndex; /* 06h */ /* obsolete InitiatorIndex */
1831da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      MsgFlags;           /* 07h */
1841da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     MsgContext;         /* 08h */
1851da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved3;          /* 0Ch */
1861da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     IOCStatus;          /* 0Eh */
1871da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     IOCLogInfo;         /* 10h */
1881da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     InitiatorIndex;     /* 14h */
1891da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds} MSG_LINK_SERVICE_RSP_REPLY, MPI_POINTER PTR_MSG_LINK_SERVICE_RSP_REPLY,
1901da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds  LinkServiceRspReply_t, MPI_POINTER pLinkServiceRspReply_t;
1911da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1921da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1931da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/****************************************************************************/
1941da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* Extended Link Service Send messages                                      */
1951da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/****************************************************************************/
1961da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1971da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldstypedef struct _MSG_EXLINK_SERVICE_SEND_REQUEST
1981da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds{
1991da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      SendFlags;          /* 00h */
2001da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      AliasIndex;         /* 01h */
2011da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      ChainOffset;        /* 02h */
2021da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Function;           /* 03h */
2031da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     MsgFlags_Did;       /* 04h */
2041da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     MsgContext;         /* 08h */
2051da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     ElsCommandCode;     /* 0Ch */
2061da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    SGE_SIMPLE_UNION        SGL;                /* 10h */
2071da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds} MSG_EXLINK_SERVICE_SEND_REQUEST, MPI_POINTER PTR_MSG_EXLINK_SERVICE_SEND_REQUEST,
2081da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds  ExLinkServiceSendRequest_t, MPI_POINTER pExLinkServiceSendRequest_t;
2091da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2101da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define EX_LINK_SERVICE_SEND_DID_MASK           (0x00FFFFFF)
2111da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define EX_LINK_SERVICE_SEND_DID_SHIFT          (0)
2121da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define EX_LINK_SERVICE_SEND_MSGFLAGS_MASK      (0xFF000000)
2131da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define EX_LINK_SERVICE_SEND_MSGFLAGS_SHIFT     (24)
2141da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2151da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2161da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* Extended Link Service Send Reply */
2171da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldstypedef struct _MSG_EXLINK_SERVICE_SEND_REPLY
2181da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds{
2191da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Reserved;           /* 00h */
2201da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      AliasIndex;         /* 01h */
2211da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      MsgLength;          /* 02h */
2221da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Function;           /* 03h */
2231da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved1;          /* 04h */
2241da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Reserved2;          /* 06h */
2251da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      MsgFlags;           /* 07h */
2261da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     MsgContext;         /* 08h */
2271da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved3;          /* 0Ch */
2281da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     IOCStatus;          /* 0Eh */
2291da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     IOCLogInfo;         /* 10h */
2301da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     ResponseLength;     /* 14h */
2311da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds} MSG_EXLINK_SERVICE_SEND_REPLY, MPI_POINTER PTR_MSG_EXLINK_SERVICE_SEND_REPLY,
2321da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds  ExLinkServiceSendReply_t, MPI_POINTER pExLinkServiceSendReply_t;
2331da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2341da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/****************************************************************************/
2351da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* FC Abort messages                                                        */
2361da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/****************************************************************************/
2371da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2381da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldstypedef struct _MSG_FC_ABORT_REQUEST
2391da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds{
2401da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      AbortFlags;                 /* 00h */
2411da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      AbortType;                  /* 01h */
2421da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      ChainOffset;                /* 02h */
2431da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Function;                   /* 03h */
2441da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved1;                  /* 04h */
2451da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Reserved2;                  /* 06h */
2461da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      MsgFlags;                   /* 07h */
2471da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     MsgContext;                 /* 08h */
2481da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     TransactionContextToAbort;  /* 0Ch */
2491da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds} MSG_FC_ABORT_REQUEST, MPI_POINTER PTR_MSG_FC_ABORT_REQUEST,
2501da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds  FcAbortRequest_t, MPI_POINTER pFcAbortRequest_t;
2511da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2521da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FC_ABORT_FLAG_PORT_MASK                 (0x01)
2531da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2541da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FC_ABORT_TYPE_ALL_FC_BUFFERS            (0x00)
2551da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FC_ABORT_TYPE_EXACT_FC_BUFFER           (0x01)
2561da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FC_ABORT_TYPE_CT_SEND_REQUEST           (0x02)
2571da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define FC_ABORT_TYPE_EXLINKSEND_REQUEST        (0x03)
2581da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2591da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* FC Abort Reply */
2601da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldstypedef struct _MSG_FC_ABORT_REPLY
2611da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds{
2621da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved;           /* 00h */
2631da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      MsgLength;          /* 02h */
2641da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Function;           /* 03h */
2651da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved1;          /* 04h */
2661da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Reserved2;          /* 06h */
2671da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      MsgFlags;           /* 07h */
2681da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     MsgContext;         /* 08h */
2691da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved3;          /* 0Ch */
2701da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     IOCStatus;          /* 0Eh */
2711da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     IOCLogInfo;         /* 10h */
2721da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds} MSG_FC_ABORT_REPLY, MPI_POINTER PTR_MSG_FC_ABORT_REPLY,
2731da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds  FcAbortReply_t, MPI_POINTER pFcAbortReply_t;
2741da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2751da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2761da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/****************************************************************************/
2771da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* FC Common Transport Send messages                                        */
2781da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/****************************************************************************/
2791da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2801da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldstypedef struct _MSG_FC_COMMON_TRANSPORT_SEND_REQUEST
2811da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds{
2821da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      SendFlags;          /* 00h */
2831da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      AliasIndex;         /* 01h */
2841da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      ChainOffset;        /* 02h */
2851da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Function;           /* 03h */
2861da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     MsgFlags_Did;       /* 04h */
2871da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     MsgContext;         /* 08h */
2881da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     CTCommandCode;      /* 0Ch */
2891da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      FsType;             /* 0Eh */
2901da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Reserved1;          /* 0Fh */
2911da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    SGE_SIMPLE_UNION        SGL;                /* 10h */
2921da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds} MSG_FC_COMMON_TRANSPORT_SEND_REQUEST,
2931da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds MPI_POINTER PTR_MSG_FC_COMMON_TRANSPORT_SEND_REQUEST,
2941da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds  FcCommonTransportSendRequest_t, MPI_POINTER pFcCommonTransportSendRequest_t;
2951da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2961da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_CT_SEND_DID_MASK                 (0x00FFFFFF)
2971da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_CT_SEND_DID_SHIFT                (0)
2981da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_CT_SEND_MSGFLAGS_MASK            (0xFF000000)
2991da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_CT_SEND_MSGFLAGS_SHIFT           (24)
3001da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
3011da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
3021da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* FC Common Transport Send Reply */
3031da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldstypedef struct _MSG_FC_COMMON_TRANSPORT_SEND_REPLY
3041da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds{
3051da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Reserved;           /* 00h */
3061da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      AliasIndex;         /* 01h */
3071da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      MsgLength;          /* 02h */
3081da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Function;           /* 03h */
3091da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved1;          /* 04h */
3101da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Reserved2;          /* 06h */
3111da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      MsgFlags;           /* 07h */
3121da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     MsgContext;         /* 08h */
3131da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved3;          /* 0Ch */
3141da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     IOCStatus;          /* 0Eh */
3151da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     IOCLogInfo;         /* 10h */
3161da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     ResponseLength;     /* 14h */
3171da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds} MSG_FC_COMMON_TRANSPORT_SEND_REPLY, MPI_POINTER PTR_MSG_FC_COMMON_TRANSPORT_SEND_REPLY,
3181da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds  FcCommonTransportSendReply_t, MPI_POINTER pFcCommonTransportSendReply_t;
3191da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
3201da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
3211da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/****************************************************************************/
3221da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* FC Primitive Send messages                                               */
3231da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/****************************************************************************/
3241da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
3251da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldstypedef struct _MSG_FC_PRIMITIVE_SEND_REQUEST
3261da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds{
3271da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      SendFlags;          /* 00h */
3281da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Reserved;           /* 01h */
3291da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      ChainOffset;        /* 02h */
3301da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Function;           /* 03h */
3311da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved1;          /* 04h */
3321da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Reserved2;          /* 06h */
3331da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      MsgFlags;           /* 07h */
3341da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     MsgContext;         /* 08h */
3351da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      FcPrimitive[4];     /* 0Ch */
3361da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds} MSG_FC_PRIMITIVE_SEND_REQUEST, MPI_POINTER PTR_MSG_FC_PRIMITIVE_SEND_REQUEST,
3371da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds  FcPrimitiveSendRequest_t, MPI_POINTER pFcPrimitiveSendRequest_t;
3381da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
3391da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_PRIM_SEND_FLAGS_PORT_MASK       (0x01)
3401da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_PRIM_SEND_FLAGS_ML_RESET_LINK   (0x02)
3411da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_PRIM_SEND_FLAGS_RESET_LINK      (0x04)
3421da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_PRIM_SEND_FLAGS_STOP_SEND       (0x08)
3431da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_PRIM_SEND_FLAGS_SEND_ONCE       (0x10)
3441da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_PRIM_SEND_FLAGS_SEND_AROUND     (0x20)
3451da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_PRIM_SEND_FLAGS_UNTIL_FULL      (0x40)
3461da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define MPI_FC_PRIM_SEND_FLAGS_FOREVER         (0x80)
3471da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
3481da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* FC Primitive Send Reply */
3491da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldstypedef struct _MSG_FC_PRIMITIVE_SEND_REPLY
3501da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds{
3511da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      SendFlags;          /* 00h */
3521da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Reserved;           /* 01h */
3531da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      MsgLength;          /* 02h */
3541da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Function;           /* 03h */
3551da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved1;          /* 04h */
3561da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      Reserved2;          /* 06h */
3571da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U8                      MsgFlags;           /* 07h */
3581da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     MsgContext;         /* 08h */
3591da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     Reserved3;          /* 0Ch */
3601da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U16                     IOCStatus;          /* 0Eh */
3611da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds    U32                     IOCLogInfo;         /* 10h */
3621da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds} MSG_FC_PRIMITIVE_SEND_REPLY, MPI_POINTER PTR_MSG_FC_PRIMITIVE_SEND_REPLY,
3631da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds  FcPrimitiveSendReply_t, MPI_POINTER pFcPrimitiveSendReply_t;
3641da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
3651da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#endif
3661da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
367