[PATCH v3 13/23] drm: mediatek: use vblank hooks in struct drm_crtc_funcs

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


On Tue, Feb 07, 2017 at 05:16:25PM +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: CK Hu <ck.hu at mediatek.com>
> ---
>  drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 8 ++++----
>  drivers/gpu/drm/mediatek/mtk_drm_crtc.h | 2 --
>  drivers/gpu/drm/mediatek/mtk_drm_drv.c  | 3 ---
>  3 files changed, 4 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
> index a73de1e669c2..69982f5a6198 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
> @@ -168,9 +168,8 @@ static void mtk_drm_crtc_mode_set_nofb(struct drm_crtc *crtc)
>  	state->pending_config = true;
>  }
>  
> -int mtk_drm_crtc_enable_vblank(struct drm_device *drm, unsigned int pipe)
> +static int mtk_drm_crtc_enable_vblank(struct drm_crtc *crtc)
>  {
> -	struct drm_crtc *crtc = drm_crtc_from_index(drm, pipe);
>  	struct mtk_drm_crtc *mtk_crtc = to_mtk_crtc(crtc);
>  	struct mtk_ddp_comp *ovl = mtk_crtc->ddp_comp[0];
>  
> @@ -179,9 +178,8 @@ int mtk_drm_crtc_enable_vblank(struct drm_device *drm, unsigned int pipe)
>  	return 0;
>  }
>  
> -void mtk_drm_crtc_disable_vblank(struct drm_device *drm, unsigned int pipe)
> +static void mtk_drm_crtc_disable_vblank(struct drm_crtc *crtc)
>  {
> -	struct drm_crtc *crtc = drm_crtc_from_index(drm, pipe);
>  	struct mtk_drm_crtc *mtk_crtc = to_mtk_crtc(crtc);
>  	struct mtk_ddp_comp *ovl = mtk_crtc->ddp_comp[0];
>  
> @@ -436,6 +434,8 @@ static void mtk_drm_crtc_atomic_flush(struct drm_crtc *crtc,
>  	.atomic_duplicate_state	= mtk_drm_crtc_duplicate_state,
>  	.atomic_destroy_state	= mtk_drm_crtc_destroy_state,
>  	.gamma_set		= drm_atomic_helper_legacy_gamma_set,
> +	.enable_vblank		= mtk_drm_crtc_enable_vblank,
> +	.disable_vblank		= mtk_drm_crtc_disable_vblank,
>  };
>  
>  static const struct drm_crtc_helper_funcs mtk_crtc_helper_funcs = {
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_crtc.h b/drivers/gpu/drm/mediatek/mtk_drm_crtc.h
> index a1550fa3c9d2..9d9410c67ae9 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_crtc.h
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_crtc.h
> @@ -23,8 +23,6 @@
>  #define MTK_MAX_BPC	10
>  #define MTK_MIN_BPC	3
>  
> -int mtk_drm_crtc_enable_vblank(struct drm_device *drm, unsigned int pipe);
> -void mtk_drm_crtc_disable_vblank(struct drm_device *drm, unsigned int pipe);
>  void mtk_drm_crtc_commit(struct drm_crtc *crtc);
>  void mtk_crtc_ddp_irq(struct drm_crtc *crtc, struct mtk_ddp_comp *ovl);
>  int mtk_drm_crtc_create(struct drm_device *drm_dev,
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> index ef8675336465..f5a1fd9b3ecc 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> @@ -256,9 +256,6 @@ static void mtk_drm_kms_deinit(struct drm_device *drm)
>  	.driver_features = DRIVER_MODESET | DRIVER_GEM | DRIVER_PRIME |
>  			   DRIVER_ATOMIC,
>  
> -	.enable_vblank = mtk_drm_crtc_enable_vblank,
> -	.disable_vblank = mtk_drm_crtc_disable_vblank,
> -
>  	.gem_free_object_unlocked = mtk_drm_gem_free_object,
>  	.gem_vm_ops = &drm_gem_cma_vm_ops,
>  	.dumb_create = mtk_drm_gem_dumb_create,
> -- 
> 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