diff options
author | Kashyap, Desai <kashyap.desai@lsi.com> | 2009-05-29 07:14:48 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2009-06-09 18:28:30 -0400 |
commit | 1ba9ab2eb2c53df52e498779e14cf4e5ea77b0ad (patch) | |
tree | 494361505cc5556ba4b843714c05d681506a846b /drivers/message/fusion/mptscsih.h | |
parent | 37c60f374a855974c27bd30d5662a8fa5e933792 (diff) |
[SCSI] mpt fusion: rewrite taskmgmt request and completion routines
1.) rewrite taskmanagement request and completion routines, making them
single threaded and using the generic MPT_MGMT struct, deleting
mptscsih_TMHandler, replacing with single request TM handler
mptscsih_IssueTaskMgmt, and killing the watchdog timer functions.
2.) cleanup ioc_reset callback handlers, introducing wrappers for
synchronizing error recovery (mpt_set_taskmgmt_in_progress_flag,
mpt_clear_taskmgmt_in_progress_flag), as the fusion firmware only handles
one task management request at a time
Signed-off-by: Kashyap Desai <kadesai@lsi.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/message/fusion/mptscsih.h')
-rw-r--r-- | drivers/message/fusion/mptscsih.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/message/fusion/mptscsih.h b/drivers/message/fusion/mptscsih.h index 0b103a2516ee..6ac5d4a5c4e8 100644 --- a/drivers/message/fusion/mptscsih.h +++ b/drivers/message/fusion/mptscsih.h | |||
@@ -113,6 +113,8 @@ extern int mptscsih_resume(struct pci_dev *pdev); | |||
113 | extern int mptscsih_proc_info(struct Scsi_Host *host, char *buffer, char **start, off_t offset, int length, int func); | 113 | extern int mptscsih_proc_info(struct Scsi_Host *host, char *buffer, char **start, off_t offset, int length, int func); |
114 | extern const char * mptscsih_info(struct Scsi_Host *SChost); | 114 | extern const char * mptscsih_info(struct Scsi_Host *SChost); |
115 | extern int mptscsih_qcmd(struct scsi_cmnd *SCpnt, void (*done)(struct scsi_cmnd *)); | 115 | extern int mptscsih_qcmd(struct scsi_cmnd *SCpnt, void (*done)(struct scsi_cmnd *)); |
116 | extern int mptscsih_IssueTaskMgmt(MPT_SCSI_HOST *hd, u8 type, u8 channel, | ||
117 | u8 id, int lun, int ctx2abort, ulong timeout); | ||
116 | extern void mptscsih_slave_destroy(struct scsi_device *device); | 118 | extern void mptscsih_slave_destroy(struct scsi_device *device); |
117 | extern int mptscsih_slave_configure(struct scsi_device *device); | 119 | extern int mptscsih_slave_configure(struct scsi_device *device); |
118 | extern int mptscsih_abort(struct scsi_cmnd * SCpnt); | 120 | extern int mptscsih_abort(struct scsi_cmnd * SCpnt); |
@@ -127,7 +129,6 @@ extern int mptscsih_event_process(MPT_ADAPTER *ioc, EventNotificationReply_t *pE | |||
127 | extern int mptscsih_ioc_reset(MPT_ADAPTER *ioc, int post_reset); | 129 | extern int mptscsih_ioc_reset(MPT_ADAPTER *ioc, int post_reset); |
128 | extern int mptscsih_change_queue_depth(struct scsi_device *sdev, int qdepth); | 130 | extern int mptscsih_change_queue_depth(struct scsi_device *sdev, int qdepth); |
129 | extern void mptscsih_timer_expired(unsigned long data); | 131 | extern void mptscsih_timer_expired(unsigned long data); |
130 | extern int mptscsih_TMHandler(MPT_SCSI_HOST *hd, u8 type, u8 channel, u8 id, int lun, int ctx2abort, ulong timeout); | ||
131 | extern u8 mptscsih_raid_id_to_num(MPT_ADAPTER *ioc, u8 channel, u8 id); | 132 | extern u8 mptscsih_raid_id_to_num(MPT_ADAPTER *ioc, u8 channel, u8 id); |
132 | extern int mptscsih_is_phys_disk(MPT_ADAPTER *ioc, u8 channel, u8 id); | 133 | extern int mptscsih_is_phys_disk(MPT_ADAPTER *ioc, u8 channel, u8 id); |
133 | extern struct device_attribute *mptscsih_host_attrs[]; | 134 | extern struct device_attribute *mptscsih_host_attrs[]; |