On 27.01.2024 18:32, Luca Weiss wrote: > On Freitag, 26. Jänner 2024 00:50:43 CET Konrad Dybcio wrote: >> On 1/25/24 22:56, Luca Weiss wrote: >>> From: Vladimir Lypak <vladimir.lypak@xxxxxxxxx> >>> >>> Add the GPU node for the Adreno 506 found on this family of SoCs. The >>> clock speeds are a bit different per SoC variant, SDM450 maxes out at >>> 600MHz while MSM8953 (= SDM625) goes up to 650MHz and SDM632 goes up to >>> 725MHz. >>> >>> To achieve this, create a new sdm450.dtsi to hold the 600MHz OPP and >>> use the new dtsi for sdm450-motorola-ali. >>> >>> Signed-off-by: Vladimir Lypak <vladimir.lypak@xxxxxxxxx> >>> Co-developed-by: Luca Weiss <luca@xxxxxxxxx> >>> Signed-off-by: Luca Weiss <luca@xxxxxxxxx> >>> --- >>> >>> arch/arm64/boot/dts/qcom/msm8953.dtsi | 115 >>> +++++++++++++++++++++++ >>> arch/arm64/boot/dts/qcom/sdm450-motorola-ali.dts | 2 +- >>> arch/arm64/boot/dts/qcom/sdm450.dtsi | 14 +++ >>> arch/arm64/boot/dts/qcom/sdm632.dtsi | 8 ++ >>> 4 files changed, 138 insertions(+), 1 deletion(-) >>> >>> diff --git a/arch/arm64/boot/dts/qcom/msm8953.dtsi >>> b/arch/arm64/boot/dts/qcom/msm8953.dtsi index 91d083871ab0..1fe0c0c4fd15 >>> 100644 >>> --- a/arch/arm64/boot/dts/qcom/msm8953.dtsi >>> +++ b/arch/arm64/boot/dts/qcom/msm8953.dtsi >>> @@ -1046,6 +1046,94 @@ mdss_dsi1_phy: phy@1a96400 { >>> >>> }; >>> >>> }; >>> >>> + gpu: gpu@1c00000 { >>> + compatible = "qcom,adreno-506.0", "qcom,adreno"; >>> + reg = <0x01c00000 0x40000>; >>> + reg-names = "kgsl_3d0_reg_memory"; >>> + interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; >>> + >>> + clocks = <&gcc GCC_OXILI_GFX3D_CLK>, >>> + <&gcc GCC_OXILI_AHB_CLK>, >>> + <&gcc GCC_BIMC_GFX_CLK>, >>> + <&gcc GCC_BIMC_GPU_CLK>, >>> + <&gcc GCC_OXILI_TIMER_CLK>, >>> + <&gcc GCC_OXILI_AON_CLK>; >>> + clock-names = "core", >>> + "iface", >>> + "mem_iface", >>> + "alt_mem_iface", >>> + "rbbmtimer", >>> + "alwayson"; >>> + power-domains = <&gcc OXILI_GX_GDSC>; >>> + >>> + iommus = <&gpu_iommu 0>; >>> + operating-points-v2 = <&gpu_opp_table>; >>> + >>> + #cooling-cells = <2>; >>> + >>> + status = "disabled"; >>> + >>> + zap-shader { >>> + memory-region = <&zap_shader_region>; >>> + }; >>> + >>> + gpu_opp_table: opp-table { >>> + compatible = "operating-points-v2"; >>> + >>> + opp-19200000 { >>> + opp-hz = /bits/ 64 <19200000>; >>> + opp-supported-hw = <0xff>; >>> + required-opps = <&rpmpd_opp_min_svs>; >>> + }; >> >> If you remove all OPPs but this one, can the GPU still spit out pixels? > > Yep, phosh is starting and is rendering at a few fps. > > fairphone-fp3:~$ cat /sys/devices/platform/soc@0/1c00000.gpu/devfreq/1c00000.gpu/min_freq > 19200000 > fairphone-fp3:~$ cat /sys/devices/platform/soc@0/1c00000.gpu/devfreq/1c00000.gpu/max_freq > 19200000 > fairphone-fp3:~$ cat /sys/devices/platform/soc@0/1c00000.gpu/devfreq/1c00000.gpu/cur_freq > 19200000 Interesting.. Reviewed-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxx> Konrad