drm/msm: Add support for the A750 GPU found on the SM8650 platform Unlike the the very close A740 GPU on the SM8550 SoC, the A750 GPU doesn't have an HWCFG block but a separate register set. The missing registers are added in the a6xx.xml.h file that would require a subsequent sync and the non-existent hwcfg is handled in a6xx_set_hwcg(). The A750 GPU info are added under the adreno_is_a750() macro and the ADRENO_7XX_GEN3 family id. This adds: - the GMU and SMMU bindings - DRM driver changes - DT nodes Dependencies: None Tested using Mesa's !26934 Merge Request [0] on the SM8650-QRD and with kmscube & vkcube to test basic rendering. [0] https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26934 To: Rob Clark <robdclark@gmail.com> To: Abhinav Kumar <quic_abhinavk@quicinc.com> To: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> To: Sean Paul <sean@poorly.run> To: Marijn Suijten <marijn.suijten@somainline.org> To: David Airlie <airlied@gmail.com> To: Daniel Vetter <daniel@ffwll.ch> To: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> To: Maxime Ripard <mripard@kernel.org> To: Thomas Zimmermann <tzimmermann@suse.de> To: Rob Herring <robh@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> To: Will Deacon <will@kernel.org> To: Robin Murphy <robin.murphy@arm.com> To: Joerg Roedel <joro@8bytes.org> To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> Cc: <linux-arm-msm@vger.kernel.org> Cc: <dri-devel@lists.freedesktop.org> Cc: <freedreno@lists.freedesktop.org> Cc: <devicetree@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Cc: <linux-arm-kernel@lists.infradead.org> Cc: <iommu@lists.linux.dev> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Neil Armstrong (5): dt-bindings: display/msm/gmu: Document Adreno 750 GMU dt-bindings: arm-smmu: Document SM8650 GPU SMMU drm: msm: add support for A750 GPU arm64: dts: qcom: sm8650: add GPU nodes arm64: dts: qcom: sm8650-qrd: enable GPU .../devicetree/bindings/display/msm/gmu.yaml | 1 + .../devicetree/bindings/iommu/arm,smmu.yaml | 7 +- arch/arm64/boot/dts/qcom/sm8650-qrd.dts | 8 + arch/arm64/boot/dts/qcom/sm8650.dtsi | 169 +++++++++++++++++++++ drivers/gpu/drm/msm/adreno/a6xx.xml.h | 8 + drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 2 + drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 29 +++- drivers/gpu/drm/msm/adreno/adreno_device.c | 14 ++ drivers/gpu/drm/msm/adreno/adreno_gpu.h | 9 +- 9 files changed, 241 insertions(+), 6 deletions(-) --- base-commit: 84baf172e2fa30d6d6d0fb8ed076b47e836b74f1 change-id: 20240208-topic-sm8650-gpu-489d5e2c2b17 Best regards,