[PATCH 8/8] drm: Convert atomic drivers from CRTC .disable() to .atomic_disable()

Philippe CORNU philippe.cornu at st.com
Thu Jun 29 07:49:07 UTC 2017



On 06/27/2017 11:16 PM, Laurent Pinchart wrote:
> The CRTC .disable() helper operation is deprecated for atomic drivers,
> the new .atomic_disable() helper operation being preferred. Convert all
> atomic drivers to .atomic_disable() to avoid cargo-cult use of
> .disable() in new drivers.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas at ideasonboard.com>
> ---
>   drivers/gpu/drm/arc/arcpgu_crtc.c               | 5 +++--
>   drivers/gpu/drm/arm/hdlcd_crtc.c                | 5 +++--
>   drivers/gpu/drm/arm/malidp_crtc.c               | 5 +++--
>   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c  | 5 +++--
>   drivers/gpu/drm/drm_simple_kms_helper.c         | 5 +++--
>   drivers/gpu/drm/exynos/exynos_drm_crtc.c        | 5 +++--
>   drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c  | 5 +++--
>   drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c | 5 +++--
>   drivers/gpu/drm/mediatek/mtk_drm_crtc.c         | 5 +++--
>   drivers/gpu/drm/meson/meson_crtc.c              | 5 +++--
>   drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c        | 5 +++--
>   drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c        | 5 +++--
>   drivers/gpu/drm/omapdrm/omap_crtc.c             | 5 +++--
>   drivers/gpu/drm/qxl/qxl_display.c               | 5 +++--
>   drivers/gpu/drm/rcar-du/rcar_du_crtc.c          | 5 +++--
>   drivers/gpu/drm/rockchip/rockchip_drm_vop.c     | 5 +++--
>   drivers/gpu/drm/sti/sti_crtc.c                  | 5 +++--
>   drivers/gpu/drm/stm/ltdc.c                      | 5 +++--

For stm,

Tested-by: Philippe Cornu <philippe.cornu at st.com>
Acked-by: Philippe Cornu <philippe.cornu at st.com>

Many thanks
Philippe

>   drivers/gpu/drm/sun4i/sun4i_crtc.c              | 5 +++--
>   drivers/gpu/drm/tegra/dc.c                      | 5 +++--
>   drivers/gpu/drm/tilcdc/tilcdc_crtc.c            | 8 +++++++-
>   drivers/gpu/drm/vc4/vc4_crtc.c                  | 5 +++--
>   drivers/gpu/drm/virtio/virtgpu_display.c        | 5 +++--
>   drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c             | 7 ++++---
>   drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c            | 7 ++++---
>   drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c            | 5 +++--
>   drivers/gpu/drm/zte/zx_vou.c                    | 5 +++--
>   27 files changed, 87 insertions(+), 55 deletions(-)
> 
> diff --git a/drivers/gpu/drm/arc/arcpgu_crtc.c b/drivers/gpu/drm/arc/arcpgu_crtc.c
> index c9bc6a90ac83..1859dd3ad622 100644
> --- a/drivers/gpu/drm/arc/arcpgu_crtc.c
> +++ b/drivers/gpu/drm/arc/arcpgu_crtc.c
> @@ -130,7 +130,8 @@ static void arc_pgu_crtc_atomic_enable(struct drm_crtc *crtc,
>   		      ARCPGU_CTRL_ENABLE_MASK);
>   }
>   
> -static void arc_pgu_crtc_disable(struct drm_crtc *crtc)
> +static void arc_pgu_crtc_atomic_disable(struct drm_crtc *crtc,
> +					struct drm_crtc_state *old_state)
>   {
>   	struct arcpgu_drm_private *arcpgu = crtc_to_arcpgu_priv(crtc);
>   
> @@ -162,9 +163,9 @@ static const struct drm_crtc_helper_funcs arc_pgu_crtc_helper_funcs = {
>   	.mode_set	= drm_helper_crtc_mode_set,
>   	.mode_set_base	= drm_helper_crtc_mode_set_base,
>   	.mode_set_nofb	= arc_pgu_crtc_mode_set_nofb,
> -	.disable	= arc_pgu_crtc_disable,
>   	.atomic_begin	= arc_pgu_crtc_atomic_begin,
>   	.atomic_enable	= arc_pgu_crtc_atomic_enable,
> +	.atomic_disable	= arc_pgu_crtc_atomic_disable,
>   };
>   
>   static void arc_pgu_plane_atomic_update(struct drm_plane *plane,
> diff --git a/drivers/gpu/drm/arm/hdlcd_crtc.c b/drivers/gpu/drm/arm/hdlcd_crtc.c
> index 2b7f4f05d91f..16e1e20cf04c 100644
> --- a/drivers/gpu/drm/arm/hdlcd_crtc.c
> +++ b/drivers/gpu/drm/arm/hdlcd_crtc.c
> @@ -176,7 +176,8 @@ static void hdlcd_crtc_atomic_enable(struct drm_crtc *crtc,
>   	drm_crtc_vblank_on(crtc);
>   }
>   
> -static void hdlcd_crtc_disable(struct drm_crtc *crtc)
> +static void hdlcd_crtc_atomic_disable(struct drm_crtc *crtc,
> +				      struct drm_crtc_state *old_state)
>   {
>   	struct hdlcd_drm_private *hdlcd = crtc_to_hdlcd_priv(crtc);
>   
> @@ -219,10 +220,10 @@ static void hdlcd_crtc_atomic_begin(struct drm_crtc *crtc,
>   }
>   
>   static const struct drm_crtc_helper_funcs hdlcd_crtc_helper_funcs = {
> -	.disable	= hdlcd_crtc_disable,
>   	.atomic_check	= hdlcd_crtc_atomic_check,
>   	.atomic_begin	= hdlcd_crtc_atomic_begin,
>   	.atomic_enable	= hdlcd_crtc_atomic_enable,
> +	.atomic_disable	= hdlcd_crtc_atomic_disable,
>   };
>   
>   static int hdlcd_plane_atomic_check(struct drm_plane *plane,
> diff --git a/drivers/gpu/drm/arm/malidp_crtc.c b/drivers/gpu/drm/arm/malidp_crtc.c
> index 8e5b1c0181ab..3615d18a7ddf 100644
> --- a/drivers/gpu/drm/arm/malidp_crtc.c
> +++ b/drivers/gpu/drm/arm/malidp_crtc.c
> @@ -70,7 +70,8 @@ static void malidp_crtc_atomic_enable(struct drm_crtc *crtc,
>   	drm_crtc_vblank_on(crtc);
>   }
>   
> -static void malidp_crtc_disable(struct drm_crtc *crtc)
> +static void malidp_crtc_atomic_disable(struct drm_crtc *crtc,
> +				       struct drm_crtc_state *old_state)
>   {
>   	struct malidp_drm *malidp = crtc_to_malidp_device(crtc);
>   	struct malidp_hw_device *hwdev = malidp->dev;
> @@ -409,9 +410,9 @@ static int malidp_crtc_atomic_check(struct drm_crtc *crtc,
>   
>   static const struct drm_crtc_helper_funcs malidp_crtc_helper_funcs = {
>   	.mode_valid = malidp_crtc_mode_valid,
> -	.disable = malidp_crtc_disable,
>   	.atomic_check = malidp_crtc_atomic_check,
>   	.atomic_enable = malidp_crtc_atomic_enable,
> +	.atomic_disable = malidp_crtc_atomic_disable,
>   };
>   
>   static struct drm_crtc_state *malidp_crtc_duplicate_state(struct drm_crtc *crtc)
> diff --git a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c
> index e54e503180f4..441769c5bcd4 100644
> --- a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c
> +++ b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c
> @@ -149,7 +149,8 @@ atmel_hlcdc_crtc_mode_valid(struct drm_crtc *c,
>   	return atmel_hlcdc_dc_mode_valid(crtc->dc, mode);
>   }
>   
> -static void atmel_hlcdc_crtc_disable(struct drm_crtc *c)
> +static void atmel_hlcdc_crtc_atomic_disable(struct drm_crtc *c,
> +					    struct drm_crtc_state *old_state)
>   {
>   	struct drm_device *dev = c->dev;
>   	struct atmel_hlcdc_crtc *crtc = drm_crtc_to_atmel_hlcdc_crtc(c);
> @@ -320,11 +321,11 @@ static const struct drm_crtc_helper_funcs lcdc_crtc_helper_funcs = {
>   	.mode_set = drm_helper_crtc_mode_set,
>   	.mode_set_nofb = atmel_hlcdc_crtc_mode_set_nofb,
>   	.mode_set_base = drm_helper_crtc_mode_set_base,
> -	.disable = atmel_hlcdc_crtc_disable,
>   	.atomic_check = atmel_hlcdc_crtc_atomic_check,
>   	.atomic_begin = atmel_hlcdc_crtc_atomic_begin,
>   	.atomic_flush = atmel_hlcdc_crtc_atomic_flush,
>   	.atomic_enable = atmel_hlcdc_crtc_atomic_enable,
> +	.atomic_disable = atmel_hlcdc_crtc_atomic_disable,
>   };
>   
>   static void atmel_hlcdc_crtc_destroy(struct drm_crtc *c)
> diff --git a/drivers/gpu/drm/drm_simple_kms_helper.c b/drivers/gpu/drm/drm_simple_kms_helper.c
> index 58c27ab1756f..98250854af75 100644
> --- a/drivers/gpu/drm/drm_simple_kms_helper.c
> +++ b/drivers/gpu/drm/drm_simple_kms_helper.c
> @@ -52,7 +52,8 @@ static void drm_simple_kms_crtc_enable(struct drm_crtc *crtc,
>   	pipe->funcs->enable(pipe, crtc->state);
>   }
>   
> -static void drm_simple_kms_crtc_disable(struct drm_crtc *crtc)
> +static void drm_simple_kms_crtc_disable(struct drm_crtc *crtc,
> +					struct drm_crtc_state *old_state)
>   {
>   	struct drm_simple_display_pipe *pipe;
>   
> @@ -66,7 +67,7 @@ static void drm_simple_kms_crtc_disable(struct drm_crtc *crtc)
>   static const struct drm_crtc_helper_funcs drm_simple_kms_crtc_helper_funcs = {
>   	.atomic_check = drm_simple_kms_crtc_check,
>   	.atomic_enable = drm_simple_kms_crtc_enable,
> -	.disable = drm_simple_kms_crtc_disable,
> +	.atomic_disable = drm_simple_kms_crtc_disable,
>   };
>   
>   static const struct drm_crtc_funcs drm_simple_kms_crtc_funcs = {
> diff --git a/drivers/gpu/drm/exynos/exynos_drm_crtc.c b/drivers/gpu/drm/exynos/exynos_drm_crtc.c
> index b7e2fadb6442..c37078fbe0ea 100644
> --- a/drivers/gpu/drm/exynos/exynos_drm_crtc.c
> +++ b/drivers/gpu/drm/exynos/exynos_drm_crtc.c
> @@ -32,7 +32,8 @@ static void exynos_drm_crtc_atomic_enable(struct drm_crtc *crtc,
>   	drm_crtc_vblank_on(crtc);
>   }
>   
> -static void exynos_drm_crtc_disable(struct drm_crtc *crtc)
> +static void exynos_drm_crtc_atomic_disable(struct drm_crtc *crtc,
> +					   struct drm_crtc_state *old_state)
>   {
>   	struct exynos_drm_crtc *exynos_crtc = to_exynos_crtc(crtc);
>   
> @@ -83,11 +84,11 @@ static void exynos_crtc_atomic_flush(struct drm_crtc *crtc,
>   }
>   
>   static const struct drm_crtc_helper_funcs exynos_crtc_helper_funcs = {
> -	.disable	= exynos_drm_crtc_disable,
>   	.atomic_check	= exynos_crtc_atomic_check,
>   	.atomic_begin	= exynos_crtc_atomic_begin,
>   	.atomic_flush	= exynos_crtc_atomic_flush,
>   	.atomic_enable	= exynos_drm_crtc_atomic_enable,
> +	.atomic_disable	= exynos_drm_crtc_atomic_disable,
>   };
>   
>   void exynos_crtc_handle_event(struct exynos_drm_crtc *exynos_crtc)
> diff --git a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c
> index 49ef47c0c81a..54a4542a40f1 100644
> --- a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c
> +++ b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c
> @@ -210,7 +210,8 @@ static void hibmc_crtc_atomic_enable(struct drm_crtc *crtc,
>   	drm_crtc_vblank_on(crtc);
>   }
>   
> -static void hibmc_crtc_disable(struct drm_crtc *crtc)
> +static void hibmc_crtc_atomic_disable(struct drm_crtc *crtc,
> +				      struct drm_crtc_state *old_state)
>   {
>   	unsigned int reg;
>   	struct hibmc_drm_private *priv = crtc->dev->dev_private;
> @@ -454,11 +455,11 @@ static const struct drm_crtc_funcs hibmc_crtc_funcs = {
>   };
>   
>   static const struct drm_crtc_helper_funcs hibmc_crtc_helper_funcs = {
> -	.disable	= hibmc_crtc_disable,
>   	.mode_set_nofb	= hibmc_crtc_mode_set_nofb,
>   	.atomic_begin	= hibmc_crtc_atomic_begin,
>   	.atomic_flush	= hibmc_crtc_atomic_flush,
>   	.atomic_enable	= hibmc_crtc_atomic_enable,
> +	.atomic_disable	= hibmc_crtc_atomic_disable,
>   };
>   
>   int hibmc_de_init(struct hibmc_drm_private *priv)
> diff --git a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> index 8e00818b24fc..7e3abbf4ef73 100644
> --- a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> +++ b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> @@ -490,7 +490,8 @@ static void ade_crtc_atomic_enable(struct drm_crtc *crtc,
>   	acrtc->enable = true;
>   }
>   
> -static void ade_crtc_disable(struct drm_crtc *crtc)
> +static void ade_crtc_atomic_disable(struct drm_crtc *crtc,
> +				    struct drm_crtc_state *old_state)
>   {
>   	struct ade_crtc *acrtc = to_ade_crtc(crtc);
>   	struct ade_hw_ctx *ctx = acrtc->ctx;
> @@ -554,11 +555,11 @@ static void ade_crtc_atomic_flush(struct drm_crtc *crtc,
>   }
>   
>   static const struct drm_crtc_helper_funcs ade_crtc_helper_funcs = {
> -	.disable	= ade_crtc_disable,
>   	.mode_set_nofb	= ade_crtc_mode_set_nofb,
>   	.atomic_begin	= ade_crtc_atomic_begin,
>   	.atomic_flush	= ade_crtc_atomic_flush,
>   	.atomic_enable	= ade_crtc_atomic_enable,
> +	.atomic_disable	= ade_crtc_atomic_disable,
>   };
>   
>   static const struct drm_crtc_funcs ade_crtc_funcs = {
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
> index 5971b0827d1b..fc65c57dda8c 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
> @@ -391,7 +391,8 @@ static void mtk_drm_crtc_atomic_enable(struct drm_crtc *crtc,
>   	mtk_crtc->enabled = true;
>   }
>   
> -static void mtk_drm_crtc_disable(struct drm_crtc *crtc)
> +static void mtk_drm_crtc_atomic_disable(struct drm_crtc *crtc,
> +					struct drm_crtc_state *old_state)
>   {
>   	struct mtk_drm_crtc *mtk_crtc = to_mtk_crtc(crtc);
>   	struct mtk_ddp_comp *ovl = mtk_crtc->ddp_comp[0];
> @@ -488,10 +489,10 @@ static const struct drm_crtc_funcs mtk_crtc_funcs = {
>   static const struct drm_crtc_helper_funcs mtk_crtc_helper_funcs = {
>   	.mode_fixup	= mtk_drm_crtc_mode_fixup,
>   	.mode_set_nofb	= mtk_drm_crtc_mode_set_nofb,
> -	.disable	= mtk_drm_crtc_disable,
>   	.atomic_begin	= mtk_drm_crtc_atomic_begin,
>   	.atomic_flush	= mtk_drm_crtc_atomic_flush,
>   	.atomic_enable	= mtk_drm_crtc_atomic_enable,
> +	.atomic_disable	= mtk_drm_crtc_atomic_disable,
>   };
>   
>   static int mtk_drm_crtc_init(struct drm_device *drm,
> diff --git a/drivers/gpu/drm/meson/meson_crtc.c b/drivers/gpu/drm/meson/meson_crtc.c
> index 6f148307b0e0..5155f0179b61 100644
> --- a/drivers/gpu/drm/meson/meson_crtc.c
> +++ b/drivers/gpu/drm/meson/meson_crtc.c
> @@ -103,7 +103,8 @@ static void meson_crtc_atomic_enable(struct drm_crtc *crtc,
>   	priv->viu.osd1_enabled = true;
>   }
>   
> -static void meson_crtc_disable(struct drm_crtc *crtc)
> +static void meson_crtc_atomic_disable(struct drm_crtc *crtc,
> +				      struct drm_crtc_state *old_state)
>   {
>   	struct meson_crtc *meson_crtc = to_meson_crtc(crtc);
>   	struct meson_drm *priv = meson_crtc->priv;
> @@ -150,10 +151,10 @@ static void meson_crtc_atomic_flush(struct drm_crtc *crtc,
>   }
>   
>   static const struct drm_crtc_helper_funcs meson_crtc_helper_funcs = {
> -	.disable	= meson_crtc_disable,
>   	.atomic_begin	= meson_crtc_atomic_begin,
>   	.atomic_flush	= meson_crtc_atomic_flush,
>   	.atomic_enable	= meson_crtc_atomic_enable,
> +	.atomic_disable	= meson_crtc_atomic_disable,
>   };
>   
>   void meson_crtc_irq(struct meson_drm *priv)
> diff --git a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c
> index 9c20133f3f8d..3c7a9d343e05 100644
> --- a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c
> +++ b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c
> @@ -279,7 +279,8 @@ static void mdp4_crtc_mode_set_nofb(struct drm_crtc *crtc)
>   	}
>   }
>   
> -static void mdp4_crtc_disable(struct drm_crtc *crtc)
> +static void mdp4_crtc_atomic_disable(struct drm_crtc *crtc,
> +				     struct drm_crtc_state *old_state)
>   {
>   	struct mdp4_crtc *mdp4_crtc = to_mdp4_crtc(crtc);
>   	struct mdp4_kms *mdp4_kms = get_kms(crtc);
> @@ -493,11 +494,11 @@ static const struct drm_crtc_funcs mdp4_crtc_funcs = {
>   
>   static const struct drm_crtc_helper_funcs mdp4_crtc_helper_funcs = {
>   	.mode_set_nofb = mdp4_crtc_mode_set_nofb,
> -	.disable = mdp4_crtc_disable,
>   	.atomic_check = mdp4_crtc_atomic_check,
>   	.atomic_begin = mdp4_crtc_atomic_begin,
>   	.atomic_flush = mdp4_crtc_atomic_flush,
>   	.atomic_enable = mdp4_crtc_atomic_enable,
> +	.atomic_disable = mdp4_crtc_atomic_disable,
>   };
>   
>   static void mdp4_crtc_vblank_irq(struct mdp_irq *irq, uint32_t irqstatus)
> diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c
> index d39d9d24d169..4322a502555a 100644
> --- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c
> +++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c
> @@ -409,7 +409,8 @@ static void mdp5_crtc_mode_set_nofb(struct drm_crtc *crtc)
>   	spin_unlock_irqrestore(&mdp5_crtc->lm_lock, flags);
>   }
>   
> -static void mdp5_crtc_disable(struct drm_crtc *crtc)
> +static void mdp5_crtc_atomic_disable(struct drm_crtc *crtc,
> +				     struct drm_crtc_state *old_state)
>   {
>   	struct mdp5_crtc *mdp5_crtc = to_mdp5_crtc(crtc);
>   	struct mdp5_crtc_state *mdp5_cstate = to_mdp5_crtc_state(crtc->state);
> @@ -940,11 +941,11 @@ static const struct drm_crtc_funcs mdp5_crtc_no_lm_cursor_funcs = {
>   
>   static const struct drm_crtc_helper_funcs mdp5_crtc_helper_funcs = {
>   	.mode_set_nofb = mdp5_crtc_mode_set_nofb,
> -	.disable = mdp5_crtc_disable,
>   	.atomic_check = mdp5_crtc_atomic_check,
>   	.atomic_begin = mdp5_crtc_atomic_begin,
>   	.atomic_flush = mdp5_crtc_atomic_flush,
>   	.atomic_enable = mdp5_crtc_atomic_enable,
> +	.atomic_disable = mdp5_crtc_atomic_disable,
>   };
>   
>   static void mdp5_crtc_vblank_irq(struct mdp_irq *irq, uint32_t irqstatus)
> diff --git a/drivers/gpu/drm/omapdrm/omap_crtc.c b/drivers/gpu/drm/omapdrm/omap_crtc.c
> index 7a1b7a9cc270..14e8a7738b06 100644
> --- a/drivers/gpu/drm/omapdrm/omap_crtc.c
> +++ b/drivers/gpu/drm/omapdrm/omap_crtc.c
> @@ -373,7 +373,8 @@ static void omap_crtc_atomic_enable(struct drm_crtc *crtc,
>   	spin_unlock_irq(&crtc->dev->event_lock);
>   }
>   
> -static void omap_crtc_disable(struct drm_crtc *crtc)
> +static void omap_crtc_atomic_disable(struct drm_crtc *crtc,
> +				     struct drm_crtc_state *old_state)
>   {
>   	struct omap_crtc *omap_crtc = to_omap_crtc(crtc);
>   
> @@ -568,11 +569,11 @@ static const struct drm_crtc_funcs omap_crtc_funcs = {
>   
>   static const struct drm_crtc_helper_funcs omap_crtc_helper_funcs = {
>   	.mode_set_nofb = omap_crtc_mode_set_nofb,
> -	.disable = omap_crtc_disable,
>   	.atomic_check = omap_crtc_atomic_check,
>   	.atomic_begin = omap_crtc_atomic_begin,
>   	.atomic_flush = omap_crtc_atomic_flush,
>   	.atomic_enable = omap_crtc_atomic_enable,
> +	.atomic_disable = omap_crtc_atomic_disable,
>   };
>   
>   /* -----------------------------------------------------------------------------
> diff --git a/drivers/gpu/drm/qxl/qxl_display.c b/drivers/gpu/drm/qxl/qxl_display.c
> index ea95e7e7cc7f..5eeae89c138d 100644
> --- a/drivers/gpu/drm/qxl/qxl_display.c
> +++ b/drivers/gpu/drm/qxl/qxl_display.c
> @@ -453,7 +453,8 @@ static void qxl_crtc_atomic_enable(struct drm_crtc *crtc,
>   	DRM_DEBUG("\n");
>   }
>   
> -static void qxl_crtc_disable(struct drm_crtc *crtc)
> +static void qxl_crtc_atomic_disable(struct drm_crtc *crtc,
> +				    struct drm_crtc_state *old_state)
>   {
>   	struct qxl_crtc *qcrtc = to_qxl_crtc(crtc);
>   	struct qxl_device *qdev = crtc->dev->dev_private;
> @@ -464,11 +465,11 @@ static void qxl_crtc_disable(struct drm_crtc *crtc)
>   }
>   
>   static const struct drm_crtc_helper_funcs qxl_crtc_helper_funcs = {
> -	.disable = qxl_crtc_disable,
>   	.mode_fixup = qxl_crtc_mode_fixup,
>   	.mode_set_nofb = qxl_mode_set_nofb,
>   	.atomic_flush = qxl_crtc_atomic_flush,
>   	.atomic_enable = qxl_crtc_atomic_enable,
> +	.atomic_disable = qxl_crtc_atomic_disable,
>   };
>   
>   static int qxl_primary_atomic_check(struct drm_plane *plane,
> diff --git a/drivers/gpu/drm/rcar-du/rcar_du_crtc.c b/drivers/gpu/drm/rcar-du/rcar_du_crtc.c
> index 6aa3fa8d06f9..f131fc68cc46 100644
> --- a/drivers/gpu/drm/rcar-du/rcar_du_crtc.c
> +++ b/drivers/gpu/drm/rcar-du/rcar_du_crtc.c
> @@ -561,7 +561,8 @@ static void rcar_du_crtc_atomic_enable(struct drm_crtc *crtc,
>   	rcar_du_crtc_start(rcrtc);
>   }
>   
> -static void rcar_du_crtc_disable(struct drm_crtc *crtc)
> +static void rcar_du_crtc_atomic_disable(struct drm_crtc *crtc,
> +					struct drm_crtc_state *old_state)
>   {
>   	struct rcar_du_crtc *rcrtc = to_rcar_crtc(crtc);
>   
> @@ -610,10 +611,10 @@ static void rcar_du_crtc_atomic_flush(struct drm_crtc *crtc,
>   }
>   
>   static const struct drm_crtc_helper_funcs crtc_helper_funcs = {
> -	.disable = rcar_du_crtc_disable,
>   	.atomic_begin = rcar_du_crtc_atomic_begin,
>   	.atomic_flush = rcar_du_crtc_atomic_flush,
>   	.atomic_enable = rcar_du_crtc_atomic_enable,
> +	.atomic_disable = rcar_du_crtc_atomic_disable,
>   };
>   
>   static int rcar_du_crtc_enable_vblank(struct drm_crtc *crtc)
> diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
> index bb59f7410634..ee876a9631f0 100644
> --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
> +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
> @@ -563,7 +563,8 @@ static int vop_enable(struct drm_crtc *crtc)
>   	return ret;
>   }
>   
> -static void vop_crtc_disable(struct drm_crtc *crtc)
> +static void vop_crtc_atomic_disable(struct drm_crtc *crtc,
> +				    struct drm_crtc_state *old_state)
>   {
>   	struct vop *vop = to_vop(crtc);
>   	int i;
> @@ -1080,11 +1081,11 @@ static void vop_crtc_atomic_begin(struct drm_crtc *crtc,
>   }
>   
>   static const struct drm_crtc_helper_funcs vop_crtc_helper_funcs = {
> -	.disable = vop_crtc_disable,
>   	.mode_fixup = vop_crtc_mode_fixup,
>   	.atomic_flush = vop_crtc_atomic_flush,
>   	.atomic_begin = vop_crtc_atomic_begin,
>   	.atomic_enable = vop_crtc_atomic_enable,
> +	.atomic_disable = vop_crtc_atomic_disable,
>   };
>   
>   static void vop_crtc_destroy(struct drm_crtc *crtc)
> diff --git a/drivers/gpu/drm/sti/sti_crtc.c b/drivers/gpu/drm/sti/sti_crtc.c
> index bb864345fedf..e8a4d48e985a 100644
> --- a/drivers/gpu/drm/sti/sti_crtc.c
> +++ b/drivers/gpu/drm/sti/sti_crtc.c
> @@ -32,7 +32,8 @@ static void sti_crtc_atomic_enable(struct drm_crtc *crtc,
>   	drm_crtc_vblank_on(crtc);
>   }
>   
> -static void sti_crtc_disabling(struct drm_crtc *crtc)
> +static void sti_crtc_atomic_disable(struct drm_crtc *crtc,
> +				    struct drm_crtc_state *old_state)
>   {
>   	struct sti_mixer *mixer = to_sti_mixer(crtc);
>   
> @@ -223,10 +224,10 @@ static void sti_crtc_atomic_flush(struct drm_crtc *crtc,
>   }
>   
>   static const struct drm_crtc_helper_funcs sti_crtc_helper_funcs = {
> -	.disable = sti_crtc_disabling,
>   	.mode_set_nofb = sti_crtc_mode_set_nofb,
>   	.atomic_flush = sti_crtc_atomic_flush,
>   	.atomic_enable = sti_crtc_atomic_enable,
> +	.atomic_disable = sti_crtc_atomic_disable,
>   };
>   
>   static void sti_crtc_destroy(struct drm_crtc *crtc)
> diff --git a/drivers/gpu/drm/stm/ltdc.c b/drivers/gpu/drm/stm/ltdc.c
> index 337fce004d08..533176015cbb 100644
> --- a/drivers/gpu/drm/stm/ltdc.c
> +++ b/drivers/gpu/drm/stm/ltdc.c
> @@ -408,7 +408,8 @@ static void ltdc_crtc_atomic_enable(struct drm_crtc *crtc,
>   	drm_crtc_vblank_on(crtc);
>   }
>   
> -static void ltdc_crtc_disable(struct drm_crtc *crtc)
> +static void ltdc_crtc_atomic_disable(struct drm_crtc *crtc,
> +				     struct drm_crtc_state *old_state)
>   {
>   	struct ltdc_device *ldev = crtc_to_ltdc(crtc);
>   
> @@ -525,10 +526,10 @@ static void ltdc_crtc_atomic_flush(struct drm_crtc *crtc,
>   
>   static struct drm_crtc_helper_funcs ltdc_crtc_helper_funcs = {
>   	.load_lut = ltdc_crtc_load_lut,
> -	.disable = ltdc_crtc_disable,
>   	.mode_set_nofb = ltdc_crtc_mode_set_nofb,
>   	.atomic_flush = ltdc_crtc_atomic_flush,
>   	.atomic_enable = ltdc_crtc_atomic_enable,
> +	.atomic_disable = ltdc_crtc_atomic_disable,
>   };
>   
>   int ltdc_crtc_enable_vblank(struct drm_device *ddev, unsigned int pipe)
> diff --git a/drivers/gpu/drm/sun4i/sun4i_crtc.c b/drivers/gpu/drm/sun4i/sun4i_crtc.c
> index 509e4d8014f3..d097c6f93ad0 100644
> --- a/drivers/gpu/drm/sun4i/sun4i_crtc.c
> +++ b/drivers/gpu/drm/sun4i/sun4i_crtc.c
> @@ -69,7 +69,8 @@ static void sun4i_crtc_atomic_flush(struct drm_crtc *crtc,
>   	}
>   }
>   
> -static void sun4i_crtc_disable(struct drm_crtc *crtc)
> +static void sun4i_crtc_atomic_disable(struct drm_crtc *crtc,
> +				      struct drm_crtc_state *old_state)
>   {
>   	struct sun4i_crtc *scrtc = drm_crtc_to_sun4i_crtc(crtc);
>   
> @@ -100,7 +101,7 @@ static const struct drm_crtc_helper_funcs sun4i_crtc_helper_funcs = {
>   	.atomic_begin	= sun4i_crtc_atomic_begin,
>   	.atomic_flush	= sun4i_crtc_atomic_flush,
>   	.atomic_enable	= sun4i_crtc_atomic_enable,
> -	.disable	= sun4i_crtc_disable,
> +	.atomic_disable	= sun4i_crtc_atomic_disable,
>   };
>   
>   static int sun4i_crtc_enable_vblank(struct drm_crtc *crtc)
> diff --git a/drivers/gpu/drm/tegra/dc.c b/drivers/gpu/drm/tegra/dc.c
> index 2e0d167cb657..0cb9b90e2e68 100644
> --- a/drivers/gpu/drm/tegra/dc.c
> +++ b/drivers/gpu/drm/tegra/dc.c
> @@ -1199,7 +1199,8 @@ static int tegra_dc_wait_idle(struct tegra_dc *dc, unsigned long timeout)
>   	return -ETIMEDOUT;
>   }
>   
> -static void tegra_crtc_disable(struct drm_crtc *crtc)
> +static void tegra_crtc_atomic_disable(struct drm_crtc *crtc,
> +				      struct drm_crtc_state *old_state)
>   {
>   	struct tegra_dc *dc = to_tegra_dc(crtc);
>   	u32 value;
> @@ -1352,11 +1353,11 @@ static void tegra_crtc_atomic_flush(struct drm_crtc *crtc,
>   }
>   
>   static const struct drm_crtc_helper_funcs tegra_crtc_helper_funcs = {
> -	.disable = tegra_crtc_disable,
>   	.atomic_check = tegra_crtc_atomic_check,
>   	.atomic_begin = tegra_crtc_atomic_begin,
>   	.atomic_flush = tegra_crtc_atomic_flush,
>   	.atomic_enable = tegra_crtc_atomic_enable,
> +	.atomic_disable = tegra_crtc_atomic_disable,
>   };
>   
>   static irqreturn_t tegra_dc_irq(int irq, void *data)
> diff --git a/drivers/gpu/drm/tilcdc/tilcdc_crtc.c b/drivers/gpu/drm/tilcdc/tilcdc_crtc.c
> index 6c5892763d27..a43e720ab4e8 100644
> --- a/drivers/gpu/drm/tilcdc/tilcdc_crtc.c
> +++ b/drivers/gpu/drm/tilcdc/tilcdc_crtc.c
> @@ -568,6 +568,12 @@ static void tilcdc_crtc_disable(struct drm_crtc *crtc)
>   	tilcdc_crtc_off(crtc, false);
>   }
>   
> +static void tilcdc_crtc_atomic_disable(struct drm_crtc *crtc,
> +				       struct drm_crtc_state *old_state)
> +{
> +	tilcdc_crtc_disable(crtc);
> +}
> +
>   void tilcdc_crtc_shutdown(struct drm_crtc *crtc)
>   {
>   	tilcdc_crtc_off(crtc, true);
> @@ -735,9 +741,9 @@ static const struct drm_crtc_funcs tilcdc_crtc_funcs = {
>   
>   static const struct drm_crtc_helper_funcs tilcdc_crtc_helper_funcs = {
>   		.mode_fixup     = tilcdc_crtc_mode_fixup,
> -		.disable	= tilcdc_crtc_disable,
>   		.atomic_check	= tilcdc_crtc_atomic_check,
>   		.atomic_enable	= tilcdc_crtc_atomic_enable,
> +		.atomic_disable	= tilcdc_crtc_atomic_disable,
>   };
>   
>   int tilcdc_crtc_max_width(struct drm_crtc *crtc)
> diff --git a/drivers/gpu/drm/vc4/vc4_crtc.c b/drivers/gpu/drm/vc4/vc4_crtc.c
> index 4c03a565b276..9e0c1500375c 100644
> --- a/drivers/gpu/drm/vc4/vc4_crtc.c
> +++ b/drivers/gpu/drm/vc4/vc4_crtc.c
> @@ -479,7 +479,8 @@ static void require_hvs_enabled(struct drm_device *dev)
>   		     SCALER_DISPCTRL_ENABLE);
>   }
>   
> -static void vc4_crtc_disable(struct drm_crtc *crtc)
> +static void vc4_crtc_atomic_disable(struct drm_crtc *crtc,
> +				    struct drm_crtc_state *old_state)
>   {
>   	struct drm_device *dev = crtc->dev;
>   	struct vc4_dev *vc4 = to_vc4_dev(dev);
> @@ -870,11 +871,11 @@ static const struct drm_crtc_funcs vc4_crtc_funcs = {
>   
>   static const struct drm_crtc_helper_funcs vc4_crtc_helper_funcs = {
>   	.mode_set_nofb = vc4_crtc_mode_set_nofb,
> -	.disable = vc4_crtc_disable,
>   	.mode_valid = vc4_crtc_mode_valid,
>   	.atomic_check = vc4_crtc_atomic_check,
>   	.atomic_flush = vc4_crtc_atomic_flush,
>   	.atomic_enable = vc4_crtc_atomic_enable,
> +	.atomic_disable = vc4_crtc_atomic_disable,
>   };
>   
>   static const struct vc4_crtc_data pv0_data = {
> diff --git a/drivers/gpu/drm/virtio/virtgpu_display.c b/drivers/gpu/drm/virtio/virtgpu_display.c
> index 03a3c12ed100..ffd22e5ab43a 100644
> --- a/drivers/gpu/drm/virtio/virtgpu_display.c
> +++ b/drivers/gpu/drm/virtio/virtgpu_display.c
> @@ -118,7 +118,8 @@ static void virtio_gpu_crtc_atomic_enable(struct drm_crtc *crtc,
>   {
>   }
>   
> -static void virtio_gpu_crtc_disable(struct drm_crtc *crtc)
> +static void virtio_gpu_crtc_atomic_disable(struct drm_crtc *crtc,
> +					   struct drm_crtc_state *old_state)
>   {
>   	struct drm_device *dev = crtc->dev;
>   	struct virtio_gpu_device *vgdev = dev->dev_private;
> @@ -146,11 +147,11 @@ static void virtio_gpu_crtc_atomic_flush(struct drm_crtc *crtc,
>   }
>   
>   static const struct drm_crtc_helper_funcs virtio_gpu_crtc_helper_funcs = {
> -	.disable       = virtio_gpu_crtc_disable,
>   	.mode_set_nofb = virtio_gpu_crtc_mode_set_nofb,
>   	.atomic_check  = virtio_gpu_crtc_atomic_check,
>   	.atomic_flush  = virtio_gpu_crtc_atomic_flush,
>   	.atomic_enable = virtio_gpu_crtc_atomic_enable,
> +	.atomic_disable = virtio_gpu_crtc_atomic_disable,
>   };
>   
>   static void virtio_gpu_enc_mode_set(struct drm_encoder *encoder,
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c b/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c
> index 832b83c582c2..6391069498d6 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c
> @@ -218,11 +218,12 @@ static void vmw_ldu_crtc_atomic_enable(struct drm_crtc *crtc,
>   }
>   
>   /**
> - * vmw_ldu_crtc_helper_disable - Turns off CRTC
> + * vmw_ldu_crtc_atomic_disable - Turns off CRTC
>    *
>    * @crtc: CRTC to be turned off
>    */
> -static void vmw_ldu_crtc_helper_disable(struct drm_crtc *crtc)
> +static void vmw_ldu_crtc_atomic_disable(struct drm_crtc *crtc,
> +					struct drm_crtc_state *old_state)
>   {
>   }
>   
> @@ -377,12 +378,12 @@ drm_plane_helper_funcs vmw_ldu_primary_plane_helper_funcs = {
>   };
>   
>   static const struct drm_crtc_helper_funcs vmw_ldu_crtc_helper_funcs = {
> -	.disable = vmw_ldu_crtc_helper_disable,
>   	.mode_set_nofb = vmw_ldu_crtc_mode_set_nofb,
>   	.atomic_check = vmw_du_crtc_atomic_check,
>   	.atomic_begin = vmw_du_crtc_atomic_begin,
>   	.atomic_flush = vmw_du_crtc_atomic_flush,
>   	.atomic_enable = vmw_ldu_crtc_atomic_enable,
> +	.atomic_disable = vmw_ldu_crtc_atomic_disable,
>   };
>   
>   
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c b/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c
> index 8ba3bad06909..854403509216 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c
> @@ -282,11 +282,12 @@ static void vmw_sou_crtc_atomic_enable(struct drm_crtc *crtc,
>   }
>   
>   /**
> - * vmw_sou_crtc_helper_disable - Turns off CRTC
> + * vmw_sou_crtc_atomic_disable - Turns off CRTC
>    *
>    * @crtc: CRTC to be turned off
>    */
> -static void vmw_sou_crtc_helper_disable(struct drm_crtc *crtc)
> +static void vmw_sou_crtc_atomic_disable(struct drm_crtc *crtc,
> +					struct drm_crtc_state *old_state)
>   {
>   	struct vmw_private *dev_priv;
>   	struct vmw_screen_object_unit *sou;
> @@ -574,12 +575,12 @@ drm_plane_helper_funcs vmw_sou_primary_plane_helper_funcs = {
>   
>   static const struct drm_crtc_helper_funcs vmw_sou_crtc_helper_funcs = {
>   	.prepare = vmw_sou_crtc_helper_prepare,
> -	.disable = vmw_sou_crtc_helper_disable,
>   	.mode_set_nofb = vmw_sou_crtc_mode_set_nofb,
>   	.atomic_check = vmw_du_crtc_atomic_check,
>   	.atomic_begin = vmw_du_crtc_atomic_begin,
>   	.atomic_flush = vmw_du_crtc_atomic_flush,
>   	.atomic_enable = vmw_sou_crtc_atomic_enable,
> +	.atomic_disable = vmw_sou_crtc_atomic_disable,
>   };
>   
>   
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c b/drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c
> index f2b39d9c51cc..ed9404a7f457 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c
> @@ -433,7 +433,8 @@ static void vmw_stdu_crtc_atomic_enable(struct drm_crtc *crtc,
>   		vmw_kms_del_active(dev_priv, &stdu->base);
>   }
>   
> -static void vmw_stdu_crtc_helper_disable(struct drm_crtc *crtc)
> +static void vmw_stdu_crtc_atomic_disable(struct drm_crtc *crtc,
> +					 struct drm_crtc_state *old_state)
>   {
>   	struct vmw_private *dev_priv;
>   	struct vmw_screen_target_display_unit *stdu;
> @@ -1416,12 +1417,12 @@ drm_plane_helper_funcs vmw_stdu_primary_plane_helper_funcs = {
>   
>   static const struct drm_crtc_helper_funcs vmw_stdu_crtc_helper_funcs = {
>   	.prepare = vmw_stdu_crtc_helper_prepare,
> -	.disable = vmw_stdu_crtc_helper_disable,
>   	.mode_set_nofb = vmw_stdu_crtc_mode_set_nofb,
>   	.atomic_check = vmw_du_crtc_atomic_check,
>   	.atomic_begin = vmw_du_crtc_atomic_begin,
>   	.atomic_flush = vmw_du_crtc_atomic_flush,
>   	.atomic_enable = vmw_stdu_crtc_atomic_enable,
> +	.atomic_disable = vmw_stdu_crtc_atomic_disable,
>   };
>   
>   
> diff --git a/drivers/gpu/drm/zte/zx_vou.c b/drivers/gpu/drm/zte/zx_vou.c
> index ccb4b0bdb8c6..7491813131f3 100644
> --- a/drivers/gpu/drm/zte/zx_vou.c
> +++ b/drivers/gpu/drm/zte/zx_vou.c
> @@ -455,7 +455,8 @@ static void zx_crtc_atomic_enable(struct drm_crtc *crtc,
>   		DRM_DEV_ERROR(vou->dev, "failed to enable pixclk: %d\n", ret);
>   }
>   
> -static void zx_crtc_disable(struct drm_crtc *crtc)
> +static void zx_crtc_atomic_disable(struct drm_crtc *crtc,
> +				   struct drm_crtc_state *old_state)
>   {
>   	struct zx_crtc *zcrtc = to_zx_crtc(crtc);
>   	const struct zx_crtc_bits *bits = zcrtc->bits;
> @@ -491,9 +492,9 @@ static void zx_crtc_atomic_flush(struct drm_crtc *crtc,
>   }
>   
>   static const struct drm_crtc_helper_funcs zx_crtc_helper_funcs = {
> -	.disable = zx_crtc_disable,
>   	.atomic_flush = zx_crtc_atomic_flush,
>   	.atomic_enable = zx_crtc_atomic_enable,
> +	.atomic_disable = zx_crtc_atomic_disable,
>   };
>   
>   static int zx_vou_enable_vblank(struct drm_crtc *crtc)
> 


More information about the dri-devel mailing list