All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] drm/radeon: Try harder to avoid HW cursor ending on a multiple of 128 columns.
@ 2012-07-17 17:02 Michel Dänzer
  2012-07-17 17:10 ` Michel Dänzer
  2012-07-17 17:43 ` Alex Deucher
  0 siblings, 2 replies; 4+ messages in thread
From: Michel Dänzer @ 2012-07-17 17:02 UTC (permalink / raw)
  To: dri-devel

From: Michel Dänzer <michel.daenzer@amd.com>

This could previously fail if either of the enabled displays was using a
horizontal resolution that is a multiple of 128, and only the leftmost column
of the cursor was (supposed to be) visible at the right edge of that display.

The solution is to move the cursor one pixel to the left in that case.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=33183

Cc: stable@vger.kernel.org
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
---
 drivers/gpu/drm/radeon/radeon_cursor.c |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/radeon/radeon_cursor.c b/drivers/gpu/drm/radeon/radeon_cursor.c
index 42acc64..711e95a 100644
--- a/drivers/gpu/drm/radeon/radeon_cursor.c
+++ b/drivers/gpu/drm/radeon/radeon_cursor.c
@@ -262,8 +262,14 @@ int radeon_crtc_cursor_move(struct drm_crtc *crtc,
 				if (!(cursor_end & 0x7f))
 					w--;
 			}
-			if (w <= 0)
+			if (w <= 0) {
 				w = 1;
+				cursor_end = x - xorigin + w;
+				if (!(cursor_end & 0x7f)) {
+					x--;
+					WARN_ON_ONCE(x < 0);
+				}
+			}
 		}
 	}
 
-- 
1.7.10

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/2] drm/radeon: Try harder to avoid HW cursor ending on a multiple of 128 columns.
  2012-07-17 17:02 [PATCH 1/2] drm/radeon: Try harder to avoid HW cursor ending on a multiple of 128 columns Michel Dänzer
@ 2012-07-17 17:10 ` Michel Dänzer
  2012-07-17 17:43 ` Alex Deucher
  1 sibling, 0 replies; 4+ messages in thread
From: Michel Dänzer @ 2012-07-17 17:10 UTC (permalink / raw)
  To: dri-devel


Ignore the 1/2, there's no second patch.


-- 
Earthling Michel Dänzer           |                   http://www.amd.com
Libre software enthusiast         |          Debian, X and DRI developer

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/2] drm/radeon: Try harder to avoid HW cursor ending on a multiple of 128 columns.
  2012-07-17 17:02 [PATCH 1/2] drm/radeon: Try harder to avoid HW cursor ending on a multiple of 128 columns Michel Dänzer
  2012-07-17 17:10 ` Michel Dänzer
@ 2012-07-17 17:43 ` Alex Deucher
  2012-07-20  1:48   ` Dave Airlie
  1 sibling, 1 reply; 4+ messages in thread
From: Alex Deucher @ 2012-07-17 17:43 UTC (permalink / raw)
  To: Michel Dänzer; +Cc: dri-devel

On Tue, Jul 17, 2012 at 1:02 PM, Michel Dänzer <michel@daenzer.net> wrote:
> From: Michel Dänzer <michel.daenzer@amd.com>
>
> This could previously fail if either of the enabled displays was using a
> horizontal resolution that is a multiple of 128, and only the leftmost column
> of the cursor was (supposed to be) visible at the right edge of that display.
>
> The solution is to move the cursor one pixel to the left in that case.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=33183
>
> Cc: stable@vger.kernel.org
> Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>

> ---
>  drivers/gpu/drm/radeon/radeon_cursor.c |    8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/radeon/radeon_cursor.c b/drivers/gpu/drm/radeon/radeon_cursor.c
> index 42acc64..711e95a 100644
> --- a/drivers/gpu/drm/radeon/radeon_cursor.c
> +++ b/drivers/gpu/drm/radeon/radeon_cursor.c
> @@ -262,8 +262,14 @@ int radeon_crtc_cursor_move(struct drm_crtc *crtc,
>                                 if (!(cursor_end & 0x7f))
>                                         w--;
>                         }
> -                       if (w <= 0)
> +                       if (w <= 0) {
>                                 w = 1;
> +                               cursor_end = x - xorigin + w;
> +                               if (!(cursor_end & 0x7f)) {
> +                                       x--;
> +                                       WARN_ON_ONCE(x < 0);
> +                               }
> +                       }
>                 }
>         }
>
> --
> 1.7.10
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/2] drm/radeon: Try harder to avoid HW cursor ending on a multiple of 128 columns.
  2012-07-17 17:43 ` Alex Deucher
@ 2012-07-20  1:48   ` Dave Airlie
  0 siblings, 0 replies; 4+ messages in thread
From: Dave Airlie @ 2012-07-20  1:48 UTC (permalink / raw)
  To: Alex Deucher; +Cc: Michel Dänzer, dri-devel

On Wed, Jul 18, 2012 at 3:43 AM, Alex Deucher <alexdeucher@gmail.com> wrote:
> On Tue, Jul 17, 2012 at 1:02 PM, Michel Dänzer <michel@daenzer.net> wrote:
>> From: Michel Dänzer <michel.daenzer@amd.com>
>>
>> This could previously fail if either of the enabled displays was using a
>> horizontal resolution that is a multiple of 128, and only the leftmost column
>> of the cursor was (supposed to be) visible at the right edge of that display.
>>
>> The solution is to move the cursor one pixel to the left in that case.
>>
>> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=33183
>>
>> Cc: stable@vger.kernel.org
>> Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
>
> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
>
Applied to -next,

Thanks,
Dave.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2012-07-20  1:48 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-07-17 17:02 [PATCH 1/2] drm/radeon: Try harder to avoid HW cursor ending on a multiple of 128 columns Michel Dänzer
2012-07-17 17:10 ` Michel Dänzer
2012-07-17 17:43 ` Alex Deucher
2012-07-20  1:48   ` Dave Airlie

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.