mpi_ioc.h

来自「LINUX 2.6.17.4的源码」· C头文件 代码 · 共 1,018 行 · 第 1/4 页

H
1,018
字号
#define MPI_IOCFACTS_FLAGS_FW_DOWNLOAD_BOOT             (0x01)#define MPI_IOCFACTS_FLAGS_REPLY_FIFO_HOST_SIGNAL       (0x02)#define MPI_IOCFACTS_FLAGS_HOST_PAGE_BUFFER_PERSISTENT  (0x04)#define MPI_IOCFACTS_EVENTSTATE_DISABLED                (0x00)#define MPI_IOCFACTS_EVENTSTATE_ENABLED                 (0x01)#define MPI_IOCFACTS_CAPABILITY_HIGH_PRI_Q              (0x00000001)#define MPI_IOCFACTS_CAPABILITY_REPLY_HOST_SIGNAL       (0x00000002)#define MPI_IOCFACTS_CAPABILITY_QUEUE_FULL_HANDLING     (0x00000004)#define MPI_IOCFACTS_CAPABILITY_DIAG_TRACE_BUFFER       (0x00000008)#define MPI_IOCFACTS_CAPABILITY_SNAPSHOT_BUFFER         (0x00000010)#define MPI_IOCFACTS_CAPABILITY_EXTENDED_BUFFER         (0x00000020)#define MPI_IOCFACTS_CAPABILITY_EEDP                    (0x00000040)#define MPI_IOCFACTS_CAPABILITY_BIDIRECTIONAL           (0x00000080)#define MPI_IOCFACTS_CAPABILITY_MULTICAST               (0x00000100)#define MPI_IOCFACTS_CAPABILITY_SCSIIO32                (0x00000200)#define MPI_IOCFACTS_CAPABILITY_NO_SCSIIO16             (0x00000400)/*******************************************************************************               P o r t    M e s s a g e s******************************************************************************//****************************************************************************//*  Port Facts message and Reply                                            *//****************************************************************************/typedef struct _MSG_PORT_FACTS{     U8                     Reserved[2];                /* 00h */     U8                     ChainOffset;                /* 02h */     U8                     Function;                   /* 03h */     U8                     Reserved1[2];               /* 04h */     U8                     PortNumber;                 /* 06h */     U8                     MsgFlags;                   /* 07h */     U32                    MsgContext;                 /* 08h */} MSG_PORT_FACTS, MPI_POINTER PTR_MSG_PORT_FACTS,  PortFacts_t, MPI_POINTER pPortFacts_t;typedef struct _MSG_PORT_FACTS_REPLY{     U16                    Reserved;                   /* 00h */     U8                     MsgLength;                  /* 02h */     U8                     Function;                   /* 03h */     U16                    Reserved1;                  /* 04h */     U8                     PortNumber;                 /* 06h */     U8                     MsgFlags;                   /* 07h */     U32                    MsgContext;                 /* 08h */     U16                    Reserved2;                  /* 0Ch */     U16                    IOCStatus;                  /* 0Eh */     U32                    IOCLogInfo;                 /* 10h */     U8                     Reserved3;                  /* 14h */     U8                     PortType;                   /* 15h */     U16                    MaxDevices;                 /* 16h */     U16                    PortSCSIID;                 /* 18h */     U16                    ProtocolFlags;              /* 1Ah */     U16                    MaxPostedCmdBuffers;        /* 1Ch */     U16                    MaxPersistentIDs;           /* 1Eh */     U16                    MaxLanBuckets;              /* 20h */     U16                    Reserved4;                  /* 22h */     U32                    Reserved5;                  /* 24h */} MSG_PORT_FACTS_REPLY, MPI_POINTER PTR_MSG_PORT_FACTS_REPLY,  PortFactsReply_t, MPI_POINTER pPortFactsReply_t;/* PortTypes values */#define MPI_PORTFACTS_PORTTYPE_INACTIVE         (0x00)#define MPI_PORTFACTS_PORTTYPE_SCSI             (0x01)#define MPI_PORTFACTS_PORTTYPE_FC               (0x10)#define MPI_PORTFACTS_PORTTYPE_ISCSI            (0x20)#define MPI_PORTFACTS_PORTTYPE_SAS              (0x30)/* ProtocolFlags values */#define MPI_PORTFACTS_PROTOCOL_LOGBUSADDR       (0x01)#define MPI_PORTFACTS_PROTOCOL_LAN              (0x02)#define MPI_PORTFACTS_PROTOCOL_TARGET           (0x04)#define MPI_PORTFACTS_PROTOCOL_INITIATOR        (0x08)/****************************************************************************//*  Port Enable Message                                                     *//****************************************************************************/typedef struct _MSG_PORT_ENABLE{    U8                      Reserved[2];                /* 00h */    U8                      ChainOffset;                /* 02h */    U8                      Function;                   /* 03h */    U8                      Reserved1[2];               /* 04h */    U8                      PortNumber;                 /* 06h */    U8                      MsgFlags;                   /* 07h */    U32                     MsgContext;                 /* 08h */} MSG_PORT_ENABLE, MPI_POINTER PTR_MSG_PORT_ENABLE,  PortEnable_t, MPI_POINTER pPortEnable_t;typedef struct _MSG_PORT_ENABLE_REPLY{    U8                      Reserved[2];                /* 00h */    U8                      MsgLength;                  /* 02h */    U8                      Function;                   /* 03h */    U8                      Reserved1[2];               /* 04h */    U8                      PortNumber;                 /* 05h */    U8                      MsgFlags;                   /* 07h */    U32                     MsgContext;                 /* 08h */    U16                     Reserved2;                  /* 0Ch */    U16                     IOCStatus;                  /* 0Eh */    U32                     IOCLogInfo;                 /* 10h */} MSG_PORT_ENABLE_REPLY, MPI_POINTER PTR_MSG_PORT_ENABLE_REPLY,  PortEnableReply_t, MPI_POINTER pPortEnableReply_t;/*******************************************************************************               E v e n t    M e s s a g e s******************************************************************************//****************************************************************************//*  Event Notification messages                                             *//****************************************************************************/typedef struct _MSG_EVENT_NOTIFY{    U8                      Switch;                     /* 00h */    U8                      Reserved;                   /* 01h */    U8                      ChainOffset;                /* 02h */    U8                      Function;                   /* 03h */    U8                      Reserved1[3];               /* 04h */    U8                      MsgFlags;                   /* 07h */    U32                     MsgContext;                 /* 08h */} MSG_EVENT_NOTIFY, MPI_POINTER PTR_MSG_EVENT_NOTIFY,  EventNotification_t, MPI_POINTER pEventNotification_t;/* Event Notification Reply */typedef struct _MSG_EVENT_NOTIFY_REPLY{     U16                    EventDataLength;            /* 00h */     U8                     MsgLength;                  /* 02h */     U8                     Function;                   /* 03h */     U8                     Reserved1[2];               /* 04h */     U8                     AckRequired;                /* 06h */     U8                     MsgFlags;                   /* 07h */     U32                    MsgContext;                 /* 08h */     U8                     Reserved2[2];               /* 0Ch */     U16                    IOCStatus;                  /* 0Eh */     U32                    IOCLogInfo;                 /* 10h */     U32                    Event;                      /* 14h */     U32                    EventContext;               /* 18h */     U32                    Data[1];                    /* 1Ch */} MSG_EVENT_NOTIFY_REPLY, MPI_POINTER PTR_MSG_EVENT_NOTIFY_REPLY,  EventNotificationReply_t, MPI_POINTER pEventNotificationReply_t;/* Event Acknowledge */typedef struct _MSG_EVENT_ACK{    U8                      Reserved[2];                /* 00h */    U8                      ChainOffset;                /* 02h */    U8                      Function;                   /* 03h */    U8                      Reserved1[3];               /* 04h */    U8                      MsgFlags;                   /* 07h */    U32                     MsgContext;                 /* 08h */    U32                     Event;                      /* 0Ch */    U32                     EventContext;               /* 10h */} MSG_EVENT_ACK, MPI_POINTER PTR_MSG_EVENT_ACK,  EventAck_t, MPI_POINTER pEventAck_t;typedef struct _MSG_EVENT_ACK_REPLY{    U8                      Reserved[2];                /* 00h */    U8                      MsgLength;                  /* 02h */    U8                      Function;                   /* 03h */    U8                      Reserved1[3];               /* 04h */    U8                      MsgFlags;                   /* 07h */    U32                     MsgContext;                 /* 08h */    U16                     Reserved2;                  /* 0Ch */    U16                     IOCStatus;                  /* 0Eh */    U32                     IOCLogInfo;                 /* 10h */} MSG_EVENT_ACK_REPLY, MPI_POINTER PTR_MSG_EVENT_ACK_REPLY,  EventAckReply_t, MPI_POINTER pEventAckReply_t;/* Switch */#define MPI_EVENT_NOTIFICATION_SWITCH_OFF   (0x00)#define MPI_EVENT_NOTIFICATION_SWITCH_ON    (0x01)/* Event */#define MPI_EVENT_NONE                      (0x00000000)#define MPI_EVENT_LOG_DATA                  (0x00000001)#define MPI_EVENT_STATE_CHANGE              (0x00000002)#define MPI_EVENT_UNIT_ATTENTION            (0x00000003)#define MPI_EVENT_IOC_BUS_RESET             (0x00000004)#define MPI_EVENT_EXT_BUS_RESET             (0x00000005)#define MPI_EVENT_RESCAN                    (0x00000006)#define MPI_EVENT_LINK_STATUS_CHANGE        (0x00000007)#define MPI_EVENT_LOOP_STATE_CHANGE         (0x00000008)#define MPI_EVENT_LOGOUT                    (0x00000009)#define MPI_EVENT_EVENT_CHANGE              (0x0000000A)#define MPI_EVENT_INTEGRATED_RAID           (0x0000000B)#define MPI_EVENT_SCSI_DEVICE_STATUS_CHANGE (0x0000000C)#define MPI_EVENT_ON_BUS_TIMER_EXPIRED      (0x0000000D)#define MPI_EVENT_QUEUE_FULL                (0x0000000E)#define MPI_EVENT_SAS_DEVICE_STATUS_CHANGE  (0x0000000F)#define MPI_EVENT_SAS_SES                   (0x00000010)#define MPI_EVENT_PERSISTENT_TABLE_FULL     (0x00000011)#define MPI_EVENT_SAS_PHY_LINK_STATUS       (0x00000012)#define MPI_EVENT_SAS_DISCOVERY_ERROR       (0x00000013)#define MPI_EVENT_IR_RESYNC_UPDATE          (0x00000014)#define MPI_EVENT_IR2                       (0x00000015)#define MPI_EVENT_SAS_DISCOVERY             (0x00000016)#define MPI_EVENT_LOG_ENTRY_ADDED           (0x00000021)/* AckRequired field values */#define MPI_EVENT_NOTIFICATION_ACK_NOT_REQUIRED (0x00)#define MPI_EVENT_NOTIFICATION_ACK_REQUIRED     (0x01)/* EventChange Event data */typedef struct _EVENT_DATA_EVENT_CHANGE{    U8                      EventState;                 /* 00h */    U8                      Reserved;                   /* 01h */    U16                     Reserved1;                  /* 02h */} EVENT_DATA_EVENT_CHANGE, MPI_POINTER PTR_EVENT_DATA_EVENT_CHANGE,  EventDataEventChange_t, MPI_POINTER pEventDataEventChange_t;/* LogEntryAdded Event data *//* this structure matches MPI_LOG_0_ENTRY in mpi_cnfg.h */#define MPI_EVENT_DATA_LOG_ENTRY_DATA_LENGTH    (0x1C)typedef struct _EVENT_DATA_LOG_ENTRY{    U32         TimeStamp;                          /* 00h */    U32         Reserved1;                          /* 04h */    U16         LogSequence;                        /* 08h */    U16         LogEntryQualifier;                  /* 0Ah */    U8          LogData[MPI_EVENT_DATA_LOG_ENTRY_DATA_LENGTH]; /* 0Ch */} EVENT_DATA_LOG_ENTRY, MPI_POINTER PTR_EVENT_DATA_LOG_ENTRY,  MpiEventDataLogEntry_t, MPI_POINTER pMpiEventDataLogEntry_t;typedef struct _EVENT_DATA_LOG_ENTRY_ADDED{    U16                     LogSequence;            /* 00h */    U16                     Reserved1;              /* 02h */    U32                     Reserved2;              /* 04h */    EVENT_DATA_LOG_ENTRY    LogEntry;               /* 08h */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?