Re: [PATCH v2 0/8] Support Multi-frequency scale for UFS

From: neil . armstrong
Date: Thu Jan 23 2025 - 15:13:39 EST


Hi,

On 22/01/2025 11:02, Ziqi Chen wrote:
With OPP V2 enabled, devfreq can scale clocks amongst multiple frequency
plans. However, the gear speed is only toggled between min and max during
clock scaling. Enable multi-level gear scaling by mapping clock frequencies
to gear speeds, so that when devfreq scales clock frequencies we can put
the UFS link at the appropraite gear speeds accordingly.

This series has been tested on below platforms -
sm8550 mtp + UFS3.1
SM8650 MTP + UFS3.1
SM8750 MTP + UFS4.0

Thanks, could you be more precise on how you tested this feature ? how did you exercise the gear changes and check that is cales correctly ?

Thanks,
Neil


v1 -> v2:
1. Withdraw old patch 8/8 "ARM: dts: msm: Use Operation Points V2 for UFS on SM8650"
2. Add new patch 8/8 "ABI: sysfs-driver-ufs: Add missing UFS sysfs addributes"
3. Modify commit message for "scsi: ufs: core: Pass target_freq to clk_scale_notify() vops" and "scsi: ufs: qcom: Pass target_freq to clk scale pre and post change"
4. In "scsi: ufs: qcom: Pass target_freq to clk scale pre and post change", use common Macro HZ_PER_MHZ in function ufs_qcom_set_core_clk_ctrl()
5. In "scsi: ufs: qcom: Implement the freq_to_gear_speed() vops", print out freq and gear info as debugging message
6. In "scsi: ufs: core: Enable multi-level gear scaling", rename the lable "do_pmc" to "config_pwr_mode"
7. In "scsi: ufs: core: Toggle Write Booster during clock", initialize the local variables "wb_en" as "false"

Can Guo (6):
scsi: ufs: core: Pass target_freq to clk_scale_notify() vops
scsi: ufs: qcom: Pass target_freq to clk scale pre and post change
scsi: ufs: core: Add a vops to map clock frequency to gear speed
scsi: ufs: qcom: Implement the freq_to_gear_speed() vops
scsi: ufs: core: Enable multi-level gear scaling
scsi: ufs: core: Toggle Write Booster during clock scaling base on
gear speed

Ziqi Chen (2):
scsi: ufs: core: Check if scaling up is required when disable clkscale
ABI: sysfs-driver-ufs: Add missing UFS sysfs addributes

Documentation/ABI/testing/sysfs-driver-ufs | 31 ++++++++++
drivers/ufs/core/ufshcd-priv.h | 17 +++++-
drivers/ufs/core/ufshcd.c | 71 ++++++++++++++++------
drivers/ufs/host/ufs-mediatek.c | 1 +
drivers/ufs/host/ufs-qcom.c | 66 +++++++++++++++-----
include/ufs/ufshcd.h | 8 ++-
6 files changed, 159 insertions(+), 35 deletions(-)