]> git.baikalelectronics.ru Git - kernel.git/commit
drm/mgag200: Rewrite cursor handling
authorThomas Zimmermann <tzimmermann@suse.de>
Thu, 13 Jun 2019 07:30:39 +0000 (09:30 +0200)
committerThomas Zimmermann <tzimmermann@suse.de>
Thu, 13 Jun 2019 11:37:28 +0000 (13:37 +0200)
commitbbd284be8ac3e728d2c6cdb77b142ae15c654593
treef7b3df5406eeb2f814f7594b85f7a712883dd45a
parent4d4715babfe1068db16451d0cdd06614cb95ddf4
drm/mgag200: Rewrite cursor handling

The cursor handling in mgag200 is complicated to understand. It touches a
number of different BOs, but doesn't really use all of them.

Rewriting the cursor update reduces the amount of cursor state. There are
two BOs for double-buffered HW updates. The source BO updates the one that
is currently not displayed and then switches buffers. Explicit BO locking
has been removed from the code. BOs are simply pinned and unpinned in video
RAM.

v2:
* pin cursor BOs to current location

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Acked-by: Gerd Hoffmann <kraxel@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190613073041.29350-8-tzimmermann@suse.de
drivers/gpu/drm/mgag200/mgag200_cursor.c
drivers/gpu/drm/mgag200/mgag200_drv.h
drivers/gpu/drm/mgag200/mgag200_main.c