OSDN Git Service

scsi: ufs: qcom: Simplify handling of devm_phy_get()
authorManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Wed, 4 May 2022 08:42:09 +0000 (14:12 +0530)
committerMartin K. Petersen <martin.petersen@oracle.com>
Wed, 11 May 2022 01:52:53 +0000 (21:52 -0400)
There is no need to call devm_phy_get() if ACPI is used, so skip it.  The
host->generic_phy pointer should already be NULL due to the kzalloc(), so
no need to set it NULL again.

While at it, also remove the comment that has no relationship with
devm_phy_get().

Link: https://lore.kernel.org/r/20220504084212.11605-3-manivannan.sadhasivam@linaro.org
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Reviewed-by: Andrew Halaney <ahalaney@redhat.com>
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/ufs/ufs-qcom.c

index 47dd30e..539caf3 100644 (file)
@@ -1004,28 +1004,10 @@ static int ufs_qcom_init(struct ufs_hba *hba)
                err = 0;
        }
 
-       /*
-        * voting/devoting device ref_clk source is time consuming hence
-        * skip devoting it during aggressive clock gating. This clock
-        * will still be gated off during runtime suspend.
-        */
-       host->generic_phy = devm_phy_get(dev, "ufsphy");
-
-       if (host->generic_phy == ERR_PTR(-EPROBE_DEFER)) {
-               /*
-                * UFS driver might be probed before the phy driver does.
-                * In that case we would like to return EPROBE_DEFER code.
-                */
-               err = -EPROBE_DEFER;
-               dev_warn(dev, "%s: required phy device. hasn't probed yet. err = %d\n",
-                       __func__, err);
-               goto out_variant_clear;
-       } else if (IS_ERR(host->generic_phy)) {
-               if (has_acpi_companion(dev)) {
-                       host->generic_phy = NULL;
-               } else {
-                       err = PTR_ERR(host->generic_phy);
-                       dev_err(dev, "%s: PHY get failed %d\n", __func__, err);
+       if (!has_acpi_companion(dev)) {
+               host->generic_phy = devm_phy_get(dev, "ufsphy");
+               if (IS_ERR(host->generic_phy)) {
+                       err = dev_err_probe(dev, PTR_ERR(host->generic_phy), "Failed to get PHY\n");
                        goto out_variant_clear;
                }
        }