linux/drivers/gpu/drm/ast
Thomas Zimmermann 0d384eec10 drm/ast: Keep cursor HW BOs mapped
Updating the image in a cursor's HW BO requires a mapping of the BO's
buffer in the kernel's address space. Cursor image updates can happen
frequently and create CPU overhead.

As cursor HW BOs are small and never move, they are now map exactly
once during the initialization and the mapping is used throughout the
driver's lifetime.

This change also removes a possible source of failures from
ast_cursor_show(). As the helper does not establish mappings, it cannot
fail. As a result, the cursor plane's atomic-update helper does not
call any failable interfaces. All failures are detected before trying
to update the cursor plane.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20200702115029.5281-10-tzimmermann@suse.de
2020-07-07 11:11:47 +02:00
..
ast_cursor.c drm/ast: Keep cursor HW BOs mapped 2020-07-07 11:11:47 +02:00
ast_dp501.c drm/ast: Upcast from DRM device to ast structure via to_ast_private() 2020-06-22 13:40:33 +02:00
ast_dram_tables.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ast_drv.c drm/ast: Remove test for device from ast_pm_freeze() 2020-06-22 13:39:23 +02:00
ast_drv.h drm/ast: Keep cursor HW BOs mapped 2020-07-07 11:11:47 +02:00
ast_main.c drm/ast: Use per-device logging macros 2020-06-22 13:40:33 +02:00
ast_mode.c drm/ast: Add helper to hide cursor 2020-07-07 11:11:44 +02:00
ast_post.c drm/ast: Use per-device logging macros 2020-06-22 13:40:33 +02:00
ast_tables.h drm/ast: Fixed 1280x800 Display Issue 2018-03-23 09:50:54 +10:00
ast_ttm.c drm/ast: Use per-device logging macros 2020-06-22 13:40:33 +02:00
Kconfig drm/vram: fix Kconfig 2019-09-10 08:53:08 +02:00
Makefile drm/ast: Move cursor functions to ast_cursor.c 2020-07-07 11:11:15 +02:00