diff --git a/kernel/drivers/scsi/ufs/ufshcd.c b/kernel/drivers/scsi/ufs/ufshcd.c
index 5c9a31f18b7f..df0018834dd5 100644
--- a/kernel/drivers/scsi/ufs/ufshcd.c
+++ b/kernel/drivers/scsi/ufs/ufshcd.c
@@ -4650,6 +4650,7 @@ static int ufshcd_link_startup(struct ufs_hba *hba)
 
 link_startup:
 	do {
+		dev_info(hba->dev, "%s: loop link start\n", __func__);
 		ufshcd_vops_link_startup_notify(hba, PRE_CHANGE);
 
 		ret = ufshcd_dme_link_startup(hba);
@@ -4673,6 +4674,7 @@ static int ufshcd_link_startup(struct ufs_hba *hba)
 			ufshcd_update_evt_hist(hba,
 					       UFS_EVT_LINK_STARTUP_FAIL,
 					       (u32)ret);
+			dev_err(hba->dev, "%s: link lost and HBA is enabled, %d\n", __func__, ret);
 			goto out;
 		}
 	} while (ret && retries--);
@@ -4682,6 +4684,7 @@ static int ufshcd_link_startup(struct ufs_hba *hba)
 		ufshcd_update_evt_hist(hba,
 				       UFS_EVT_LINK_STARTUP_FAIL,
 				       (u32)ret);
+		dev_err(hba->dev, "%s: failed to get the link up, %d\n", __func__, ret);
 		goto out;
 	}
 
@@ -4697,18 +4700,25 @@ static int ufshcd_link_startup(struct ufs_hba *hba)
 
 	if (hba->quirks & UFSHCD_QUIRK_BROKEN_LCC) {
 		ret = ufshcd_disable_device_tx_lcc(hba);
-		if (ret)
+		if (ret) {
+			dev_err(hba->dev, "%s: failed to disable device tx LCC, %d\n", __func__, ret);
 			goto out;
+		}
 	}
 
 	/* Include any host controller configuration via UIC commands */
 	ret = ufshcd_vops_link_startup_notify(hba, POST_CHANGE);
-	if (ret)
+	if (ret) {
+		dev_err(hba->dev, "%s: failed to send post-notify, %d\n", __func__, ret);
 		goto out;
+	}
 
 	/* Clear UECPA once due to LINERESET has happened during LINK_STARTUP */
 	ufshcd_readl(hba, REG_UIC_ERROR_CODE_PHY_ADAPTER_LAYER);
 	ret = ufshcd_make_hba_operational(hba);
+	if (ret)
+		dev_err(hba->dev, "%s: failed to make HBA operational, %d\n", __func__, ret);
+
 out:
 	if (ret) {
 		dev_err(hba->dev, "link startup failed %d\n", ret);
