On Fri, Jun 30, 2017 at 12:36:45PM +0300, 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@xxxxxxxxxxxxxxxx> > Acked-by: Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx> # for sun4i > Acked-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx> # for mediatek > Acked-by: Alexey Brodkin <abrodkin@xxxxxxxxxxxx> # for arcpgu > Acked-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx> # for atmel-hlcdc > Tested-by: Philippe Cornu <philippe.cornu@xxxxxx> # for stm > Acked-by: Philippe Cornu <philippe.cornu@xxxxxx> # for stm > Acked-by: Vincent Abriou <vincent.abriou@xxxxxx> # for sti > Reviewed-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx> # for vmwgfx Patches 1&2 merged, I think they gathered sufficient acks :-) I'll leave 3 for Thomas to pick up for 4.14 through the vmwgfx tree. Thanks, Daniel > --- > 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 +++-- > 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) > -- > Regards, > > Laurent Pinchart > > _______________________________________________ > dri-devel mailing list > dri-devel@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/dri-devel -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel