linux/Documentation/gpu
Thomas Zimmermann 6dd7b6ce43 drm: Add additional atomic helpers for shadow-buffered planes
Several drivers use GEM buffer objects as shadow buffers for the actual
framebuffer memory. Right now, drivers do these vmap operations in their
commit tail, which is actually not allowed by the locking rules for
the dma-buf reservation lock. The involved BO has to be vmapped in the
plane's prepare_fb callback and vunmapped in cleanup_fb.

This patch introduces atomic helpers for such shadow planes. Plane
functions manage the plane state for shadow planes. The provided
implementations for prepare_fb and cleanup_fb vmap and vunmap all BOs of
struct drm_plane_state.fb. The mappings are afterwards available in the
plane's commit-tail functions.

For now, all rsp drivers use the simple KMS helpers, so we add the plane
callbacks and wrappers for simple KMS. The internal plane functions can
later be exported as needed.

v3:
	* documentation fixes
v2:
	* make duplicate_state interface compatible with
	  struct drm_plane_funcs

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Tested-by: Gerd Hoffmann <kraxel@redhat.com>
Acked-by: Gerd Hoffmann <kraxel@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210208115538.6430-4-tzimmermann@suse.de
2021-02-08 13:00:14 +01:00
..
bridge
dp-mst
afbc.rst
amdgpu-dc.rst
amdgpu.rst gpu: docs: amdgpu.rst: get rid of wrong kernel-doc markups 2020-10-28 11:42:02 -06:00
backlight.rst
drivers.rst
drm-client.rst
drm-internals.rst
drm-kms-helpers.rst drm: Add additional atomic helpers for shadow-buffered planes 2021-02-08 13:00:14 +01:00
drm-kms.rst drm/doc: introduce new section for standard plane properties 2020-12-17 16:56:40 +01:00
drm-mm.rst
drm-uapi.rst drm/doc: render drm.h uapi docs 2021-01-05 14:22:26 +01:00
i915.rst Merge tag 'drm-intel-next-queued-2020-11-03' of git://anongit.freedesktop.org/drm/drm-intel into drm-next 2020-11-04 12:17:34 +10:00
index.rst
introduction.rst
kms-properties.csv
komeda-kms.rst
mcde.rst
meson.rst
msm-crash-dump.rst
pl111.rst
tegra.rst
todo.rst drm/todo: Add entry for moving to dma_resv_lock 2021-02-03 14:09:44 +01:00
tve200.rst
v3d.rst
vc4.rst
vga-switcheroo.rst
vgaarbiter.rst
vkms.rst drm/vkms: Add information about module options 2021-01-12 17:16:25 -03:00
xen-front.rst