Re: [PATCH V2] scsi: ufs: ufs-qcom: Update UFS devfreq Parameters

From: Manivannan Sadhasivam
Date: Thu Jul 20 2023 - 04:26:37 EST


On Sun, Jul 16, 2023 at 01:19:07PM +0530, Nitin Rawat wrote:
> To support the periodic polling mode without stop caused by CPU idle
> state, enable delayed timer as default instead of deferrable timer
> for qualcomm platforms.

How about,

"Devfreq uses the default DEVFREQ_TIMER_DEFERRABLE mode which uses the deferred
timer for scheduling the devfreq load monitor function. This causes the load
monitoring to be done only with non-idle CPUs and not making use of the idle
CPUs. Hence, use the DEVFREQ_TIMER_DELAYED mode which uses the delayed timer
thereby making use of idle CPUs as well for load monitoring."

> And change UFS devfreq downdifferential threshold to 65 for less
> aggressive downscaling.
>

This change needs to be done in a separate patch. Also please provide any
benchmark if available to justify the patch.

> Signed-off-by: Nitin Rawat <quic_nitirawa@xxxxxxxxxxx>
> Signed-off-by: Asutosh Das <quic_asutoshd@xxxxxxxxxxx>

Your signed-off-by should come last, as you are the one sending this patch.

- Mani

> ---
>
> Changes in v2:
> - Realigned the commit text
>
> drivers/ufs/host/ufs-qcom.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/ufs/host/ufs-qcom.c b/drivers/ufs/host/ufs-qcom.c
> index 82d02e7f3b4f..a15815c951ca 100644
> --- a/drivers/ufs/host/ufs-qcom.c
> +++ b/drivers/ufs/host/ufs-qcom.c
> @@ -1388,8 +1388,9 @@ static void ufs_qcom_config_scaling_param(struct ufs_hba *hba,
> struct devfreq_simple_ondemand_data *d)
> {
> p->polling_ms = 60;
> + p->timer = DEVFREQ_TIMER_DELAYED;
> d->upthreshold = 70;
> - d->downdifferential = 5;
> + d->downdifferential = 65;
> }
> #else
> static void ufs_qcom_config_scaling_param(struct ufs_hba *hba,
> --
> 2.17.1
>

--
மணிவண்ணன் சதாசிவம்