linux/drivers/gpu/drm/qxl
Ray Strode 9428088c90 drm/qxl: reapply cursor after resetting primary
QXL associates mouse state with its primary plane.

Destroying a primary plane and putting a new one in place has the side
effect of destroying the cursor as well.

This commit changes the driver to reapply the cursor any time a new
primary is created. It achieves this by keeping a reference to the
cursor bo on the qxl_crtc struct.

This fix is very similar to

commit 4532b241a4 ("drm/qxl: reapply cursor after SetCrtc calls")

which got implicitly reverted as part of implementing the atomic
modeset feature.

Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Dave Airlie <airlied@redhat.com>
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1512097
Fixes: 1277eed5fe ("drm: qxl: Atomic phase 1: convert cursor to universal plane")
Cc: stable@vger.kernel.org
Signed-off-by: Ray Strode <rstrode@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2017-12-08 13:37:02 +10:00
..
Kconfig drm: fix compilations issues introduced by "drm: allow to use mmuless SoC" 2017-01-09 11:30:30 +01:00
Makefile drm/qxl: fix include notation and remove -Iinclude/drm flag 2017-05-17 14:36:17 +02:00
qxl_cmd.c qxl: alloc & use shadow for dumb buffers 2017-10-23 08:23:11 +02:00
qxl_debugfs.c drm/qxl: fix include notation and remove -Iinclude/drm flag 2017-05-17 14:36:17 +02:00
qxl_dev.h
qxl_display.c drm/qxl: reapply cursor after resetting primary 2017-12-08 13:37:02 +10:00
qxl_draw.c drm: Nuke fb->bits_per_pixel 2016-12-15 14:55:34 +02:00
qxl_drv.c drm/qxl: Use the drm_driver.dumb_destroy default 2017-08-16 20:15:38 +02:00
qxl_drv.h drm/qxl: reapply cursor after resetting primary 2017-12-08 13:37:02 +10:00
qxl_dumb.c qxl: alloc & use shadow for dumb buffers 2017-10-23 08:23:11 +02:00
qxl_fb.c drm/qxl: replace QXL_INFO with DRM_DEBUG_DRIVER 2017-10-23 08:22:56 +02:00
qxl_gem.c drm/qxl: fix include notation and remove -Iinclude/drm flag 2017-05-17 14:36:17 +02:00
qxl_image.c qxl: convert qxl driver to proper use for reservations 2013-07-24 11:58:10 +10:00
qxl_ioctl.c drm/ttm: add operation ctx to ttm_bo_validate v2 2017-12-06 12:48:01 -05:00
qxl_irq.c drm: qxl: Embed drm_device into driver structure 2017-02-02 10:02:37 +01:00
qxl_kms.c drm/qxl: Remove qxl_debugfs_remove_files() 2017-03-09 09:01:00 +01:00
qxl_object.c drm/ttm: add operation ctx to ttm_bo_validate v2 2017-12-06 12:48:01 -05:00
qxl_object.h drm: qxl: Drop duplicated device pointer attribute 2017-02-02 10:02:34 +01:00
qxl_prime.c drm/qxl: fix erroneous return value 2016-02-17 15:39:35 +10:00
qxl_release.c drm/ttm: add operation ctx to ttm_bo_validate v2 2017-12-06 12:48:01 -05:00
qxl_ttm.c drm/ttm: add context to driver move callback as well 2017-12-06 12:48:03 -05:00