[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a8952b46-94b6-4fe5-a5be-d69aa41d44cd@kernel.org>
Date: Fri, 7 Nov 2025 08:02:00 +0100
From: Krzysztof Kozlowski <krzk@...nel.org>
To: Dmitry Baryshkov <dmitry.baryshkov@....qualcomm.com>,
Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
Cc: Rob Herring <robh@...nel.org>, Saravana Kannan <saravanak@...gle.com>,
"Rafael J. Wysocki" <rafael@...nel.org>,
Viresh Kumar <viresh.kumar@...aro.org>,
Matthias Brugger <matthias.bgg@...il.com>,
AngeloGioacchino Del Regno <angelogioacchino.delregno@...labora.com>,
Yangtao Li <tiny.windzz@...il.com>, Chen-Yu Tsai <wens@...nel.org>,
Jernej Skrabec <jernej.skrabec@...il.com>,
Samuel Holland <samuel@...lland.org>,
Lorenzo Pieralisi <lpieralisi@...nel.org>,
Daniel Lezcano <daniel.lezcano@...aro.org>,
Bjorn Andersson <andersson@...nel.org>,
Konrad Dybcio <konradybcio@...nel.org>, Thomas Gleixner
<tglx@...utronix.de>, Nicolas Ferre <nicolas.ferre@...rochip.com>,
Alexandre Belloni <alexandre.belloni@...tlin.com>,
Claudiu Beznea <claudiu.beznea@...on.dev>,
Maximilian Luz <luzmaximilian@...il.com>, Hans de Goede <hansg@...nel.org>,
Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>,
Daniel Lezcano <daniel.lezcano@...nel.org>,
Thierry Reding <thierry.reding@...il.com>,
Jonathan Hunter <jonathanh@...dia.com>, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-pm@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, linux-mediatek@...ts.infradead.org,
linux-sunxi@...ts.linux.dev, linux-arm-msm@...r.kernel.org,
platform-driver-x86@...r.kernel.org, linux-tegra@...r.kernel.org
Subject: Re: [PATCH 11/13] soc: qcom: Simplify with
of_machine_get_match_data()
On 07/11/2025 04:19, Dmitry Baryshkov wrote:
> On Thu, Nov 06, 2025 at 08:07:18PM +0100, Krzysztof Kozlowski wrote:
>> Replace open-coded getting root OF node, matching against it and getting
>> the match data with new of_machine_get_match_data() helper.
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
>>
>> ---
>>
>> Depends on the first OF patch.
>> ---
>> drivers/soc/qcom/qcom_pd_mapper.c | 17 ++---------------
>> 1 file changed, 2 insertions(+), 15 deletions(-)
>>
>> diff --git a/drivers/soc/qcom/qcom_pd_mapper.c b/drivers/soc/qcom/qcom_pd_mapper.c
>> index 1bcbe69688d2..07198d44b559 100644
>> --- a/drivers/soc/qcom/qcom_pd_mapper.c
>> +++ b/drivers/soc/qcom/qcom_pd_mapper.c
>> @@ -613,25 +613,12 @@ static void qcom_pdm_stop(struct qcom_pdm_data *data)
>> static struct qcom_pdm_data *qcom_pdm_start(void)
>> {
>> const struct qcom_pdm_domain_data * const *domains;
>> - const struct of_device_id *match;
>> struct qcom_pdm_data *data;
>> - struct device_node *root;
>> int ret, i;
>>
>> - root = of_find_node_by_path("/");
>> - if (!root)
>> - return ERR_PTR(-ENODEV);
>> -
>> - match = of_match_node(qcom_pdm_domains, root);
>> - of_node_put(root);
>> - if (!match) {
>> - pr_notice("PDM: no support for the platform, userspace daemon might be required.\n");
>> - return ERR_PTR(-ENODEV);
>> - }
>> -
>> - domains = match->data;
>> + domains = of_machine_get_match_data(qcom_pdm_domains);
>> if (!domains) {
>> - pr_debug("PDM: no domains\n");
>> + pr_notice("PDM: no support for the platform or no domains, userspace daemon might be required.\n");
>> return ERR_PTR(-ENODEV);
>> }
>
> Here you are mixing two cases:
> - There is not match in the table (in which case the driver should print
> a notice)
>
> - There is a match in the table, but the data is NULL (the platform
> doesn't have PDM domains). In this case there should be no notice.
Why? Existing code printed notice in both cases. Why refactoring which
tries to keep code functionally equivalent should change it?
Best regards,
Krzysztof
Powered by blists - more mailing lists