drm/msm: Periodically update RPTR shadow
authorRob Clark <robdclark@chromium.org>
Wed, 28 Apr 2021 19:36:49 +0000 (12:36 -0700)
committerRob Clark <robdclark@chromium.org>
Sat, 7 Aug 2021 18:48:37 +0000 (11:48 -0700)
commit0710a740dc211ea4f94f5d2b887d5efafd524193
tree576b0f36275defaf51007d2bdda31e4b40832831
parent510410bfc034c57cc3caf1572aa47c1017bab2f9
drm/msm: Periodically update RPTR shadow

On a5xx and a6xx devices that are using CP_WHERE_AM_I to update a
ringbuffer read-ptr shadow value, periodically emit a CP_WHERE_AM_I
every 32 commands, so that a later submit waiting for ringbuffer
space to become available sees partial progress, rather than not
seeing rptr advance at all until the GPU gets to the end of the
submit that it is currently chewing on.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Acked-by: Jordan Crouse <jordan@cosmicpenguin.net>
Link: https://lore.kernel.org/r/20210428193654.1498482-3-robdclark@gmail.com
Signed-off-by: Rob Clark <robdclark@chromium.org>
drivers/gpu/drm/msm/adreno/a5xx_gpu.c
drivers/gpu/drm/msm/adreno/a6xx_gpu.c