drm/ast: Map HW cursor BOs permanently
authorThomas Zimmermann <tzimmermann@suse.de>
Tue, 9 Feb 2021 13:46:30 +0000 (14:46 +0100)
committerThomas Zimmermann <tzimmermann@suse.de>
Wed, 17 Feb 2021 11:40:16 +0000 (12:40 +0100)
commit84810d6a74b7b033b8dda13f0df0c953759f5e4c
tree88d13bd0f8fb26dfb22c801a4307e0812a109b11
parentafee7e958b9f9996c8eb9d464f604c6430edeefa
drm/ast: Map HW cursor BOs permanently

The BOs of the hardware cursor are now mapped permanently while the
cursor plane is being used. This reduces the CPU overhead of the cursor
plane's atomic_update function.

The change also resolves a problem with the vmap call in the commit tail.
The vmap implementation could acquire the DMA reservation lock on the
BO, which is not allowed that late in the atomic update. Removing the
vmap call from atomic_update fixes the issue.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Acked-by: Gerd Hoffmann <kraxel@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210209134632.12157-9-tzimmermann@suse.de
drivers/gpu/drm/ast/ast_drv.h
drivers/gpu/drm/ast/ast_mode.c