summaryrefslogtreecommitdiff
path: root/drivers/scsi
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi')
-rw-r--r--drivers/scsi/isci/sata.c36
1 files changed, 2 insertions, 34 deletions
diff --git a/drivers/scsi/isci/sata.c b/drivers/scsi/isci/sata.c
index 7a1b58600ca0..794ab7ca9f1a 100644
--- a/drivers/scsi/isci/sata.c
+++ b/drivers/scsi/isci/sata.c
@@ -301,8 +301,8 @@ int isci_task_send_lu_reset_sata(
int ret = TMF_RESP_FUNC_FAILED;
unsigned long flags;
- /* Send the initial SRST to the target */
- #define ISCI_SRST_TIMEOUT_MS 20 /* 20 ms timeout. */
+ /* Send the soft reset to the target */
+ #define ISCI_SRST_TIMEOUT_MS 25000 /* 25 second timeout. */
isci_task_build_tmf(&tmf, isci_device, isci_tmf_sata_srst_high,
NULL, NULL
);
@@ -319,38 +319,6 @@ int isci_task_send_lu_reset_sata(
/* Return the failure so that the LUN reset is escalated
* to a target reset.
*/
- goto out;
}
-
- /* Leave SRST high for a bit. */
- #define ISCI_SRST_ASSERT_DELAY 100 /* usecs */
- udelay(ISCI_SRST_ASSERT_DELAY);
-
- /* Deassert SRST. */
- isci_task_build_tmf(&tmf, isci_device, isci_tmf_sata_srst_low,
- NULL, NULL
- );
- ret = isci_task_execute_tmf(isci_host, &tmf, ISCI_SRST_TIMEOUT_MS);
-
- if (ret == TMF_RESP_FUNC_COMPLETE)
- dev_dbg(&isci_host->pdev->dev,
- "%s: SATA LUN reset passed (%p)\n",
- __func__,
- isci_device);
- else
- dev_warn(&isci_host->pdev->dev,
- "%s: Deassert SRST failed (%p)=%x\n",
- __func__,
- isci_device,
- ret);
-
- out:
- spin_lock_irqsave(&isci_host->scic_lock, flags);
-
- /* Resume the device. */
- scic_sds_remote_device_resume(to_sci_dev(isci_device));
-
- spin_unlock_irqrestore(&isci_host->scic_lock, flags);
-
return ret;
}