[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87ba595e-353b-4c8c-b398-9f8245336f05@gmail.com>
Date: Fri, 5 Dec 2025 20:19:57 -0600
From: "Alex G." <mr.nuke.me@...il.com>
To: Bjorn Andersson <andersson@...nel.org>
Cc: mathieu.poirier@...aro.org, linux-arm-msm@...r.kernel.org,
linux-remoteproc@...r.kernel.org, p.zabel@...gutronix.de,
linux-kernel@...r.kernel.org, konrad.dybcio@....qualcomm.com
Subject: Re: [PATCH 1/2] remoteproc: qcom_q6v5_wcss: fix parsing of
qcom,halt-regs
On 11/29/25 3:18 PM, Bjorn Andersson wrote:
> On Fri, Nov 28, 2025 at 07:32:05PM -0600, Alexandru Gagniuc wrote:
>> The "qcom,halt-regs" consists of a phandle reference followed by th
>> three offsets within syscon for halt registers. Thus, we need to
>> request 4 integers from of_property_read_variable_u32_array(), with
>> the halt_reg ofsets at indexes 1, 2, and 3. Offset 0 is the phandle.
>>
>> With MAX_HALT_REG at 3, of_property_read_variable_u32_array() returns
>> -EOVERFLOW, causing .probe() to fail.
>>
>> Increase MAX_HALT_REG to 4, and update the indexes accordingly.
>>
>
> Good catch, thanks
>
> Fixes: 0af65b9b915e ("remoteproc: qcom: wcss: Add non pas wcss Q6 support for QCS404")
Hi Bjorn,
I noticed that v1 of this series is included in the pull for v6.19 [1],
even though there is a v2 [2] with some of your and Konrad's feedback
included. I wanted to check if this is your intention. I am okay to go
with v1, and am happy to submit any further improvements after the merge
window.
Alex
[1]
https://lore.kernel.org/linux-remoteproc/20251205200342.119676-1-andersson@kernel.org/T/#u
[2]
lore.kernel.org/linux-remoteproc/20251202162626.1135615-1-mr.nuke.me@...il.com/#r>
Regards,
> Bjorn
>
>> Signed-off-by: Alexandru Gagniuc <mr.nuke.me@...il.com>
>> ---
>> drivers/remoteproc/qcom_q6v5_wcss.c | 8 ++++----
>> 1 file changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/remoteproc/qcom_q6v5_wcss.c b/drivers/remoteproc/qcom_q6v5_wcss.c
>> index 07c88623f5978..23ec87827d4f8 100644
>> --- a/drivers/remoteproc/qcom_q6v5_wcss.c
>> +++ b/drivers/remoteproc/qcom_q6v5_wcss.c
>> @@ -85,7 +85,7 @@
>> #define TCSR_WCSS_CLK_MASK 0x1F
>> #define TCSR_WCSS_CLK_ENABLE 0x14
>>
>> -#define MAX_HALT_REG 3
>> +#define MAX_HALT_REG 4
>> enum {
>> WCSS_IPQ8074,
>> WCSS_QCS404,
>> @@ -864,9 +864,9 @@ static int q6v5_wcss_init_mmio(struct q6v5_wcss *wcss,
>> return -EINVAL;
>> }
>>
>> - wcss->halt_q6 = halt_reg[0];
>> - wcss->halt_wcss = halt_reg[1];
>> - wcss->halt_nc = halt_reg[2];
>> + wcss->halt_q6 = halt_reg[1];
>> + wcss->halt_wcss = halt_reg[2];
>> + wcss->halt_nc = halt_reg[3];
>>
>> return 0;
>> }
>> --
>> 2.45.1
>>
Powered by blists - more mailing lists