All of lore.kernel.org
 help / color / mirror / Atom feed
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: Neil Armstrong <narmstrong@baylibre.com>,
	m@freedesktop.org, Liviu Dudau <liviu.dudau@arm.com>,
	dri-devel@lists.freedesktop.org,
	Thierry Reding <thierry.reding@gmail.com>,
	Gerd Hoffmann <kraxel@redhat.com>,
	Daniel Vetter <daniel.vetter@intel.com>,
	Kyungmin Park <kyungmin.park@samsung.co>,
	Boris Brezillon <boris.brezillon@free-electrons.com>,
	Thomas Hellstrom <thellstrom@vmware.com>,
	Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>,
	Alexey Brodkin <abrodkin@synopsys.com>,
	Xinliang Liu <z.liuxinliang@hisilicon.com>,
	Xinwei Kong <kong.kongxinwei@hisilicon.com>,
	Tomi Valkeinen <tomi.valkeinen@ti.com>,
	Mali DP Maintainers <malidp@foss.arm.com>,
	Dave Airlie <airlied@redhat.com>,
	Chen Feng <puck.chen@hisilicon.com>, Jyri Sarha <jsarha@ti.com>,
	Vincent Abriou <vincent.abriou@st.com>,
	VMware Graphics <linux-graphics-maintainer@vmware.com>,
	Alison Wang <alison.w>
Subject: Re: [PATCH 7/8] drm: Add old state pointer to CRTC .enable() helper function
Date: Wed, 28 Jun 2017 14:55:08 +0300	[thread overview]
Message-ID: <1617739.Y0EePd6PWn@avalon> (raw)
In-Reply-To: <20170628074254.puzcyteol3csvpt2@phenom.ffwll.local>

Hi Daniel,

On Wednesday 28 Jun 2017 09:42:54 Daniel Vetter wrote:
> On Wed, Jun 28, 2017 at 12:16:20AM +0300, Laurent Pinchart wrote:
> > diff --git a/include/drm/drm_modeset_helper_vtables.h
> > b/include/drm/drm_modeset_helper_vtables.h index
> > 474a1029ec79..d74a2cafc3de 100644
> > --- a/include/drm/drm_modeset_helper_vtables.h
> > +++ b/include/drm/drm_modeset_helper_vtables.h
> > @@ -316,24 +316,6 @@ struct drm_crtc_helper_funcs {
> >  	void (*disable)(struct drm_crtc *crtc);
> >  	
> >  	/**
> > -	 * @enable:
> > -	 *
> > -	 * This callback should be used to enable the CRTC. With the atomic
> > -	 * drivers it is called before all encoders connected to this CRTC are
> > -	 * enabled through the encoder's own &drm_encoder_helper_funcs.enable
> > -	 * hook.  If that sequence is too simple drivers can just add their 
own
> > -	 * hooks and call it from this CRTC callback here by looping over all
> > -	 * encoders connected to it using for_each_encoder_on_crtc().
> > -	 *
> > -	 * This hook is used only by atomic helpers, for symmetry with 
@disable.
> > -	 * Atomic drivers don't need to implement it if there's no need to
> > -	 * enable anything at the CRTC level. To ensure that runtime PM 
handling
> > -	 * (using either DPMS or the new "ACTIVE" property) works
> > -	 * @enable must be the inverse of @disable for atomic drivers.
> > -	 */
> > -	void (*enable)(struct drm_crtc *crtc);
> > -
> > -	/**
> >  	 * @atomic_check:
> >  	 *
> >  	 * Drivers should check plane-update related CRTC constraints in this
> > @@ -433,6 +415,26 @@ struct drm_crtc_helper_funcs {
> >  			     struct drm_crtc_state *old_crtc_state);
> >  	
> >  	/**
> > +	 * @atomic_enable:
> > +	 *
> > +	 * This callback should be used to enable the CRTC. With the atomic
> > +	 * drivers it is called before all encoders connected to this CRTC are
> > +	 * enabled through the encoder's own &drm_encoder_helper_funcs.enable
> > +	 * hook.  If that sequence is too simple drivers can just add their 
own
> > +	 * hooks and call it from this CRTC callback here by looping over all
> > +	 * encoders connected to it using for_each_encoder_on_crtc().
> > +	 *
> > +	 * This hook is used only by atomic helpers, for symmetry with
> > +	 * @atomic_disable. Atomic drivers don't need to implement it if 
there's
> > +	 * no need to enable anything at the CRTC level. To ensure that 
runtime
> > +	 * PM handling (using either DPMS or the new "ACTIVE" property) works
> > +	 * @atomic_enable must be the inverse of @atomic_disable for atomic
> > +	 * drivers.
> 
> A few lines explaing what @old_crtc_state is good for would be good here
> (like we already have for @atomic_disable). Otherwise lgtm.

I'll fix that in v2.

> > +	void (*atomic_enable)(struct drm_crtc *crtc,
> > +			      struct drm_crtc_state *old_crtc_state);
> > +
> > +	/**
> >  	 * @atomic_disable:
> >  	 *
> >  	 * This callback should be used to disable the CRTC. With the atomic

-- 
Regards,

Laurent Pinchart

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  reply	other threads:[~2017-06-28 11:55 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-27 20:38 [PATCH 0/8] Cleanup CRTC .enable()/.disable() cargo-cult Laurent Pinchart
2017-06-27 20:38 ` [PATCH 1/8] drm: arcpgu: Remove CRTC .commit() helper operation Laurent Pinchart
2017-06-27 20:38 ` [PATCH 2/8] drm: arcpgu: Remove CRTC .prepare() " Laurent Pinchart
2017-06-27 20:38 ` [PATCH 3/8] drm: qxl: Remove unused CRTC .dpms() " Laurent Pinchart
2017-06-27 20:38 ` [PATCH 4/8] drm: qxl: Replace CRTC .commit() helper operation with .enable() Laurent Pinchart
2017-06-27 20:38 ` [PATCH 5/8] drm: vmwgfx: Remove unneeded CRTC .prepare() helper operation Laurent Pinchart
2017-06-27 20:38 ` [PATCH 6/8] drm: vmwgfx: Replace CRTC .commit() helper operation with .enable() Laurent Pinchart
2017-06-28  7:39   ` Daniel Vetter
2017-06-28  8:25     ` Laurent Pinchart
2017-06-27 20:38 ` [PATCH 7/8] drm: Add old state pointer to CRTC .enable() helper function Laurent Pinchart
2017-06-27 20:38 ` [PATCH 8/8] drm: Convert atomic drivers from CRTC .disable() to .atomic_disable() Laurent Pinchart
2017-06-27 21:16 ` [PATCH 1/8] drm: arcpgu: Remove CRTC .commit() helper operation Laurent Pinchart
2017-06-28  8:36   ` Alexey Brodkin
2017-06-27 21:16 ` [PATCH 2/8] drm: arcpgu: Remove CRTC .prepare() " Laurent Pinchart
2017-06-28  8:36   ` Alexey Brodkin
2017-06-27 21:16 ` [PATCH 3/8] drm: qxl: Remove unused CRTC .dpms() " Laurent Pinchart
2017-06-27 21:16 ` [PATCH 4/8] drm: qxl: Replace CRTC .commit() helper operation with .enable() Laurent Pinchart
2017-06-28  8:14   ` Daniel Vetter
2017-06-27 21:16 ` [PATCH 5/8] drm: vmwgfx: Remove unneeded CRTC .prepare() helper operation Laurent Pinchart
2017-06-29 12:56   ` Thomas Hellstrom
2017-06-27 21:16 ` [PATCH 6/8] drm: vmwgfx: Replace CRTC .commit() helper operation with .enable() Laurent Pinchart
2017-06-29 12:58   ` Thomas Hellstrom
2017-06-27 21:16 ` [PATCH 7/8] drm: Add old state pointer to CRTC .enable() helper function Laurent Pinchart
2017-06-28  6:46   ` Maxime Ripard
2017-06-28  7:42   ` Daniel Vetter
2017-06-28 11:55     ` Laurent Pinchart [this message]
2017-06-28  8:15   ` Philipp Zabel
2017-06-28  8:37   ` Alexey Brodkin
2017-06-28  8:43   ` Boris Brezillon
2017-06-28 13:41   ` Liviu Dudau
2017-06-28 13:44     ` Laurent Pinchart
2017-06-28 13:55   ` dri-devel-bounces
2017-06-29  7:48   ` Philippe CORNU
2017-06-29  8:00   ` Vincent ABRIOU
2017-06-29 12:59   ` Thomas Hellstrom
2017-07-03  8:57   ` Jyri Sarha
2017-06-27 21:16 ` [PATCH 8/8] drm: Convert atomic drivers from CRTC .disable() to .atomic_disable() Laurent Pinchart
2017-06-28  6:47   ` Maxime Ripard
2017-06-28  8:15   ` Philipp Zabel
2017-06-28  8:39   ` Alexey Brodkin
2017-06-28  8:45   ` Boris Brezillon
2017-06-29  7:49   ` Philippe CORNU
2017-06-29  8:00   ` Vincent ABRIOU
2017-06-29 13:00   ` Thomas Hellstrom
2017-07-03  8:53   ` Jyri Sarha
2017-06-28  8:16 ` [PATCH 0/8] Cleanup CRTC .enable()/.disable() cargo-cult Daniel Vetter
2017-06-28  8:20   ` Daniel Vetter
2017-06-28  8:23     ` Laurent Pinchart
2017-06-28 11:27 ` Emil Velikov
2017-06-28 13:10   ` Laurent Pinchart
2017-06-29 12:39     ` Emil Velikov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1617739.Y0EePd6PWn@avalon \
    --to=laurent.pinchart@ideasonboard.com \
    --cc=abrodkin@synopsys.com \
    --cc=airlied@redhat.com \
    --cc=boris.brezillon@free-electrons.com \
    --cc=daniel.vetter@intel.com \
    --cc=daniel@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=jsarha@ti.com \
    --cc=kong.kongxinwei@hisilicon.com \
    --cc=kraxel@redhat.com \
    --cc=kyungmin.park@samsung.co \
    --cc=laurent.pinchart+renesas@ideasonboard.com \
    --cc=linux-graphics-maintainer@vmware.com \
    --cc=liviu.dudau@arm.com \
    --cc=m@freedesktop.org \
    --cc=malidp@foss.arm.com \
    --cc=narmstrong@baylibre.com \
    --cc=puck.chen@hisilicon.com \
    --cc=thellstrom@vmware.com \
    --cc=thierry.reding@gmail.com \
    --cc=tomi.valkeinen@ti.com \
    --cc=vincent.abriou@st.com \
    --cc=z.liuxinliang@hisilicon.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.