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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




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";



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux