diff options
| author | Stephen M. Cameron <scameron@beardog.cce.hp.com> | 2013-12-04 18:10:21 -0500 |
|---|---|---|
| committer | James Bottomley <JBottomley@Parallels.com> | 2013-12-19 23:56:30 -0500 |
| commit | 28e1344647349ea215c818072e45bee887f2192a (patch) | |
| tree | cd62166106f1b7ea9d25b9364a84cb6fbc04c669 | |
| parent | 97a5e98c1b6451cbbfd0436ea69e1df1c304fbc3 (diff) | |
[SCSI] hpsa: enable unit attention reporting
This used to be the default, but at some point the firmware guys
changed the default and I failed to notice. Now to get unit
attention notifications, you must twiddle a bit indicating you
want them.
Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
| -rw-r--r-- | drivers/scsi/hpsa.c | 7 | ||||
| -rw-r--r-- | drivers/scsi/hpsa_cmd.h | 1 |
2 files changed, 5 insertions, 3 deletions
diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c index 25afeb4c4a62..b146cafc50b1 100644 --- a/drivers/scsi/hpsa.c +++ b/drivers/scsi/hpsa.c | |||
| @@ -4384,14 +4384,15 @@ static inline bool hpsa_CISS_signature_present(struct ctlr_info *h) | |||
| 4384 | 4384 | ||
| 4385 | static inline void hpsa_set_driver_support_bits(struct ctlr_info *h) | 4385 | static inline void hpsa_set_driver_support_bits(struct ctlr_info *h) |
| 4386 | { | 4386 | { |
| 4387 | #ifdef CONFIG_X86 | ||
| 4388 | /* Need to enable prefetch in the SCSI core for 6400 in x86 */ | ||
| 4389 | u32 driver_support; | 4387 | u32 driver_support; |
| 4390 | 4388 | ||
| 4389 | #ifdef CONFIG_X86 | ||
| 4390 | /* Need to enable prefetch in the SCSI core for 6400 in x86 */ | ||
| 4391 | driver_support = readl(&(h->cfgtable->driver_support)); | 4391 | driver_support = readl(&(h->cfgtable->driver_support)); |
| 4392 | driver_support |= ENABLE_SCSI_PREFETCH; | 4392 | driver_support |= ENABLE_SCSI_PREFETCH; |
| 4393 | writel(driver_support, &(h->cfgtable->driver_support)); | ||
| 4394 | #endif | 4393 | #endif |
| 4394 | driver_support |= ENABLE_UNIT_ATTN; | ||
| 4395 | writel(driver_support, &(h->cfgtable->driver_support)); | ||
| 4395 | } | 4396 | } |
| 4396 | 4397 | ||
| 4397 | /* Disable DMA prefetch for the P600. Otherwise an ASIC bug may result | 4398 | /* Disable DMA prefetch for the P600. Otherwise an ASIC bug may result |
diff --git a/drivers/scsi/hpsa_cmd.h b/drivers/scsi/hpsa_cmd.h index 5158709c00f6..bfc8c4ea66f8 100644 --- a/drivers/scsi/hpsa_cmd.h +++ b/drivers/scsi/hpsa_cmd.h | |||
| @@ -358,6 +358,7 @@ struct CfgTable { | |||
| 358 | u32 HeartBeat; | 358 | u32 HeartBeat; |
| 359 | u32 driver_support; | 359 | u32 driver_support; |
| 360 | #define ENABLE_SCSI_PREFETCH 0x100 | 360 | #define ENABLE_SCSI_PREFETCH 0x100 |
| 361 | #define ENABLE_UNIT_ATTN 0x01 | ||
| 361 | u32 MaxScatterGatherElements; | 362 | u32 MaxScatterGatherElements; |
| 362 | u32 MaxLogicalUnits; | 363 | u32 MaxLogicalUnits; |
| 363 | u32 MaxPhysicalDevices; | 364 | u32 MaxPhysicalDevices; |
