[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4831d12b-a42a-464a-a70f-e0e40cf4ae4b@oss.qualcomm.com>
Date: Thu, 23 Oct 2025 10:16:48 +0530
From: "Maulik Shah (mkshah)" <maulik.shah@....qualcomm.com>
To: Bjorn Andersson <andersson@...nel.org>,
Kamal Wadhwa <kamal.wadhwa@....qualcomm.com>
Cc: Konrad Dybcio <konradybcio@...nel.org>,
Liam Girdwood <lgirdwood@...il.com>, Mark Brown <broonie@...nel.org>,
linux-arm-msm@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 2/4] soc: qcom: rpmh: Add support to read back resource
settings
On 10/23/2025 2:51 AM, Bjorn Andersson wrote:
> On Wed, Oct 22, 2025 at 02:38:54AM +0530, Kamal Wadhwa wrote:
>> From: Maulik Shah <maulik.shah@....qualcomm.com>
>>
>> All rpmh_*() APIs so far have supported placing votes for various
>> resource settings but the H/W also have option to read resource
>> settings.
>>
>> This change adds a new rpmh_read() API to allow clients
>> to read back resource setting from H/W. This will be useful for
>> clients like regulators, which currently don't have a way to know
>> the settings applied during bootloader stage.
>>
>
> Allow me to express my disappointment over the fact that you sat on this
> for 7 years!
This was a dead API (even in downstream) with no user since SDM845/ 7 years.
Read support was eventually removed from downstream driver too for the same reason.
There were early discussions to remove read support from RSC H/W, due to lack of users.
Its not realized yet and all SoCs still supports read.
Now we have a regulator client requirement to read resource votes and reason to bring back this API.
>
>> Link: https://lore.kernel.org/r/20250623-add-rpmh-read-support-v1-1-ae583d260195@oss.qualcomm.com
>
> Why is there a Link here?
I will address this in next revision.
>
>> Signed-off-by: Maulik Shah <maulik.shah@....qualcomm.com>
>> Signed-off-by: Kamal Wadhwa <kamal.wadhwa@....qualcomm.com>
>> ---
>> drivers/soc/qcom/rpmh-rsc.c | 13 +++++++++++--
>> drivers/soc/qcom/rpmh.c | 47 +++++++++++++++++++++++++++++++++++++++++----
>> include/soc/qcom/rpmh.h | 5 +++++
>> include/soc/qcom/tcs.h | 2 ++
>> 4 files changed, 61 insertions(+), 6 deletions(-)
>>
> [..]
>> diff --git a/drivers/soc/qcom/rpmh.c b/drivers/soc/qcom/rpmh.c
> [..]
>> +/**
>> + * rpmh_read: Read a resource value
>> + *
>> + * @dev: The device making the request
>> + * @cmd: The payload having address of resource to read
>> + *
>> + * Reads the value for the resource address given in tcs_cmd->addr
>> + * and returns the tcs_cmd->data filled with same.
>> + *
>> + * May sleep. Do not call from atomic contexts.
>
> * Context: May sleep...
I will address this in next revision.
Thanks,
Maulik>
> Regards,
> Bjorn
>
>> + *
>> + * Return: 0 on success, negative errno on failure
>> + */
>> +int rpmh_read(const struct device *dev, struct tcs_cmd *cmd)
Powered by blists - more mailing lists