diff options
author | Wayne Boyer <wayneb@linux.vnet.ibm.com> | 2010-02-19 16:24:14 -0500 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2010-03-03 05:35:00 -0500 |
commit | dcbad00e6b403089b1846e788bc1a0c67b2bfd2d (patch) | |
tree | 75b7d0408cd07eb3d4c863ade52dfda1510f9e8a /drivers/scsi/ipr.h | |
parent | 4565e3706329f65b5e64328b5369c53b6ab2715c (diff) |
[SCSI] ipr: add hardware assisted smart dump functionality
This patch adds the hardware assisted smart dump functionality for the next
generation IOA PCI interface chip.
Signea-off-by: Wayne Boyer <wayneb@linux.vnet.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/ipr.h')
-rw-r--r-- | drivers/scsi/ipr.h | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/drivers/scsi/ipr.h b/drivers/scsi/ipr.h index e6e90179e45e..4f2f1d2e9875 100644 --- a/drivers/scsi/ipr.h +++ b/drivers/scsi/ipr.h | |||
@@ -228,6 +228,7 @@ | |||
228 | #define IPR_SDT_FMT2_BAR5_SEL 0x5 | 228 | #define IPR_SDT_FMT2_BAR5_SEL 0x5 |
229 | #define IPR_SDT_FMT2_EXP_ROM_SEL 0x8 | 229 | #define IPR_SDT_FMT2_EXP_ROM_SEL 0x8 |
230 | #define IPR_FMT2_SDT_READY_TO_USE 0xC4D4E3F2 | 230 | #define IPR_FMT2_SDT_READY_TO_USE 0xC4D4E3F2 |
231 | #define IPR_FMT3_SDT_READY_TO_USE 0xC4D4E3F3 | ||
231 | #define IPR_DOORBELL 0x82800000 | 232 | #define IPR_DOORBELL 0x82800000 |
232 | #define IPR_RUNTIME_RESET 0x40000000 | 233 | #define IPR_RUNTIME_RESET 0x40000000 |
233 | 234 | ||
@@ -1093,10 +1094,9 @@ struct ipr_hostrcb { | |||
1093 | 1094 | ||
1094 | /* IPR smart dump table structures */ | 1095 | /* IPR smart dump table structures */ |
1095 | struct ipr_sdt_entry { | 1096 | struct ipr_sdt_entry { |
1096 | __be32 bar_str_offset; | 1097 | __be32 start_token; |
1097 | __be32 end_offset; | 1098 | __be32 end_token; |
1098 | u8 entry_byte; | 1099 | u8 reserved[4]; |
1099 | u8 reserved[3]; | ||
1100 | 1100 | ||
1101 | u8 flags; | 1101 | u8 flags; |
1102 | #define IPR_SDT_ENDIAN 0x80 | 1102 | #define IPR_SDT_ENDIAN 0x80 |
@@ -1204,6 +1204,9 @@ struct ipr_interrupt_offsets { | |||
1204 | unsigned long sense_uproc_interrupt_reg; | 1204 | unsigned long sense_uproc_interrupt_reg; |
1205 | unsigned long set_uproc_interrupt_reg; | 1205 | unsigned long set_uproc_interrupt_reg; |
1206 | unsigned long clr_uproc_interrupt_reg; | 1206 | unsigned long clr_uproc_interrupt_reg; |
1207 | |||
1208 | unsigned long dump_addr_reg; | ||
1209 | unsigned long dump_data_reg; | ||
1207 | }; | 1210 | }; |
1208 | 1211 | ||
1209 | struct ipr_interrupts { | 1212 | struct ipr_interrupts { |
@@ -1217,6 +1220,9 @@ struct ipr_interrupts { | |||
1217 | void __iomem *sense_uproc_interrupt_reg; | 1220 | void __iomem *sense_uproc_interrupt_reg; |
1218 | void __iomem *set_uproc_interrupt_reg; | 1221 | void __iomem *set_uproc_interrupt_reg; |
1219 | void __iomem *clr_uproc_interrupt_reg; | 1222 | void __iomem *clr_uproc_interrupt_reg; |
1223 | |||
1224 | void __iomem *dump_addr_reg; | ||
1225 | void __iomem *dump_data_reg; | ||
1220 | }; | 1226 | }; |
1221 | 1227 | ||
1222 | struct ipr_chip_cfg_t { | 1228 | struct ipr_chip_cfg_t { |
@@ -1536,8 +1542,6 @@ struct ipr_ioa_dump { | |||
1536 | u32 next_page_index; | 1542 | u32 next_page_index; |
1537 | u32 page_offset; | 1543 | u32 page_offset; |
1538 | u32 format; | 1544 | u32 format; |
1539 | #define IPR_SDT_FMT2 2 | ||
1540 | #define IPR_SDT_UNKNOWN 3 | ||
1541 | }__attribute__((packed, aligned (4))); | 1545 | }__attribute__((packed, aligned (4))); |
1542 | 1546 | ||
1543 | struct ipr_dump { | 1547 | struct ipr_dump { |