[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <46aa5bbe-a7dd-4561-9d4a-0367779f0680@quicinc.com>
Date: Fri, 7 Feb 2025 11:29:04 +0800
From: Ziqi Chen <quic_ziqichen@...cinc.com>
To: <neil.armstrong@...aro.org>, <quic_cang@...cinc.com>, <bvanassche@....org>,
<mani@...nel.org>, <beanhuo@...ron.com>, <avri.altman@....com>,
<junwoo80.lee@...sung.com>, <martin.petersen@...cle.com>,
<quic_nguyenb@...cinc.com>, <quic_nitirawa@...cinc.com>,
<quic_rampraka@...cinc.com>
CC: <linux-arm-msm@...r.kernel.org>, <linux-scsi@...r.kernel.org>,
"Matthias
Brugger" <matthias.bgg@...il.com>,
AngeloGioacchino Del Regno
<angelogioacchino.delregno@...labora.com>,
"open list:ARM/Mediatek SoC
support:Keyword:mediatek" <linux-kernel@...r.kernel.org>,
"moderated
list:ARM/Mediatek SoC support:Keyword:mediatek"
<linux-arm-kernel@...ts.infradead.org>,
"moderated list:ARM/Mediatek SoC
support:Keyword:mediatek" <linux-mediatek@...ts.infradead.org>
Subject: Re: [PATCH v3 0/8] Support Multi-frequency scale for UFS
On 2/6/2025 5:53 PM, neil.armstrong@...aro.org wrote:
> On 03/02/2025 09:11, 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
>>
>> 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"
>>
>> v2 -> v3:
>> 1. Change 'vops' to 'vop' in all commit message
>> 2. keep the indentation consistent for clk_scale_notify() definition.
>> 3. In "scsi: ufs: core: Add a vop to map clock frequency to gear
>> speed", "scsi: ufs: qcom: Implement the freq_to_gear_speed() vop"
>> and "scsi: ufs: core: Enable multi-level gear scaling", remove the
>> parameter 'gear' and use it as return result in function
>> freq_to_gear_speed()
>> 4. In "scsi: ufs: qcom: Implement the freq_to_gear_speed(), removed
>> the variable 'ret' in function ufs_qcom_freq_to_gear_speed()
>> 5. In "scsi: ufs: core: Enable multi-level gear scaling", use
>> assignment instead memcpy() in function ufshcd_scale_gear()
>> 6. Improve the grammar of attributes' descriptions in “ABI: sysfs-
>> driver-ufs: Add missing UFS sysfs attributes”
>> 7. Typo fixed for some commit messages.
>>
>> Can Guo (6):
>> scsi: ufs: core: Pass target_freq to clk_scale_notify() vop
>> scsi: ufs: qcom: Pass target_freq to clk scale pre and post change
>> scsi: ufs: core: Add a vop to map clock frequency to gear speed
>> scsi: ufs: qcom: Implement the freq_to_gear_speed() vop
>> 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 attributes
>>
>> Documentation/ABI/testing/sysfs-driver-ufs | 33 ++++++++++
>> drivers/ufs/core/ufshcd-priv.h | 15 ++++-
>> drivers/ufs/core/ufshcd.c | 76 +++++++++++++++++-----
>> drivers/ufs/host/ufs-mediatek.c | 1 +
>> drivers/ufs/host/ufs-qcom.c | 62 ++++++++++++++----
>> include/ufs/ufshcd.h | 9 ++-
>> 6 files changed, 160 insertions(+), 36 deletions(-)
>>
>
> Tested-by: Neil Armstrong <neil.armstrong@...aro.org> # on SM8550-QRD
> Tested-by: Neil Armstrong <neil.armstrong@...aro.org> # on SM8550-HDK
> Tested-by: Neil Armstrong <neil.armstrong@...aro.org> # on SM8650-HDK
>
> I added some traces and played with devfreq max_freq while copying data
> from the UFS disk, no issues observed.
>
> Neil
Thank Neil for your test result.
-Ziqi
Powered by blists - more mailing lists