aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/ipr.h
diff options
context:
space:
mode:
authorWayne Boyer <wayneb@linux.vnet.ibm.com>2009-06-16 18:13:28 -0400
committerJames Bottomley <James.Bottomley@HansenPartnership.com>2009-06-21 11:52:46 -0400
commit95fecd90397ec1f85eb31ede955d846a86d2077b (patch)
tree979cfdf24378c63203e3a0430d93f7da6f03db82 /drivers/scsi/ipr.h
parenta9e0edb687151617fe89cc5ab0086ebfc73ffccb (diff)
ipr: add test for MSI interrupt support
The return value from pci_enable_msi() can not always be trusted. This patch adds code to generate an interrupt after MSI has been enabled and tests whether or not we can receive and process it. If the tests fails, then fall back to LSI. Signed-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com> Acked-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/ipr.h')
-rw-r--r--drivers/scsi/ipr.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/scsi/ipr.h b/drivers/scsi/ipr.h
index 79a3ae4fb2c7..2d9269b26f88 100644
--- a/drivers/scsi/ipr.h
+++ b/drivers/scsi/ipr.h
@@ -37,8 +37,8 @@
37/* 37/*
38 * Literals 38 * Literals
39 */ 39 */
40#define IPR_DRIVER_VERSION "2.4.2" 40#define IPR_DRIVER_VERSION "2.4.3"
41#define IPR_DRIVER_DATE "(January 21, 2009)" 41#define IPR_DRIVER_DATE "(June 10, 2009)"
42 42
43/* 43/*
44 * IPR_MAX_CMD_PER_LUN: This defines the maximum number of outstanding 44 * IPR_MAX_CMD_PER_LUN: This defines the maximum number of outstanding
@@ -1094,6 +1094,7 @@ struct ipr_ioa_cfg {
1094 u8 needs_hard_reset:1; 1094 u8 needs_hard_reset:1;
1095 u8 dual_raid:1; 1095 u8 dual_raid:1;
1096 u8 needs_warm_reset:1; 1096 u8 needs_warm_reset:1;
1097 u8 msi_received:1;
1097 1098
1098 u8 revid; 1099 u8 revid;
1099 1100
@@ -1179,6 +1180,7 @@ struct ipr_ioa_cfg {
1179 struct work_struct work_q; 1180 struct work_struct work_q;
1180 1181
1181 wait_queue_head_t reset_wait_q; 1182 wait_queue_head_t reset_wait_q;
1183 wait_queue_head_t msi_wait_q;
1182 1184
1183 struct ipr_dump *dump; 1185 struct ipr_dump *dump;
1184 enum ipr_sdt_state sdt_state; 1186 enum ipr_sdt_state sdt_state;