Re: [PATCH 3/5] clk: qcom: common: Attach clock power domains conditionally

From: Jagadeesh Kona
Date: Wed Feb 19 2025 - 06:36:36 EST




On 2/18/2025 10:48 PM, Dmitry Baryshkov wrote:
> On Tue, Feb 18, 2025 at 07:56:48PM +0530, Jagadeesh Kona wrote:
>> Attach clock power domains in qcom_cc_really_probe() only
>> if the clock controller has not already attached to them.
>
> Squash this to the previous patch and call the new function. No need to
> duplicate the code.
>

I tried calling the new function here instead of duplicating code, but that
is leading to below warning since the desc passed to qcom_cc_really_probe()
has a const qualifier and hence we cannot update desc->pd_list inside
qcom_cc_really_probe().

drivers/clk/qcom/common.c:305:33: WARNING : passing argument 2 of ‘qcom_cc_attach_pds’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]

Thanks,
Jagadeesh

>>
>> Signed-off-by: Jagadeesh Kona <quic_jkona@xxxxxxxxxxx>
>> ---
>> drivers/clk/qcom/common.c | 9 ++++++---
>> 1 file changed, 6 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/clk/qcom/common.c b/drivers/clk/qcom/common.c
>> index ec27f70b24bdec24edd2f6b3df0d766fc1cdcbf0..eb7e2a56d1d135f839fd9bd470ba6231ce775a8c 100644
>> --- a/drivers/clk/qcom/common.c
>> +++ b/drivers/clk/qcom/common.c
>> @@ -300,9 +300,12 @@ int qcom_cc_really_probe(struct device *dev,
>> if (!cc)
>> return -ENOMEM;
>>
>> - ret = devm_pm_domain_attach_list(dev, NULL, &cc->pd_list);
>> - if (ret < 0 && ret != -EEXIST)
>> - return ret;
>> + cc->pd_list = desc->pd_list;
>> + if (!cc->pd_list) {
>> + ret = devm_pm_domain_attach_list(dev, NULL, &cc->pd_list);
>> + if (ret < 0 && ret != -EEXIST)
>> + return ret;
>> + }
>>
>> reset = &cc->reset;
>> reset->rcdev.of_node = dev->of_node;
>>
>> --
>> 2.34.1
>>
>