Hi Christian, On Sat Aug 30, 2025 at 1:51 PM CEST, Christian Hewitt wrote: > From: Alex Bee > > Add GPU powerdomain, opp-table, and cooling map nodes for the Mali > GPU on the RK3328 SoC. Opp-table frequencies are sourced from the I very recently saw a patch somewhere with these changes and wondered why it wouldn't be sent upstream, so thanks for doing exactly that! > Signed-off-by: Alex Bee > Signed-off-by: Christian Hewitt > --- > > arch/arm64/boot/dts/rockchip/rk3328.dtsi | 39 +++++++++++++++++++++++- > 1 file changed, 38 insertions(+), 1 deletion(-) > > diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi > index 7d992c3c01ce..b99c78ecc4a9 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi > +++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi > @@ -331,6 +331,11 @@ power: power-controller { > #address-cells = <1>; > #size-cells = <0>; > > + power-domain@RK3328_PD_GPU { > + reg = ; > + clocks = <&cru ACLK_GPU>; > + #power-domain-cells = <0>; > + }; > power-domain@RK3328_PD_HEVC { > reg = ; > clocks = <&cru SCLK_VENC_CORE>; > @@ -570,9 +575,13 @@ map0 { > <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; > contribution = <4096>; > }; > + map1 { > + trip = <&target>; > + cooling-device = <&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; > + contribution = <4096>; > + }; > }; > }; > - > }; > > tsadc: tsadc@ff250000 { > @@ -651,7 +660,35 @@ gpu: gpu@ff300000 { > "ppmmu1"; > clocks = <&cru ACLK_GPU>, <&cru ACLK_GPU>; > clock-names = "bus", "core"; > + operating-points-v2 = <&gpu_opp_table>; > + power-domains = <&power RK3328_PD_GPU>; > resets = <&cru SRST_GPU_A>; > + #cooling-cells = <2>; > + }; > + > + gpu_opp_table: gpu-opp-table { As noticed by Rob's bot, this node name is incorrect. If you do ``s/gpu-opp-table/opp-table-gpu/`` and move it to above the 'pinctrl' node, then DTB validation succeeds. Cheers, Diederik > + compatible = "operating-points-v2"; > + opp-200000000 { > + opp-hz = /bits/ 64 <200000000>; > + opp-microvolt = <1075000>; > + }; > + > + opp-300000000 { > + opp-hz = /bits/ 64 <300000000>; > + opp-microvolt = <1075000>; > + }; > + > + opp-400000000 { > + opp-hz = /bits/ 64 <400000000>; > + opp-microvolt = <1075000>; > + }; > + > + opp-500000000 { > + /* causes stability issues */ > + opp-hz = /bits/ 64 <500000000>; > + opp-microvolt = <1150000>; > + status = "disabled"; > + }; > }; > > h265e_mmu: iommu@ff330200 {