[PATCH xf86-video-amdgpu 4/4] Remove drmmode_crtc_private_rec::present_vblank_* related code

Alex Deucher alexdeucher at gmail.com
Wed Jul 25 17:37:53 UTC 2018


On Tue, Jul 24, 2018 at 1:16 PM, Michel Dänzer <michel at daenzer.net> wrote:
> From: Michel Dänzer <michel.daenzer at amd.com>
>
> Not needed anymore with the more robust mechanism introduced in the
> previous change.
>
> Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>

Series is:
Acked-by: Alex Deucher <alexander.deucher at amd.com>

> ---
>  src/amdgpu_kms.c      |  9 ---------
>  src/amdgpu_present.c  | 34 +++-------------------------------
>  src/drmmode_display.h |  7 -------
>  3 files changed, 3 insertions(+), 47 deletions(-)
>
> diff --git a/src/amdgpu_kms.c b/src/amdgpu_kms.c
> index e2925cc83..80e4c947c 100644
> --- a/src/amdgpu_kms.c
> +++ b/src/amdgpu_kms.c
> @@ -436,15 +436,6 @@ amdgpu_scanout_flip_handler(xf86CrtcPtr crtc, uint32_t msc, uint64_t usec,
>         drmmode_fb_reference(pAMDGPUEnt->fd, &drmmode_crtc->fb,
>                              drmmode_crtc->flip_pending);
>         amdgpu_scanout_flip_abort(crtc, event_data);
> -
> -#ifdef HAVE_PRESENT_H
> -       if (drmmode_crtc->present_vblank_event_id) {
> -               present_event_notify(drmmode_crtc->present_vblank_event_id,
> -                                    drmmode_crtc->present_vblank_usec,
> -                                    drmmode_crtc->present_vblank_msc);
> -               drmmode_crtc->present_vblank_event_id = 0;
> -       }
> -#endif
>  }
>
>
> diff --git a/src/amdgpu_present.c b/src/amdgpu_present.c
> index 4e74bfac9..2f42fae69 100644
> --- a/src/amdgpu_present.c
> +++ b/src/amdgpu_present.c
> @@ -52,7 +52,6 @@ static present_screen_info_rec amdgpu_present_screen_info;
>
>  struct amdgpu_present_vblank_event {
>         uint64_t event_id;
> -       Bool vblank_for_flip;
>         Bool unflip;
>  };
>
> @@ -120,26 +119,9 @@ static void
>  amdgpu_present_vblank_handler(xf86CrtcPtr crtc, unsigned int msc,
>                               uint64_t usec, void *data)
>  {
> -       drmmode_crtc_private_ptr drmmode_crtc = crtc->driver_private;
>         struct amdgpu_present_vblank_event *event = data;
>
> -       if (event->vblank_for_flip &&
> -           drmmode_crtc->tear_free &&
> -           drmmode_crtc->scanout_update_pending) {
> -               if (drmmode_crtc->present_vblank_event_id != 0) {
> -                       xf86DrvMsg(crtc->scrn->scrnIndex, X_WARNING,
> -                                  "Need to handle previously deferred vblank event\n");
> -                       present_event_notify(drmmode_crtc->present_vblank_event_id,
> -                                            drmmode_crtc->present_vblank_usec,
> -                                            drmmode_crtc->present_vblank_msc);
> -               }
> -
> -               drmmode_crtc->present_vblank_event_id = event->event_id;
> -               drmmode_crtc->present_vblank_msc = msc;
> -               drmmode_crtc->present_vblank_usec = usec;
> -       } else
> -               present_event_notify(event->event_id, usec, msc);
> -
> +       present_event_notify(event->event_id, usec, msc);
>         free(event);
>  }
>
> @@ -162,7 +144,6 @@ static int
>  amdgpu_present_queue_vblank(RRCrtcPtr crtc, uint64_t event_id, uint64_t msc)
>  {
>         xf86CrtcPtr xf86_crtc = crtc->devPrivate;
> -       drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
>         ScreenPtr screen = crtc->pScreen;
>         struct amdgpu_present_vblank_event *event;
>         uintptr_t drm_queue_seq;
> @@ -171,8 +152,6 @@ amdgpu_present_queue_vblank(RRCrtcPtr crtc, uint64_t event_id, uint64_t msc)
>         if (!event)
>                 return BadAlloc;
>         event->event_id = event_id;
> -       event->vblank_for_flip = drmmode_crtc->present_flip_expected;
> -       drmmode_crtc->present_flip_expected = FALSE;
>
>         drm_queue_seq = amdgpu_drm_queue_alloc(xf86_crtc,
>                                                AMDGPU_DRM_QUEUE_CLIENT_DEFAULT,
> @@ -257,7 +236,6 @@ amdgpu_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
>                           Bool sync_flip)
>  {
>         xf86CrtcPtr xf86_crtc = crtc->devPrivate;
> -       drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
>         ScreenPtr screen = window->drawable.pScreen;
>         ScrnInfoPtr scrn = xf86_crtc->scrn;
>         xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn);
> @@ -265,8 +243,6 @@ amdgpu_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
>         int num_crtcs_on;
>         int i;
>
> -       drmmode_crtc->present_flip_expected = FALSE;
> -
>         if (!scrn->vtSema)
>                 return FALSE;
>
> @@ -296,7 +272,6 @@ amdgpu_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
>         if (num_crtcs_on == 0)
>                 return FALSE;
>
> -       drmmode_crtc->present_flip_expected = TRUE;
>         return TRUE;
>  }
>
> @@ -337,7 +312,6 @@ amdgpu_present_flip(RRCrtcPtr crtc, uint64_t event_id, uint64_t target_msc,
>                     PixmapPtr pixmap, Bool sync_flip)
>  {
>         xf86CrtcPtr xf86_crtc = crtc->devPrivate;
> -       drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
>         ScreenPtr screen = crtc->pScreen;
>         ScrnInfoPtr scrn = xf86_crtc->scrn;
>         AMDGPUInfoPtr info = AMDGPUPTR(scrn);
> @@ -345,11 +319,11 @@ amdgpu_present_flip(RRCrtcPtr crtc, uint64_t event_id, uint64_t target_msc,
>         Bool ret = FALSE;
>
>         if (!amdgpu_present_check_flip(crtc, screen->root, pixmap, sync_flip))
> -               goto out;
> +               return ret;
>
>         event = calloc(1, sizeof(struct amdgpu_present_vblank_event));
>         if (!event)
> -               goto out;
> +               return ret;
>
>         event->event_id = event_id;
>
> @@ -366,8 +340,6 @@ amdgpu_present_flip(RRCrtcPtr crtc, uint64_t event_id, uint64_t target_msc,
>         else
>                 info->drmmode.present_flipping = TRUE;
>
> - out:
> -       drmmode_crtc->present_flip_expected = FALSE;
>         return ret;
>  }
>
> diff --git a/src/drmmode_display.h b/src/drmmode_display.h
> index 28d15e282..88f30748e 100644
> --- a/src/drmmode_display.h
> +++ b/src/drmmode_display.h
> @@ -128,13 +128,6 @@ typedef struct {
>         /* The FB currently being scanned out by this CRTC, if any */
>         struct drmmode_fb *fb;
>
> -#ifdef HAVE_PRESENT_H
> -       /* Deferred processing of Present vblank event */
> -       uint64_t present_vblank_event_id;
> -       uint64_t present_vblank_usec;
> -       unsigned present_vblank_msc;
> -       Bool present_flip_expected;
> -#endif
>         struct drm_color_lut *degamma_lut;
>         struct drm_color_ctm *ctm;
>         struct drm_color_lut *gamma_lut;
> --
> 2.18.0
>
> _______________________________________________
> 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