[SCSI] aic94xx: plumb in I_T_nexus_reset task management function
authorJames Bottomley <James.Bottomley@HansenPartnership.com>
Sun, 24 Feb 2008 05:37:26 +0000 (23:37 -0600)
committerJames Bottomley <James.Bottomley@HansenPartnership.com>
Sun, 24 Feb 2008 05:52:46 +0000 (23:52 -0600)
commit63edf49e67cac710826108697c4e8636c89abd17
tree86855501b63c9717f2e31d3a7e378cc6a2faa87c
parent5319578ca38a8b90b6d0270c194c65d1dd8f7725
[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>
drivers/scsi/aic94xx/aic94xx.h
drivers/scsi/aic94xx/aic94xx_init.c
drivers/scsi/aic94xx/aic94xx_tmf.c