On Mon, May 15, 2023 at 11:34:45AM +0200, Konrad Dybcio wrote: > > > 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?: > I don't think it's required for operation, but the current implementation does require it. So I think we should either require it in the binding to mimic the implementation, or the implementation should handle either case (only with a performance impact) > oneOf: > - required: > [...] > - power-domains > > - required: > [...] > deprecated: true > > (if it even works this way) I don't think it's worth supporting the combinations. Regards, Bjorn > > 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";