[PATCH 2/2] drm/udl: Implement page_flip ioctl

Chris Wilson chris at chris-wilson.co.uk
Tue Jul 8 00:31:11 PDT 2014


On Wed, Jul 02, 2014 at 03:13:43PM -0700, Stéphane Marchesin wrote:
> This is a very crude page_flip implementation for UDL. There are ways
> to make it better (make it asynchronous, make it do actual vsynced
> flips...) but that's for another patch.
> 
> Signed-off-by: Stéphane Marchesin <marcheu at chromium.org>
> ---
>  drivers/gpu/drm/udl/udl_modeset.c | 21 +++++++++++++++++++++
>  1 file changed, 21 insertions(+)
> 
> diff --git a/drivers/gpu/drm/udl/udl_modeset.c b/drivers/gpu/drm/udl/udl_modeset.c
> index cddc4fc..7dc3bd8 100644
> --- a/drivers/gpu/drm/udl/udl_modeset.c
> +++ b/drivers/gpu/drm/udl/udl_modeset.c
> @@ -363,6 +363,26 @@ static void udl_crtc_destroy(struct drm_crtc *crtc)
>  	kfree(crtc);
>  }
>  
> +static int udl_crtc_page_flip(struct drm_crtc *crtc,
> +			      struct drm_framebuffer *fb,
> +			      struct drm_pending_vblank_event *event,
> +			      uint32_t page_flip_flags)
> +{
> +	struct udl_framebuffer *ufb = to_udl_fb(fb);
> +	struct drm_device *dev = crtc->dev;
> +	unsigned long flags;
> +
> +	udl_handle_damage(ufb, 0, 0, fb->width, fb->height);

Could we not save the damage from an earlier dirtyfb and limit the data
we have to send here?
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the dri-devel mailing list