summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/aic94xx/aic94xx.h
diff options
context:
space:
mode:
authorJames Bottomley <James.Bottomley@HansenPartnership.com>2008-02-24 06:37:26 +0100
committerJames Bottomley <James.Bottomley@HansenPartnership.com>2008-02-24 06:52:46 +0100
commit63edf49e67cac710826108697c4e8636c89abd17 (patch)
tree86855501b63c9717f2e31d3a7e378cc6a2faa87c /drivers/scsi/aic94xx/aic94xx.h
parent[SCSI] libsas: export sas_find_local_phy function (diff)
downloadlinux-63edf49e67cac710826108697c4e8636c89abd17.tar.xz
linux-63edf49e67cac710826108697c4e8636c89abd17.zip
[SCSI] aic94xx: plumb in I_T_nexus_reset task management function
Currently aic94xx has no exported I_T_nexus_reset function. This is a bit of a huge problem, since sas_ata relies on this function to perform an ATA phy reset and also it means that if abort fails, we really have no bigger hammer to hit everything with. Plumb in the I_T_nexus_reset by quiescing the sequencer, sending the correct phy reset (link for ATA and hard for SAS) and then carefully resuming the sequencer again. Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/aic94xx/aic94xx.h')
-rw-r--r--drivers/scsi/aic94xx/aic94xx.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/scsi/aic94xx/aic94xx.h b/drivers/scsi/aic94xx/aic94xx.h
index 32f513b1b78a..eb8efdcefe48 100644
--- a/drivers/scsi/aic94xx/aic94xx.h
+++ b/drivers/scsi/aic94xx/aic94xx.h
@@ -102,6 +102,7 @@ int asd_abort_task_set(struct domain_device *, u8 *lun);
int asd_clear_aca(struct domain_device *, u8 *lun);
int asd_clear_task_set(struct domain_device *, u8 *lun);
int asd_lu_reset(struct domain_device *, u8 *lun);
+int asd_I_T_nexus_reset(struct domain_device *dev);
int asd_query_task(struct sas_task *);
/* ---------- Adapter and Port management ---------- */