mirror of
https://github.com/torvalds/linux.git
synced 2024-10-31 17:21:49 +00:00
isci: Move the reset delay after the remote node resumption.
Delay after bringing up the RNC to allow for resumption latency. Signed-off-by: Jeff Skirvin <jeffrey.d.skirvin@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
This commit is contained in:
parent
7c78da3175
commit
ff717ab05f
@ -1433,15 +1433,17 @@ static int isci_reset_device(struct domain_device *dev, int hard_reset)
|
|||||||
isci_device_clear_reset_pending(ihost, idev);
|
isci_device_clear_reset_pending(ihost, idev);
|
||||||
|
|
||||||
rc = sas_phy_reset(phy, hard_reset);
|
rc = sas_phy_reset(phy, hard_reset);
|
||||||
msleep(2000); /* just like mvsas */
|
|
||||||
|
|
||||||
/* Terminate in-progress I/O now. */
|
/* Terminate in-progress I/O now. */
|
||||||
isci_remote_device_nuke_requests(ihost, idev);
|
isci_remote_device_nuke_requests(ihost, idev);
|
||||||
|
|
||||||
|
/* Since all pending TCs have been cleaned, resume the RNC. */
|
||||||
spin_lock_irqsave(&ihost->scic_lock, flags);
|
spin_lock_irqsave(&ihost->scic_lock, flags);
|
||||||
status = scic_remote_device_reset_complete(&idev->sci);
|
status = scic_remote_device_reset_complete(&idev->sci);
|
||||||
spin_unlock_irqrestore(&ihost->scic_lock, flags);
|
spin_unlock_irqrestore(&ihost->scic_lock, flags);
|
||||||
|
|
||||||
|
msleep(2000); /* just like mvsas */
|
||||||
|
|
||||||
if (status != SCI_SUCCESS) {
|
if (status != SCI_SUCCESS) {
|
||||||
dev_warn(&ihost->pdev->dev,
|
dev_warn(&ihost->pdev->dev,
|
||||||
"%s: scic_remote_device_reset_complete(%p) "
|
"%s: scic_remote_device_reset_complete(%p) "
|
||||||
|
Loading…
Reference in New Issue
Block a user