From e490b62fedc4603f249051e5327b89574cb02057 Mon Sep 17 00:00:00 2001 From: Peter Wang Date: Wed, 23 Aug 2023 17:29:46 +0800 Subject: [PATCH] FROMLIST: ufs: core: only suspend clock scaling if scale down If clock scale up and suspend clock scaling, ufs will keep high performance/power mode but no read/write requests on going. It is logic wrong and have power concern. Bug: 298004596 Link: https://lore.kernel.org/all/20230831130826.5592-2-peter.wang@mediatek.com/ Change-Id: I950ec28a506d7eb83c575d9bd482c41869e73848 Signed-off-by: Peter Wang --- drivers/ufs/core/ufshcd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/ufs/core/ufshcd.c b/drivers/ufs/core/ufshcd.c index 1df28ecf6226..a1ab4a71eab1 100644 --- a/drivers/ufs/core/ufshcd.c +++ b/drivers/ufs/core/ufshcd.c @@ -1495,7 +1495,7 @@ static int ufshcd_devfreq_target(struct device *dev, ktime_to_us(ktime_sub(ktime_get(), start)), ret); out: - if (sched_clk_scaling_suspend_work) + if (sched_clk_scaling_suspend_work && !scale_up) queue_work(hba->clk_scaling.workq, &hba->clk_scaling.suspend_work);