summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/smartpqi/smartpqi_sis.h
diff options
context:
space:
mode:
authorMurthy Bhat <Murthy.Bhat@microchip.com>2021-09-29 01:54:34 +0200
committerMartin K. Petersen <martin.petersen@oracle.com>2021-10-05 06:13:14 +0200
commit5d1f03e6f49ae80d417dc72d1ee16a3379e2c026 (patch)
tree29202d1d68a9a6423ab8f4e2eb31b29bff69d337 /drivers/scsi/smartpqi/smartpqi_sis.h
parentscsi: smartpqi: Add controller handshake during kdump (diff)
downloadlinux-5d1f03e6f49ae80d417dc72d1ee16a3379e2c026.tar.xz
linux-5d1f03e6f49ae80d417dc72d1ee16a3379e2c026.zip
scsi: smartpqi: Capture controller reason codes
In some rare cases, the driver can halt the controller. Add a reason code describing why the controller was halted. Store this reason code in a controller register to aid in debugging the issue. Link: https://lore.kernel.org/r/20210928235442.201875-4-don.brace@microchip.com Reviewed-by: Scott Benesh <scott.benesh@microchip.com> Reviewed-by: Scott Teel <scott.teel@microchip.com> Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com> Acked-by: John Donnelly <john.p.donnelly@oracle.com> Signed-off-by: Murthy Bhat <Murthy.Bhat@microchip.com> Signed-off-by: Don Brace <don.brace@microchip.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to '')
-rw-r--r--drivers/scsi/smartpqi/smartpqi_sis.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/scsi/smartpqi/smartpqi_sis.h b/drivers/scsi/smartpqi/smartpqi_sis.h
index c1db93054c86..bd92ff49f385 100644
--- a/drivers/scsi/smartpqi/smartpqi_sis.h
+++ b/drivers/scsi/smartpqi/smartpqi_sis.h
@@ -21,7 +21,8 @@ int sis_get_pqi_capabilities(struct pqi_ctrl_info *ctrl_info);
int sis_init_base_struct_addr(struct pqi_ctrl_info *ctrl_info);
void sis_enable_msix(struct pqi_ctrl_info *ctrl_info);
void sis_enable_intx(struct pqi_ctrl_info *ctrl_info);
-void sis_shutdown_ctrl(struct pqi_ctrl_info *ctrl_info);
+void sis_shutdown_ctrl(struct pqi_ctrl_info *ctrl_info,
+ enum pqi_ctrl_shutdown_reason ctrl_shutdown_reason);
int sis_pqi_reset_quiesce(struct pqi_ctrl_info *ctrl_info);
int sis_reenable_sis_mode(struct pqi_ctrl_info *ctrl_info);
void sis_write_driver_scratch(struct pqi_ctrl_info *ctrl_info, u32 value);