On 2017-06-24 04:44, Zang Leigang wrote:
Some device can successfully link and switch to HS mode. But failed
to do more. ufshcd_verify_dev_init can help to find this earlier.
Signed-off-by: Zang Leigang <zangleig...@hisilicon.com>
diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
index ffe8d8608818..eb03388fc4bd 100644
--- a/drivers/scsi/ufs/ufshcd.c
+++ b/drivers/scsi/ufs/ufshcd.c
@@ -6373,6 +6373,14 @@ static int ufshcd_probe_hba(struct ufs_hba *hba)
__func__, ret);
goto out;
}
+
+ /*
+ * Some device lost link after switch to HS mode. Check if
+ * connect is established here.
+ */
I have never across such failures. If this issue is limited to certain
device vendors then I don't think if we want to do send NOP
unconditionally for all the devices.
We should probably add quirk for these failed devices and send NOP only
for such devices.
+ ret = ufshcd_verify_dev_init(hba);
+ if (ret)
+ goto out;
}
/* set the state as operational after switching to desired gear */
--
The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project