[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <12650361d3a0e0444e9e10e26c5d5597@mainlining.org>
Date: Wed, 31 Dec 2025 15:50:13 +0100
From: barnabas.czeman@...nlining.org
To: Konrad Dybcio <konrad.dybcio@....qualcomm.com>
Cc: Bjorn Andersson <andersson@...nel.org>, Mathieu Poirier
<mathieu.poirier@...aro.org>, Rob Herring <robh@...nel.org>, Krzysztof
Kozlowski <krzk+dt@...nel.org>, Conor Dooley <conor+dt@...nel.org>, Stephan
Gerhold <stephan@...hold.net>, linux-arm-msm@...r.kernel.org,
linux-remoteproc@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 3/9] remoteproc: qcom_q6v5_mss: Add MDM9607
On 2025-12-31 13:27, Konrad Dybcio wrote:
> On 12/31/25 3:29 AM, Barnabás Czémán wrote:
>> From: Stephan Gerhold <stephan@...hold.net>
>>
>> Add support for MDM9607 MSS it have different ACC settings
>> and it needs mitigation for inrush current issue.
>>
>> Signed-off-by: Stephan Gerhold <stephan@...hold.net>
>> [Reword the commit, add has_ext_bhs_reg]
>> Signed-off-by: Barnabás Czémán <barnabas.czeman@...nlining.org>
>> ---
>
> [...]
>
>> val = readl(qproc->reg_base + mem_pwr_ctl);
>> - for (; i >= 0; i--) {
>> + for (; i >= reverse; i--) {
>> val |= BIT(i);
>> writel(val, qproc->reg_base + mem_pwr_ctl);
>> /*
>> @@ -833,6 +847,12 @@ static int q6v5proc_reset(struct q6v5 *qproc)
>> val |= readl(qproc->reg_base + mem_pwr_ctl);
>> udelay(1);
>> }
>> + for (i = 0; i < reverse; i++) {
>> + val |= BIT(i);
>> + writel(val, qproc->reg_base + mem_pwr_ctl);
>> + val |= readl(qproc->reg_base + mem_pwr_ctl);
>
> Downstream doesn't do val |= readl() in the inrush-current-mitigation
> case
I have checked you are right, thanks. 1_8 reset sequence have it but
1_8_inrush_current have not.
As i understanding from downstream it should be handled in both for
loop, i could add an if for
handle this or implement 1_8_inrush_current reset separately. Which one
would be the preferred?
>
> Konrad
Powered by blists - more mailing lists