linux/drivers/gpu/drm/msm/adreno
Rob Clark 167a668ab0 drm/msm/gpu: Wait for idle before suspending
System suspend uses pm_runtime_force_suspend(), which cheekily bypasses
the runpm reference counts.  This doesn't actually work so well when the
GPU is active.  So add a reasonable delay waiting for the GPU to become
idle.

Alternatively we could just return -EBUSY in this case, but that has the
disadvantage of causing system suspend to fail.

v2: s/ret/remaining [sboyd], and switch to using active_submits count
    to ensure we aren't racing with submit cleanup (and devfreq idle
    work getting scheduled, etc)
v3: fix inverted logic

Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20220108180913.814448-2-robdclark@gmail.com
Signed-off-by: Rob Clark <robdclark@chromium.org>
2022-01-25 08:54:41 -08:00
..
a2xx.xml.h
a2xx_gpu.c drm/msm: Drop priv->lastctx 2021-11-28 09:50:33 -08:00
a2xx_gpu.h
a3xx.xml.h
a3xx_gpu.c drm/msm: Drop priv->lastctx 2021-11-28 09:50:33 -08:00
a3xx_gpu.h
a4xx.xml.h
a4xx_gpu.c drm/msm: Drop priv->lastctx 2021-11-28 09:50:33 -08:00
a4xx_gpu.h
a5xx.xml.h
a5xx_debugfs.c drm/msm: Remove struct_mutex usage 2021-11-28 09:50:33 -08:00
a5xx_gpu.c drm/msm/a5xx: Fix missing CP_PROTECT for SMMU on A540 2021-12-17 15:09:46 -08:00
a5xx_gpu.h
a5xx_power.c
a5xx_preempt.c
a6xx.xml.h
a6xx_gmu.c drm/msm/gpu: Name GMU bos 2021-11-29 16:19:58 -08:00
a6xx_gmu.h drm/msm/a6xx: Serialize GMU communication 2021-10-01 13:10:20 -07:00
a6xx_gmu.xml.h
a6xx_gpu.c drm/msm/a6xx: Add missing suspend_count increment 2022-01-25 05:47:57 +03:00
a6xx_gpu.h drm/msm: Drop priv->lastctx 2021-11-28 09:50:33 -08:00
a6xx_gpu_state.c drm/msm/a6xx: Skip crashdumper state if GPU needs_hw_init 2021-12-13 13:46:18 -08:00
a6xx_gpu_state.h
a6xx_hfi.c drm/msm/gpu: Also snapshot GMU HFI buffer 2021-11-29 16:19:58 -08:00
a6xx_hfi.h drm/msm/gpu: Also snapshot GMU HFI buffer 2021-11-29 16:19:58 -08:00
adreno_common.xml.h
adreno_device.c drm/msm/gpu: Wait for idle before suspending 2022-01-25 08:54:41 -08:00
adreno_gpu.c drm/msm/a6xx: Skip crashdumper state if GPU needs_hw_init 2021-12-13 13:46:18 -08:00
adreno_gpu.h drm/msm/a5xx: Add support for Adreno 506 GPU 2021-12-17 15:09:46 -08:00
adreno_pm4.xml.h