diff options
author | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2014-10-07 04:04:58 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2014-10-07 19:05:29 -0400 |
commit | 1e99cfa8de0f0879091e33cd65fd60418d006ad9 (patch) | |
tree | e541a7d090ccbd89074571d429674ab4742e6e01 /drivers/gpu | |
parent | 46d987af7649ef9b2f1d1467b9249fb6e24d2658 (diff) |
drm/ast: Fix HW cursor image
The translation from the X driver to the KMS one typo'ed a couple
of array indices, causing the HW cursor to look weird (blocky with
leaking edge colors). This fixes it.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: stable@vger.kernel.org
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/ast/ast_mode.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/ast/ast_mode.c b/drivers/gpu/drm/ast/ast_mode.c index 19ada0bbe319..9dc0fd5c1ea4 100644 --- a/drivers/gpu/drm/ast/ast_mode.c +++ b/drivers/gpu/drm/ast/ast_mode.c | |||
@@ -1104,8 +1104,8 @@ static u32 copy_cursor_image(u8 *src, u8 *dst, int width, int height) | |||
1104 | srcdata32[1].ul = *((u32 *)(srcxor + 4)) & 0xf0f0f0f0; | 1104 | srcdata32[1].ul = *((u32 *)(srcxor + 4)) & 0xf0f0f0f0; |
1105 | data32.b[0] = srcdata32[0].b[1] | (srcdata32[0].b[0] >> 4); | 1105 | data32.b[0] = srcdata32[0].b[1] | (srcdata32[0].b[0] >> 4); |
1106 | data32.b[1] = srcdata32[0].b[3] | (srcdata32[0].b[2] >> 4); | 1106 | data32.b[1] = srcdata32[0].b[3] | (srcdata32[0].b[2] >> 4); |
1107 | data32.b[2] = srcdata32[0].b[1] | (srcdata32[1].b[0] >> 4); | 1107 | data32.b[2] = srcdata32[1].b[1] | (srcdata32[1].b[0] >> 4); |
1108 | data32.b[3] = srcdata32[0].b[3] | (srcdata32[1].b[2] >> 4); | 1108 | data32.b[3] = srcdata32[1].b[3] | (srcdata32[1].b[2] >> 4); |
1109 | 1109 | ||
1110 | writel(data32.ul, dstxor); | 1110 | writel(data32.ul, dstxor); |
1111 | csum += data32.ul; | 1111 | csum += data32.ul; |