diff options
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_sli.h')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_sli.h | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/scsi/lpfc/lpfc_sli.h b/drivers/scsi/lpfc/lpfc_sli.h index 51b2b6b949be..7249fd252cbb 100644 --- a/drivers/scsi/lpfc/lpfc_sli.h +++ b/drivers/scsi/lpfc/lpfc_sli.h | |||
@@ -33,6 +33,7 @@ typedef enum _lpfc_ctx_cmd { | |||
33 | struct lpfc_iocbq { | 33 | struct lpfc_iocbq { |
34 | /* lpfc_iocbqs are used in double linked lists */ | 34 | /* lpfc_iocbqs are used in double linked lists */ |
35 | struct list_head list; | 35 | struct list_head list; |
36 | struct list_head clist; | ||
36 | uint16_t iotag; /* pre-assigned IO tag */ | 37 | uint16_t iotag; /* pre-assigned IO tag */ |
37 | uint16_t rsvd1; | 38 | uint16_t rsvd1; |
38 | 39 | ||
@@ -44,6 +45,7 @@ struct lpfc_iocbq { | |||
44 | #define LPFC_IO_FCP 4 /* FCP command -- iocbq in scsi_buf */ | 45 | #define LPFC_IO_FCP 4 /* FCP command -- iocbq in scsi_buf */ |
45 | #define LPFC_DRIVER_ABORTED 8 /* driver aborted this request */ | 46 | #define LPFC_DRIVER_ABORTED 8 /* driver aborted this request */ |
46 | #define LPFC_IO_FABRIC 0x10 /* Iocb send using fabric scheduler */ | 47 | #define LPFC_IO_FABRIC 0x10 /* Iocb send using fabric scheduler */ |
48 | #define LPFC_DELAY_MEM_FREE 0x20 /* Defer free'ing of FC data */ | ||
47 | 49 | ||
48 | uint8_t abort_count; | 50 | uint8_t abort_count; |
49 | uint8_t rsvd2; | 51 | uint8_t rsvd2; |
@@ -92,8 +94,6 @@ typedef struct lpfcMboxq { | |||
92 | #define MBX_POLL 1 /* poll mailbox till command done, then | 94 | #define MBX_POLL 1 /* poll mailbox till command done, then |
93 | return */ | 95 | return */ |
94 | #define MBX_NOWAIT 2 /* issue command then return immediately */ | 96 | #define MBX_NOWAIT 2 /* issue command then return immediately */ |
95 | #define MBX_STOP_IOCB 4 /* Stop iocb processing till mbox cmds | ||
96 | complete */ | ||
97 | 97 | ||
98 | #define LPFC_MAX_RING_MASK 4 /* max num of rctl/type masks allowed per | 98 | #define LPFC_MAX_RING_MASK 4 /* max num of rctl/type masks allowed per |
99 | ring */ | 99 | ring */ |
@@ -129,9 +129,7 @@ struct lpfc_sli_ring { | |||
129 | uint16_t flag; /* ring flags */ | 129 | uint16_t flag; /* ring flags */ |
130 | #define LPFC_DEFERRED_RING_EVENT 0x001 /* Deferred processing a ring event */ | 130 | #define LPFC_DEFERRED_RING_EVENT 0x001 /* Deferred processing a ring event */ |
131 | #define LPFC_CALL_RING_AVAILABLE 0x002 /* indicates cmd was full */ | 131 | #define LPFC_CALL_RING_AVAILABLE 0x002 /* indicates cmd was full */ |
132 | #define LPFC_STOP_IOCB_MBX 0x010 /* Stop processing IOCB cmds mbox */ | ||
133 | #define LPFC_STOP_IOCB_EVENT 0x020 /* Stop processing IOCB cmds event */ | 132 | #define LPFC_STOP_IOCB_EVENT 0x020 /* Stop processing IOCB cmds event */ |
134 | #define LPFC_STOP_IOCB_MASK 0x030 /* Stop processing IOCB cmds mask */ | ||
135 | uint16_t abtsiotag; /* tracks next iotag to use for ABTS */ | 133 | uint16_t abtsiotag; /* tracks next iotag to use for ABTS */ |
136 | 134 | ||
137 | uint32_t local_getidx; /* last available cmd index (from cmdGetInx) */ | 135 | uint32_t local_getidx; /* last available cmd index (from cmdGetInx) */ |
@@ -163,9 +161,12 @@ struct lpfc_sli_ring { | |||
163 | struct list_head iocb_continueq; | 161 | struct list_head iocb_continueq; |
164 | uint16_t iocb_continueq_cnt; /* current length of queue */ | 162 | uint16_t iocb_continueq_cnt; /* current length of queue */ |
165 | uint16_t iocb_continueq_max; /* max length */ | 163 | uint16_t iocb_continueq_max; /* max length */ |
164 | struct list_head iocb_continue_saveq; | ||
166 | 165 | ||
167 | struct lpfc_sli_ring_mask prt[LPFC_MAX_RING_MASK]; | 166 | struct lpfc_sli_ring_mask prt[LPFC_MAX_RING_MASK]; |
168 | uint32_t num_mask; /* number of mask entries in prt array */ | 167 | uint32_t num_mask; /* number of mask entries in prt array */ |
168 | void (*lpfc_sli_rcv_async_status) (struct lpfc_hba *, | ||
169 | struct lpfc_sli_ring *, struct lpfc_iocbq *); | ||
169 | 170 | ||
170 | struct lpfc_sli_ring_stat stats; /* SLI statistical info */ | 171 | struct lpfc_sli_ring_stat stats; /* SLI statistical info */ |
171 | 172 | ||
@@ -199,9 +200,6 @@ struct lpfc_hbq_init { | |||
199 | uint32_t add_count; /* number to allocate when starved */ | 200 | uint32_t add_count; /* number to allocate when starved */ |
200 | } ; | 201 | } ; |
201 | 202 | ||
202 | #define LPFC_MAX_HBQ 16 | ||
203 | |||
204 | |||
205 | /* Structure used to hold SLI statistical counters and info */ | 203 | /* Structure used to hold SLI statistical counters and info */ |
206 | struct lpfc_sli_stat { | 204 | struct lpfc_sli_stat { |
207 | uint64_t mbox_stat_err; /* Mbox cmds completed status error */ | 205 | uint64_t mbox_stat_err; /* Mbox cmds completed status error */ |