[PATCH v3 15/23] drm: qxl: use vblank hooks in struct drm_crtc_funcs

Sean Paul seanpaul at chromium.org
Tue Feb 21 16:21:06 UTC 2017


On Tue, Feb 07, 2017 at 05:16:27PM +0800, Shawn Guo wrote:
> From: Shawn Guo <shawn.guo at linaro.org>
> 
> The vblank hooks in struct drm_driver are deprecated and only meant for
> legacy drivers.  For modern drivers with DRIVER_MODESET flag, the hooks
> in struct drm_crtc_funcs should be used instead.
> 
> Signed-off-by: Shawn Guo <shawn.guo at linaro.org>

Applied to -misc

Thanks,

Sean

> Cc: Dave Airlie <airlied at redhat.com>
> ---
>  drivers/gpu/drm/qxl/qxl_display.c | 16 ++++++++++++++++
>  drivers/gpu/drm/qxl/qxl_drv.c     | 18 ------------------
>  2 files changed, 16 insertions(+), 18 deletions(-)
> 
> diff --git a/drivers/gpu/drm/qxl/qxl_display.c b/drivers/gpu/drm/qxl/qxl_display.c
> index 1094cd33eb06..2ce805a7ce5e 100644
> --- a/drivers/gpu/drm/qxl/qxl_display.c
> +++ b/drivers/gpu/drm/qxl/qxl_display.c
> @@ -548,6 +548,19 @@ static int qxl_crtc_cursor_move(struct drm_crtc *crtc,
>  	return 0;
>  }
>  
> +static u32 qxl_noop_get_vblank_counter(struct drm_crtc *crtc)
> +{
> +	return 0;
> +}
> +
> +static int qxl_noop_enable_vblank(struct drm_crtc *crtc)
> +{
> +	return 0;
> +}
> +
> +static void qxl_noop_disable_vblank(struct drm_crtc *crtc)
> +{
> +}
>  
>  static const struct drm_crtc_funcs qxl_crtc_funcs = {
>  	.cursor_set2 = qxl_crtc_cursor_set2,
> @@ -555,6 +568,9 @@ static int qxl_crtc_cursor_move(struct drm_crtc *crtc,
>  	.set_config = drm_crtc_helper_set_config,
>  	.destroy = qxl_crtc_destroy,
>  	.page_flip = qxl_crtc_page_flip,
> +	.get_vblank_counter = qxl_noop_get_vblank_counter,
> +	.enable_vblank = qxl_noop_enable_vblank,
> +	.disable_vblank = qxl_noop_disable_vblank,
>  };
>  
>  void qxl_user_framebuffer_destroy(struct drm_framebuffer *fb)
> diff --git a/drivers/gpu/drm/qxl/qxl_drv.c b/drivers/gpu/drm/qxl/qxl_drv.c
> index 8e17c241e63c..48d51a2f3bd8 100644
> --- a/drivers/gpu/drm/qxl/qxl_drv.c
> +++ b/drivers/gpu/drm/qxl/qxl_drv.c
> @@ -247,21 +247,6 @@ static int qxl_pm_restore(struct device *dev)
>  	return qxl_drm_resume(drm_dev, false);
>  }
>  
> -static u32 qxl_noop_get_vblank_counter(struct drm_device *dev,
> -				       unsigned int pipe)
> -{
> -	return 0;
> -}
> -
> -static int qxl_noop_enable_vblank(struct drm_device *dev, unsigned int pipe)
> -{
> -	return 0;
> -}
> -
> -static void qxl_noop_disable_vblank(struct drm_device *dev, unsigned int pipe)
> -{
> -}
> -
>  static const struct dev_pm_ops qxl_pm_ops = {
>  	.suspend = qxl_pm_suspend,
>  	.resume = qxl_pm_resume,
> @@ -281,9 +266,6 @@ static void qxl_noop_disable_vblank(struct drm_device *dev, unsigned int pipe)
>  static struct drm_driver qxl_driver = {
>  	.driver_features = DRIVER_GEM | DRIVER_MODESET | DRIVER_PRIME |
>  			   DRIVER_HAVE_IRQ | DRIVER_IRQ_SHARED,
> -	.get_vblank_counter = qxl_noop_get_vblank_counter,
> -	.enable_vblank = qxl_noop_enable_vblank,
> -	.disable_vblank = qxl_noop_disable_vblank,
>  
>  	.set_busid = drm_pci_set_busid,
>  
> -- 
> 1.9.1
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel

-- 
Sean Paul, Software Engineer, Google / Chromium OS


More information about the dri-devel mailing list