From: Luo Jiaxing Date: Mon, 24 Sep 2018 15:06:28 +0000 (+0800) Subject: scsi: hisi_sas: Feed back linkrate(max/min) when re-attached X-Git-Tag: archive/raspbian/5.2.17-1+rpi1^2^2^2~37 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=ba8fb0c7cd91bc710faef2975cba000259257d64;p=linux.git scsi: hisi_sas: Feed back linkrate(max/min) when re-attached 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 Signed-off-by: John Garry Signed-off-by: Martin K. Petersen Gbp-Pq: Topic bugfix/arm64/huawei-taishan Gbp-Pq: Name 0001-scsi-hisi_sas-Feed-back-linkrate-max-min-when-re-att.patch --- diff --git a/drivers/scsi/hisi_sas/hisi_sas_main.c b/drivers/scsi/hisi_sas/hisi_sas_main.c index fd9d82c9033..e9747379384 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);