diff options
author | adam radford <aradford@gmail.com> | 2006-03-15 15:43:19 -0500 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2006-03-19 11:18:42 -0500 |
commit | 75913d9bb8328c4eca54cad39a5fb665b48383eb (patch) | |
tree | 62f991852c7424eaac8532064eec815dd9509fa6 /drivers/scsi/3w-9xxx.h | |
parent | 95e6a856772413993f54916ca9bf21ccfa6a537e (diff) |
[SCSI] 3ware 9000 add big endian support
The attached patch updates the 3ware 9000 driver:
- Fix 9550SX pchip reset timeout.
- Add big endian support.
Signed-off-by: Adam Radford <linuxraid@amcc.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/3w-9xxx.h')
-rw-r--r-- | drivers/scsi/3w-9xxx.h | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/drivers/scsi/3w-9xxx.h b/drivers/scsi/3w-9xxx.h index 1b16d57f0314..e5685be96f45 100644 --- a/drivers/scsi/3w-9xxx.h +++ b/drivers/scsi/3w-9xxx.h | |||
@@ -2,8 +2,9 @@ | |||
2 | 3w-9xxx.h -- 3ware 9000 Storage Controller device driver for Linux. | 2 | 3w-9xxx.h -- 3ware 9000 Storage Controller device driver for Linux. |
3 | 3 | ||
4 | Written By: Adam Radford <linuxraid@amcc.com> | 4 | Written By: Adam Radford <linuxraid@amcc.com> |
5 | Modifications By: Tom Couch <linuxraid@amcc.com> | ||
5 | 6 | ||
6 | Copyright (C) 2004-2005 Applied Micro Circuits Corporation. | 7 | Copyright (C) 2004-2006 Applied Micro Circuits Corporation. |
7 | 8 | ||
8 | This program is free software; you can redistribute it and/or modify | 9 | This program is free software; you can redistribute it and/or modify |
9 | it under the terms of the GNU General Public License as published by | 10 | it under the terms of the GNU General Public License as published by |
@@ -287,9 +288,6 @@ static twa_message_type twa_error_table[] = { | |||
287 | #define TW_STATUS_UNEXPECTED_BITS 0x00F00000 | 288 | #define TW_STATUS_UNEXPECTED_BITS 0x00F00000 |
288 | #define TW_STATUS_VALID_INTERRUPT 0x00DF0000 | 289 | #define TW_STATUS_VALID_INTERRUPT 0x00DF0000 |
289 | 290 | ||
290 | /* RESPONSE QUEUE BIT DEFINITIONS */ | ||
291 | #define TW_RESPONSE_ID_MASK 0x00000FF0 | ||
292 | |||
293 | /* PCI related defines */ | 291 | /* PCI related defines */ |
294 | #define TW_NUMDEVICES 1 | 292 | #define TW_NUMDEVICES 1 |
295 | #define TW_PCI_CLEAR_PARITY_ERRORS 0xc100 | 293 | #define TW_PCI_CLEAR_PARITY_ERRORS 0xc100 |
@@ -471,6 +469,7 @@ printk(KERN_WARNING "3w-9xxx: ERROR: (0x%02X:0x%04X): %s.\n",a,b,c); \ | |||
471 | #define TW_APACHE_MAX_SGL_LENGTH (sizeof(dma_addr_t) > 4 ? 72 : 109) | 469 | #define TW_APACHE_MAX_SGL_LENGTH (sizeof(dma_addr_t) > 4 ? 72 : 109) |
472 | #define TW_ESCALADE_MAX_SGL_LENGTH (sizeof(dma_addr_t) > 4 ? 41 : 62) | 470 | #define TW_ESCALADE_MAX_SGL_LENGTH (sizeof(dma_addr_t) > 4 ? 41 : 62) |
473 | #define TW_PADDING_LENGTH (sizeof(dma_addr_t) > 4 ? 8 : 0) | 471 | #define TW_PADDING_LENGTH (sizeof(dma_addr_t) > 4 ? 8 : 0) |
472 | #define TW_CPU_TO_SGL(x) (sizeof(dma_addr_t) > 4 ? cpu_to_le64(x) : cpu_to_le32(x)) | ||
474 | 473 | ||
475 | #pragma pack(1) | 474 | #pragma pack(1) |
476 | 475 | ||
@@ -614,13 +613,6 @@ typedef union TAG_TW_Response_Queue { | |||
614 | u32 value; | 613 | u32 value; |
615 | } TW_Response_Queue; | 614 | } TW_Response_Queue; |
616 | 615 | ||
617 | typedef struct TAG_TW_Info { | ||
618 | char *buffer; | ||
619 | int length; | ||
620 | int offset; | ||
621 | int position; | ||
622 | } TW_Info; | ||
623 | |||
624 | /* Compatibility information structure */ | 616 | /* Compatibility information structure */ |
625 | typedef struct TAG_TW_Compatibility_Info | 617 | typedef struct TAG_TW_Compatibility_Info |
626 | { | 618 | { |
@@ -636,6 +628,8 @@ typedef struct TAG_TW_Compatibility_Info | |||
636 | unsigned short driver_build_low; | 628 | unsigned short driver_build_low; |
637 | } TW_Compatibility_Info; | 629 | } TW_Compatibility_Info; |
638 | 630 | ||
631 | #pragma pack() | ||
632 | |||
639 | typedef struct TAG_TW_Device_Extension { | 633 | typedef struct TAG_TW_Device_Extension { |
640 | u32 __iomem *base_addr; | 634 | u32 __iomem *base_addr; |
641 | unsigned long *generic_buffer_virt[TW_Q_LENGTH]; | 635 | unsigned long *generic_buffer_virt[TW_Q_LENGTH]; |
@@ -679,7 +673,5 @@ typedef struct TAG_TW_Device_Extension { | |||
679 | unsigned short working_build; | 673 | unsigned short working_build; |
680 | } TW_Device_Extension; | 674 | } TW_Device_Extension; |
681 | 675 | ||
682 | #pragma pack() | ||
683 | |||
684 | #endif /* _3W_9XXX_H */ | 676 | #endif /* _3W_9XXX_H */ |
685 | 677 | ||