Re: [PATCH] arm64: dts: qcom: sc8280xp: Flush RSC sleep & wake votes

From: Konrad Dybcio
Date: Mon May 15 2023 - 05:35:11 EST




On 15.05.2023 04:38, Bjorn Andersson wrote:
> On Sat, May 13, 2023 at 11:09:07AM +0200, Konrad Dybcio wrote:
>>
>>
>> On 12.05.2023 17:04, Bjorn Andersson wrote:
>>> The rpmh driver will cache sleep and wake votes until the cluster
>>> power-domain is about to enter idle, to avoid unnecessary writes. So
>>> associate the apps_rsc with the cluster pd, so that it can be notified
>>> about this event.
>>>
>>> Without this, only AMC votes are being commited.
>> Ouch.
>>
>> Should we make this required: in bindings and add it to all
>> platforms?
>>
>
> I though this was an optimization and in the absence of this callback
> the driver would just write out wake and sleep sets as well. But per the
> current implementation (and perhaps some underlying cause?) it is indeed
> required, if you care about power consumption.
Hm.. since it's not strictly required for operation, would something
like this be fitting?:

oneOf:
- required:
[...]
- power-domains

- required:
[...]
deprecated: true

(if it even works this way)

Konrad
>
>>>
>>> Signed-off-by: Bjorn Andersson <quic_bjorande@xxxxxxxxxxx>
>>> ---
>> Reviewed-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxx>
>> Fixes: 152d1faf1e2f ("arm64: dts: qcom: add SC8280XP platform")
>>
>
> The Fixes sounds reasonable.
>
> Thanks,
> Bjorn
>
>> Konrad
>>> arch/arm64/boot/dts/qcom/sc8280xp.dtsi | 1 +
>>> 1 file changed, 1 insertion(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/qcom/sc8280xp.dtsi b/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
>>> index 8fa9fbfe5d00..5c68f2182c2f 100644
>>> --- a/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
>>> +++ b/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
>>> @@ -3982,6 +3982,7 @@ apps_rsc: rsc@18200000 {
>>> qcom,tcs-config = <ACTIVE_TCS 2>, <SLEEP_TCS 3>,
>>> <WAKE_TCS 3>, <CONTROL_TCS 1>;
>>> label = "apps_rsc";
>>> + power-domains = <&CLUSTER_PD>;
>>>
>>> apps_bcm_voter: bcm-voter {
>>> compatible = "qcom,bcm-voter";