]> git.karo-electronics.de Git - karo-tx-linux.git/commit
drm/i915: Always apply cursor width changes
authorChris Wilson <chris@chris-wilson.co.uk>
Fri, 30 May 2014 13:35:26 +0000 (16:35 +0300)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 3 Jun 2014 14:36:07 +0000 (16:36 +0200)
commitb05b095594108cc1af909f0a4ea2bf8530b7e1b2
tree4fc9280cadd71a5e56b5d1b80a9b691e5bb784f4
parent05c15c006d39a6d0ece051d59c332bc9083da05f
drm/i915: Always apply cursor width changes

It is possible for userspace to create a big object large enough for a
256x256, and then switch over to using it as a 64x64 cursor. This
requires the cursor update routines to check for a change in width on
every update, rather than just when the cursor is originally enabled.

This also fixes an issue with 845g/865g which cannot change the base
address of the cursor whilst it is active.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
[Antti:rebased, adjusted macro names and moved some lines, no functional
changes]
Reviewed-by: Antti Koskipaa <antti.koskipaa@linux.intel.com>
Tested-by: Antti Koskipaa <antti.koskipaa@linux.intel.com>
Cc: stable@vger.kernel.org
Testcase: igt/kms_cursor_crc/cursor-size-change
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_debugfs.c
drivers/gpu/drm/i915/intel_display.c
drivers/gpu/drm/i915/intel_drv.h