drm/msm/a6xx: Vote for cx gdsc from gpu driver
authorAkhil P Oommen <quic_akhilpo@quicinc.com>
Mon, 2 Jan 2023 10:48:29 +0000 (16:18 +0530)
committerRob Clark <robdclark@chromium.org>
Mon, 20 Mar 2023 17:53:27 +0000 (10:53 -0700)
commitead5d3e5eb37924d31875b92c8c0983627b4f343
tree2f7b8c91cb214f264a5a68074fa4a884ad5fbfe4
parente752ab11dcb48353727ea26eefd740155e028865
drm/msm/a6xx: Vote for cx gdsc from gpu driver

When a device has multiple power domains, dev->power_domain is left
empty during probe. That didn't cause any issue so far because we are
freeloading on smmu driver's vote on cx gdsc. Instead of that, create
a device_link between cx genpd device and gmu device to keep a vote from
gpu driver.

Before this patch:
localhost ~ # cat /sys/kernel/debug/pm_genpd/pm_genpd_summary
gx_gdsc on 0
    /devices/genpd:1:3d6a000.gmu active 0
cx_gdsc on 0
    /devices/platform/soc@0/3da0000.iommu active 0

After this patch:
localhost ~ # cat /sys/kernel/debug/pm_genpd/pm_genpd_summary
gx_gdsc on 0
    /devices/genpd:1:3d6a000.gmu active 0
cx_gdsc on 0
    /devices/platform/soc@0/3da0000.iommu active 0
    /devices/genpd:0:3d6a000.gmu active 0

Signed-off-by: Akhil P Oommen <quic_akhilpo@quicinc.com>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/516468/
Link: https://lore.kernel.org/r/20230102161757.v5.3.I7f545d8494dcdbe6e96a15fbe8aaf5bb0c003d50@changeid
Signed-off-by: Rob Clark <robdclark@chromium.org>
drivers/gpu/drm/msm/adreno/a6xx_gmu.c
drivers/gpu/drm/msm/adreno/a6xx_gmu.h