summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Garry <john.garry@huawei.com>2017-03-22 18:25:23 +0100
committerMartin K. Petersen <martin.petersen@oracle.com>2017-03-23 16:12:02 +0100
commitb4c67a6ca790ca3b8caa1e6582d61ccd5bd174e5 (patch)
tree878258afb2b923912f80ae67a5930fbdabec8002
parentscsi: hisi_sas: error hisi_sas_task_prep() when port down (diff)
downloadlinux-b4c67a6ca790ca3b8caa1e6582d61ccd5bd174e5.tar.xz
linux-b4c67a6ca790ca3b8caa1e6582d61ccd5bd174e5.zip
scsi: hisi_sas: only reset link for PHY_FUNC_LINK_RESET
We currently do a hard reset for a link reset. Change this to do a link reset only. Signed-off-by: John Garry <john.garry@huawei.com> Signed-off-by: Xiang Chen <chenxiang@hisilicon.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
-rw-r--r--drivers/scsi/hisi_sas/hisi_sas_main.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/scsi/hisi_sas/hisi_sas_main.c b/drivers/scsi/hisi_sas/hisi_sas_main.c
index 7c1fb75d11e6..00068d25ba48 100644
--- a/drivers/scsi/hisi_sas/hisi_sas_main.c
+++ b/drivers/scsi/hisi_sas/hisi_sas_main.c
@@ -659,8 +659,9 @@ static int hisi_sas_control_phy(struct asd_sas_phy *sas_phy, enum phy_func func,
break;
case PHY_FUNC_LINK_RESET:
+ hisi_hba->hw->phy_disable(hisi_hba, phy_no);
+ msleep(100);
hisi_hba->hw->phy_enable(hisi_hba, phy_no);
- hisi_hba->hw->phy_hard_reset(hisi_hba, phy_no);
break;
case PHY_FUNC_DISABLE: