[PATCH v1] ufs: core: remove dev cmd clock scaling busy

peter.wang at mediatek.com peter.wang at mediatek.com
Tue Oct 3 23:24:54 PDT 2023


From: Peter Wang <peter.wang at mediatek.com>

If dev command timeout, clk_scaling.active_reqs is not decrease
and cause clock scaling framework abnormal. But it is complicated to
handle different dev command timeout case in legacy mode or mcq mode.
Besides, dev cmd is rare used and busy time is short.
So remove clock scaling busy window for dev cmd is properly.
Same as uic or tm cmd which doesn't update busy window too.

Signed-off-by: Peter Wang <peter.wang at mediatek.com>
---
 drivers/ufs/core/ufshcd.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/ufs/core/ufshcd.c b/drivers/ufs/core/ufshcd.c
index c2df07545f96..474d5dded7ed 100644
--- a/drivers/ufs/core/ufshcd.c
+++ b/drivers/ufs/core/ufshcd.c
@@ -2165,7 +2165,8 @@ void ufshcd_send_command(struct ufs_hba *hba, unsigned int task_tag,
 	lrbp->compl_time_stamp = ktime_set(0, 0);
 	lrbp->compl_time_stamp_local_clock = 0;
 	ufshcd_add_command_trace(hba, task_tag, UFS_CMD_SEND);
-	ufshcd_clk_scaling_start_busy(hba);
+	if (lrbp->cmd)
+		ufshcd_clk_scaling_start_busy(hba);
 	if (unlikely(ufshcd_should_inform_monitor(hba, lrbp)))
 		ufshcd_start_monitor(hba, lrbp);
 
@@ -5405,7 +5406,6 @@ void ufshcd_compl_one_cqe(struct ufs_hba *hba, int task_tag,
 				lrbp->utr_descriptor_ptr->header.ocs = ocs;
 			}
 			complete(hba->dev_cmd.complete);
-			ufshcd_clk_scaling_update_busy(hba);
 		}
 	}
 }
-- 
2.18.0




More information about the Linux-mediatek mailing list