[PATCH xf86-video-amdgpu 2/3] Remove w/h parameters from amdgpu_scanout_extents_intersect
Deucher, Alexander
Alexander.Deucher at amd.com
Fri Jun 24 14:13:12 UTC 2016
> -----Original Message-----
> From: amd-gfx [mailto:amd-gfx-bounces at lists.freedesktop.org] On Behalf
> Of Michel Dänzer
> Sent: Friday, June 24, 2016 3:45 AM
> To: amd-gfx at lists.freedesktop.org
> Subject: [PATCH xf86-video-amdgpu 2/3] Remove w/h parameters from
> amdgpu_scanout_extents_intersect
>
> From: Michel Dänzer <michel.daenzer at amd.com>
>
> We can use the dimensions of the CRTC's mode instead.
Will this break panning mode?
Alex
>
> Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>
> ---
> src/amdgpu_kms.c | 15 +++++----------
> 1 file changed, 5 insertions(+), 10 deletions(-)
>
> diff --git a/src/amdgpu_kms.c b/src/amdgpu_kms.c
> index 33dd903..23eb7dc 100644
> --- a/src/amdgpu_kms.c
> +++ b/src/amdgpu_kms.c
> @@ -253,8 +253,7 @@ static void amdgpu_dirty_update(ScreenPtr screen)
> #endif
>
> static Bool
> -amdgpu_scanout_extents_intersect(xf86CrtcPtr xf86_crtc, BoxPtr extents,
> int w,
> - int h)
> +amdgpu_scanout_extents_intersect(xf86CrtcPtr xf86_crtc, BoxPtr extents)
> {
> extents->x1 -= xf86_crtc->filter_width >> 1;
> extents->x2 += xf86_crtc->filter_width >> 1;
> @@ -264,8 +263,8 @@ amdgpu_scanout_extents_intersect(xf86CrtcPtr
> xf86_crtc, BoxPtr extents, int w,
>
> extents->x1 = max(extents->x1, 0);
> extents->y1 = max(extents->y1, 0);
> - extents->x2 = min(extents->x2, w);
> - extents->y2 = min(extents->y2, h);
> + extents->x2 = min(extents->x2, xf86_crtc->mode.HDisplay);
> + extents->y2 = min(extents->y2, xf86_crtc->mode.VDisplay);
>
> return (extents->x1 < extents->x2 && extents->y1 < extents->y2);
> }
> @@ -297,8 +296,7 @@ amdgpu_scanout_do_update(xf86CrtcPtr xf86_crtc,
> int scanout_id)
> pScreen = pDraw->pScreen;
> extents = *RegionExtents(pRegion);
> RegionEmpty(pRegion);
> - if (!amdgpu_scanout_extents_intersect(xf86_crtc, &extents, pDraw-
> >width,
> - pDraw->height))
> + if (!amdgpu_scanout_extents_intersect(xf86_crtc, &extents))
> return FALSE;
>
> #if XF86_CRTC_VERSION >= 4
> @@ -396,7 +394,6 @@ amdgpu_scanout_update(xf86CrtcPtr xf86_crtc)
> drmVBlank vbl;
> DamagePtr pDamage;
> RegionPtr pRegion;
> - DrawablePtr pDraw;
> BoxRec extents;
>
> if (!xf86_crtc->enabled ||
> @@ -413,10 +410,8 @@ amdgpu_scanout_update(xf86CrtcPtr xf86_crtc)
> if (!RegionNotEmpty(pRegion))
> return;
>
> - pDraw = &drmmode_crtc->scanout[0].pixmap->drawable;
> extents = *RegionExtents(pRegion);
> - if (!amdgpu_scanout_extents_intersect(xf86_crtc, &extents, pDraw-
> >width,
> - pDraw->height))
> + if (!amdgpu_scanout_extents_intersect(xf86_crtc, &extents))
> return;
>
> scrn = xf86_crtc->scrn;
> --
> 2.8.1
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
More information about the amd-gfx
mailing list