mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Ziqi Chen <quic_ziqichen@quicinc.com>
To: Neil Armstrong <neil.armstrong@linaro.org>,
	Luca Weiss <luca.weiss@fairphone.com>, <quic_cang@quicinc.com>,
	<bvanassche@acm.org>, <mani@kernel.org>, <beanhuo@micron.com>,
	<avri.altman@wdc.com>, <junwoo80.lee@samsung.com>,
	<martin.petersen@oracle.com>, <quic_nguyenb@quicinc.com>,
	<quic_nitirawa@quicinc.com>, <quic_rampraka@quicinc.com>,
	<konrad.dybcio@oss.qualcomm.com>
Cc: <linux-arm-msm@vger.kernel.org>, <linux-scsi@vger.kernel.org>,
	"Manivannan Sadhasivam" <manivannan.sadhasivam@linaro.org>,
	"James E.J. Bottomley" <James.Bottomley@hansenpartnership.com>,
	open list <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v2 2/3] scsi: ufs: qcom: Map devfreq OPP freq to UniPro Core Clock freq
Date: Thu, 8 May 2025 18:42:40 +0800	[thread overview]
Message-ID: <933da6f7-c53b-4d29-9198-016b95d7dc9c@quicinc.com> (raw)
In-Reply-To: <7ccbd722-c99a-43b3-9ceb-4c207521822d@linaro.org>



On 5/7/2025 7:59 PM, neil.armstrong@linaro.org wrote:
> On 07/05/2025 11:09, Ziqi Chen wrote:
>> Hi Luca,
>>
>> On 5/7/2025 4:19 PM, Luca Weiss wrote:
>>> Hi Ziqi,
>>>
>>> On Wed May 7, 2025 at 9:44 AM CEST, Ziqi Chen wrote:
>>>> From: Can Guo <quic_cang@quicinc.com>
>>>>
>>>> On some platforms, the devfreq OPP freq may be different than the 
>>>> unipro
>>>> core clock freq. Implement ufs_qcom_opp_freq_to_clk_freq() and use 
>>>> it to
>>>> find the unipro core clk freq.
>>>>
>>>> Signed-off-by: Can Guo <quic_cang@quicinc.com>
>>>> Co-developed-by: Ziqi Chen <quic_ziqichen@quicinc.com>
>>>> Signed-off-by: Ziqi Chen <quic_ziqichen@quicinc.com>
>>>> ---
>>>>   drivers/ufs/host/ufs-qcom.c | 81 +++++++++++++++++++++++++++++++ 
>>>> +-----
>>>>   1 file changed, 71 insertions(+), 10 deletions(-)
>>>>
>>>> diff --git a/drivers/ufs/host/ufs-qcom.c b/drivers/ufs/host/ufs-qcom.c
>>>> index 7f10926100a5..804c8ccd8d03 100644
>>>> --- a/drivers/ufs/host/ufs-qcom.c
>>>> +++ b/drivers/ufs/host/ufs-qcom.c
>>>> +static unsigned long ufs_qcom_opp_freq_to_clk_freq(struct ufs_hba 
>>>> *hba,
>>>> +                                                   unsigned long 
>>>> freq, char *name)
>>>> +{
>>>> +    struct ufs_clk_info *clki;
>>>> +    struct dev_pm_opp *opp;
>>>> +    unsigned long clk_freq;
>>>> +    int idx = 0;
>>>> +    bool found = false;
>>>> +
>>>> +    opp = dev_pm_opp_find_freq_exact_indexed(hba->dev, freq, 0, true);
>>>> +    if (IS_ERR(opp)) {
>>>> +        dev_err(hba->dev, "Failed to find OPP for exact frequency 
>>>> %lu\n", freq);
>>>
>>> I'm hitting this print on bootup:
>>>
>>> [    0.512515] ufshcd-qcom 1d84000.ufshc: Failed to find OPP for 
>>> exact frequency 18446744073709551615
>>> [    0.512571] ufshcd-qcom 1d84000.ufshc: Failed to find OPP for 
>>> exact frequency 18446744073709551615
>>>
>>> Doesn't look like it's intended? The number is (2^64 - 1)
>>>
>> Yes, this is expected. During link startup, the frequency
>> ULONG_MAX will be passed to ufs_qcom_set_core_clk_ctrl() and
>> ufs_qcom_cfg_timer(). This frequency cannot be found through the API
>> dev_pm_opp_find_freq_exact_indexed(). Therefore, we handle the
>> frequency ULONG_MAX separately within Ufs_qcom_set_core_clk_ctrl()
>> and ufs_qcom_cfg_timer().
>>
>> This print only be print twice during link startup. If you think print
>> such print during bootup is not make sense, I can improve the code and
>> update a new vwesion.
> 
> I think just don't call ufs_qcom_opp_freq_to_clk_freq() if freq==ULONG_MAX
> 
Thanks Neil,  yes, it is a way , let me discuss internally and update 
new version.

BRs,
Ziqi

> Neil
> 
>>
>> BRs.
>> Ziqi
>>
>>> Regards
>>> Luca
>>>
>>
>>
> 


  reply	other threads:[~2025-05-08 10:43 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20250507074415.2451940-1-quic_ziqichen@quicinc.com>
2025-05-07  7:44 ` [PATCH v2 1/3] scsi: ufs: qcom: Check gear against max gear in vop freq_to_gear() Ziqi Chen
2025-05-08  9:05   ` Bean Huo
2025-05-08 15:30   ` Konrad Dybcio
2025-05-09  6:29     ` Ziqi Chen
2025-05-07  7:44 ` [PATCH v2 2/3] scsi: ufs: qcom: Map devfreq OPP freq to UniPro Core Clock freq Ziqi Chen
2025-05-07  8:19   ` Luca Weiss
2025-05-07  9:09     ` Ziqi Chen
2025-05-07  9:59       ` Luca Weiss
2025-05-08 10:39         ` Ziqi Chen
2025-05-07 11:59       ` neil.armstrong
2025-05-08 10:42         ` Ziqi Chen [this message]
2025-05-08  9:21   ` Bean Huo
2025-05-09  5:33     ` Ziqi Chen
2025-05-07  7:44 ` [PATCH v2 3/3] scsi: ufs: qcom: Call ufs_qcom_cfg_timers() in clock scaling path Ziqi Chen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=933da6f7-c53b-4d29-9198-016b95d7dc9c@quicinc.com \
    --to=quic_ziqichen@quicinc.com \
    --cc=James.Bottomley@hansenpartnership.com \
    --cc=avri.altman@wdc.com \
    --cc=beanhuo@micron.com \
    --cc=bvanassche@acm.org \
    --cc=junwoo80.lee@samsung.com \
    --cc=konrad.dybcio@oss.qualcomm.com \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=luca.weiss@fairphone.com \
    --cc=mani@kernel.org \
    --cc=manivannan.sadhasivam@linaro.org \
    --cc=martin.petersen@oracle.com \
    --cc=neil.armstrong@linaro.org \
    --cc=quic_cang@quicinc.com \
    --cc=quic_nguyenb@quicinc.com \
    --cc=quic_nitirawa@quicinc.com \
    --cc=quic_rampraka@quicinc.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®