scsi: ufs: ufs-qcom: Check return value of phy_set_mode_ext()
authorCan Guo <quic_cang@quicinc.com>
Sat, 2 Dec 2023 12:36:13 +0000 (04:36 -0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Thu, 14 Dec 2023 03:37:21 +0000 (22:37 -0500)
In ufs_qcom_power_up_sequence(), check return value of phy_set_mode_ext()
and stop proceeding if phy_set_mode_ext() fails.

Reviewed-by: Nitin Rawat <quic_nitirawa@quicinc.com>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: Can Guo <quic_cang@quicinc.com>
Link: https://lore.kernel.org/r/1701520577-31163-8-git-send-email-quic_cang@quicinc.com
Tested-by: Neil Armstrong <neil.armstrong@linaro.org> # on SM8550-QRD
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/ufs/host/ufs-qcom.c

index 543939c4c463a03164fe0b637ff4d7ac9a94b614..ee3f07a9e624b8e65d4780a6991b67dea3b92c93 100644 (file)
@@ -475,7 +475,9 @@ static int ufs_qcom_power_up_sequence(struct ufs_hba *hba)
                return ret;
        }
 
-       phy_set_mode_ext(phy, mode, host->phy_gear);
+       ret = phy_set_mode_ext(phy, mode, host->phy_gear);
+       if (ret)
+               goto out_disable_phy;
 
        /* power on phy - start serdes and phy's power and clocks */
        ret = phy_power_on(phy);