41 lines
1.5 KiB
Diff
41 lines
1.5 KiB
Diff
From 97a79982f8b8ddcb129a1be1ecc01cef70ab384d Mon Sep 17 00:00:00 2001
|
|
From: Luo Jiaxing <luojiaxing@huawei.com>
|
|
Date: Mon, 24 Sep 2018 23:06:28 +0800
|
|
Subject: [PATCH 01/31] scsi: hisi_sas: Feed back linkrate(max/min) when
|
|
re-attached
|
|
Origin: https://git.kernel.org/linus/5a54691f874ab29ec82f08bc6936866a3ccdaa91
|
|
|
|
At directly attached situation, if the user modifies the sysfs interface
|
|
of maximum_linkrate and minimum_linkrate to renegotiate the linkrate
|
|
between SAS controller and target, the value of both files mentioned
|
|
above should have change to user setting after renegotiate is over, but
|
|
it remains unchanged.
|
|
|
|
To fix this bug, maximum_linkrate and minimum_linkrate will be directly
|
|
fed back to relevant sas_phy structure.
|
|
|
|
Signed-off-by: Luo Jiaxing <luojiaxing@huawei.com>
|
|
Signed-off-by: John Garry <john.garry@huawei.com>
|
|
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
|
|
---
|
|
drivers/scsi/hisi_sas/hisi_sas_main.c | 3 +++
|
|
1 file changed, 3 insertions(+)
|
|
|
|
diff --git a/drivers/scsi/hisi_sas/hisi_sas_main.c b/drivers/scsi/hisi_sas/hisi_sas_main.c
|
|
index fd9d82c9033d..e9747379384b 100644
|
|
--- a/drivers/scsi/hisi_sas/hisi_sas_main.c
|
|
+++ b/drivers/scsi/hisi_sas/hisi_sas_main.c
|
|
@@ -906,6 +906,9 @@ static void hisi_sas_phy_set_linkrate(struct hisi_hba *hisi_hba, int phy_no,
|
|
_r.maximum_linkrate = max;
|
|
_r.minimum_linkrate = min;
|
|
|
|
+ sas_phy->phy->maximum_linkrate = max;
|
|
+ sas_phy->phy->minimum_linkrate = min;
|
|
+
|
|
hisi_hba->hw->phy_disable(hisi_hba, phy_no);
|
|
msleep(100);
|
|
hisi_hba->hw->phy_set_linkrate(hisi_hba, phy_no, &_r);
|
|
--
|
|
2.20.1
|
|
|