diff options
Diffstat (limited to 'drivers/scsi/hpsa_cmd.h')
-rw-r--r-- | drivers/scsi/hpsa_cmd.h | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/drivers/scsi/hpsa_cmd.h b/drivers/scsi/hpsa_cmd.h index 3e0abdf76689..56fb9827681e 100644 --- a/drivers/scsi/hpsa_cmd.h +++ b/drivers/scsi/hpsa_cmd.h | |||
@@ -23,7 +23,8 @@ | |||
23 | 23 | ||
24 | /* general boundary defintions */ | 24 | /* general boundary defintions */ |
25 | #define SENSEINFOBYTES 32 /* may vary between hbas */ | 25 | #define SENSEINFOBYTES 32 /* may vary between hbas */ |
26 | #define MAXSGENTRIES 31 | 26 | #define MAXSGENTRIES 32 |
27 | #define HPSA_SG_CHAIN 0x80000000 | ||
27 | #define MAXREPLYQS 256 | 28 | #define MAXREPLYQS 256 |
28 | 29 | ||
29 | /* Command Status value */ | 30 | /* Command Status value */ |
@@ -305,20 +306,23 @@ struct CommandList { | |||
305 | int cmd_type; | 306 | int cmd_type; |
306 | long cmdindex; | 307 | long cmdindex; |
307 | struct hlist_node list; | 308 | struct hlist_node list; |
308 | struct CommandList *prev; | ||
309 | struct CommandList *next; | ||
310 | struct request *rq; | 309 | struct request *rq; |
311 | struct completion *waiting; | 310 | struct completion *waiting; |
312 | int retry_count; | ||
313 | void *scsi_cmd; | 311 | void *scsi_cmd; |
314 | 312 | ||
315 | /* on 64 bit architectures, to get this to be 32-byte-aligned | 313 | /* on 64 bit architectures, to get this to be 32-byte-aligned |
316 | * it so happens we need no padding, on 32 bit systems, | 314 | * it so happens we need PAD_64 bytes of padding, on 32 bit systems, |
317 | * we need 8 bytes of padding. This does that. | 315 | * we need PAD_32 bytes of padding (see below). This does that. |
316 | * If it happens that 64 bit and 32 bit systems need different | ||
317 | * padding, PAD_32 and PAD_64 can be set independently, and. | ||
318 | * the code below will do the right thing. | ||
318 | */ | 319 | */ |
319 | #define COMMANDLIST_PAD ((8 - sizeof(long))/4 * 8) | 320 | #define IS_32_BIT ((8 - sizeof(long))/4) |
321 | #define IS_64_BIT (!IS_32_BIT) | ||
322 | #define PAD_32 (4) | ||
323 | #define PAD_64 (4) | ||
324 | #define COMMANDLIST_PAD (IS_32_BIT * PAD_32 + IS_64_BIT * PAD_64) | ||
320 | u8 pad[COMMANDLIST_PAD]; | 325 | u8 pad[COMMANDLIST_PAD]; |
321 | |||
322 | }; | 326 | }; |
323 | 327 | ||
324 | /* Configuration Table Structure */ | 328 | /* Configuration Table Structure */ |