[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210519183855.1523927-1-robdclark@gmail.com>
Date: Wed, 19 May 2021 11:38:51 -0700
From: Rob Clark <robdclark@...il.com>
To: dri-devel@...ts.freedesktop.org
Cc: freedreno@...ts.freedesktop.org, linux-arm-msm@...r.kernel.org,
Rob Clark <robdclark@...omium.org>,
linaro-mm-sig@...ts.linaro.org (moderated list:DMA BUFFER SHARING
FRAMEWORK), linux-kernel@...r.kernel.org (open list),
linux-media@...r.kernel.org (open list:DMA BUFFER SHARING FRAMEWORK)
Subject: [RFC 0/3] dma-fence: Add a "boost" mechanism
From: Rob Clark <robdclark@...omium.org>
In some cases, like double-buffered rendering, missing vblanks can
trick the GPU into running at a lower frequence, when really we
want to be running at a higher frequency to not miss the vblanks
in the first place.
This is partially inspired by a trick i915 does, but implemented
via dma-fence for a couple of reasons:
1) To continue to be able to use the atomic helpers
2) To support cases where display and gpu are different drivers
The last patch is just proof of concept, in reality I think it
may want to be a bit more clever. But sending this out as it
is as an RFC to get feedback.
Rob Clark (3):
dma-fence: Add boost fence op
drm/atomic: Call dma_fence_boost() when we've missed a vblank
drm/msm: Wire up gpu boost
drivers/gpu/drm/drm_atomic_helper.c | 11 +++++++++++
drivers/gpu/drm/msm/msm_fence.c | 10 ++++++++++
drivers/gpu/drm/msm/msm_gpu.c | 13 +++++++++++++
drivers/gpu/drm/msm/msm_gpu.h | 2 ++
include/linux/dma-fence.h | 26 ++++++++++++++++++++++++++
5 files changed, 62 insertions(+)
--
2.30.2
Powered by blists - more mailing lists