On Mon, Jul 17, 2023 at 09:18:21PM +0200, Konrad Dybcio wrote: > On 17.07.2023 19:23, Stephan Gerhold wrote: > > On Mon, Jul 17, 2023 at 07:11:33PM +0200, Konrad Dybcio wrote: > >> On 17.07.2023 18:56, Stephan Gerhold wrote: > >>> On Mon, Jul 17, 2023 at 06:50:18PM +0200, Konrad Dybcio wrote: > >>>> On 17.07.2023 18:28, Stephan Gerhold wrote: > >>>>> On Mon, Jul 17, 2023 at 05:19:22PM +0200, Konrad Dybcio wrote: > >>>>>> The GPU_CC block is powered by VDD_CX. Describe that. > >>>>>> > >>>>>> Signed-off-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxx> > >>>>>> --- > >>>>>> arch/arm64/boot/dts/qcom/sm6115.dtsi | 2 ++ > >>>>>> 1 file changed, 2 insertions(+) > >>>>>> > >>>>>> diff --git a/arch/arm64/boot/dts/qcom/sm6115.dtsi b/arch/arm64/boot/dts/qcom/sm6115.dtsi > >>>>>> index 29b5b388cd94..bfaaa1801a4d 100644 > >>>>>> --- a/arch/arm64/boot/dts/qcom/sm6115.dtsi > >>>>>> +++ b/arch/arm64/boot/dts/qcom/sm6115.dtsi > >>>>>> @@ -1430,6 +1430,8 @@ gpucc: clock-controller@5990000 { > >>>>>> clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, > >>>>>> <&gcc GCC_GPU_GPLL0_CLK_SRC>, > >>>>>> <&gcc GCC_GPU_GPLL0_DIV_CLK_SRC>; > >>>>>> + power-domains = <&rpmpd SM6115_VDDCX>; > >>>>>> + required-opps = <&rpmpd_opp_low_svs>; > >>>>> > >>>>> Where is this required-opp coming from? The clocks in gpucc seem to have > >>>>> different voltage requirements depending on the rates, but we usually > >>>>> handle that in the OPP tables of the consumer. > >>>> The only lower levels defined for this SoC are VDD_MIN and VDD_RET, > >>>> but quite obviously the GPU won't work then > >>>> > >>> > >>> The levels needed for the GPU clocks to run should be in the GPU OPP > >>> table though, just like e.g. sdhc2_opp_table for the SDCC clocks. > >>> > >>> I still don't really understand why this is specified here. :) > >> The GPU_CC block needs this rail to be at a certain power level for > >> register access. This describes that requirement. > >> > > > > Can you show where this is defined downstream? On a quick look I didn't > > see something like that anywhere. Or is this from some secret > > documentation? > As far as downstream goes, you can notice that no branch's or RCG's > vdd tables ever define a level lower than the one I mentioned. > As far as I can tell the vdd tables are only used when the clock is actually enabled though, not for writing to registers while they are disabled. Stephan