From: Daniel Vetter <daniel@ffwll.ch>
To: ville.syrjala@linux.intel.com
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH v2 01/16] drm/i915: Keep vblank interrupts enabled while enabling/disabling planes
Date: Mon, 26 May 2014 15:56:17 +0200 [thread overview]
Message-ID: <20140526135617.GR14357@phenom.ffwll.local> (raw)
In-Reply-To: <1400770101-14277-2-git-send-email-ville.syrjala@linux.intel.com>
On Thu, May 22, 2014 at 05:48:06PM +0300, ville.syrjala@linux.intel.com wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Because of the upcoming vblank interrupt driven watermark update
> mechanism we will have use for vblank interrupts during plane
> enabling/disabling. So don't call drm_vblank_off() until planes
> are off, and call drm_vblank_on() just before we start to enable
> the planes.
>
> v2: Pimp commit message (Paulo)
>
> Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Merged up to this one until I've stumbled into the first patch lacking an
r-b. Can you please update the review board a bit with the current state
and maybe repoke reviewers that there's a new series?
Thanks, Daniel
> ---
> drivers/gpu/drm/i915/intel_display.c | 13 ++++---------
> 1 file changed, 4 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 019e9e1..a11bd78 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -3885,6 +3885,8 @@ static void intel_crtc_enable_planes(struct drm_crtc *crtc)
> int pipe = intel_crtc->pipe;
> int plane = intel_crtc->plane;
>
> + drm_vblank_on(dev, pipe);
> +
> intel_enable_primary_hw_plane(dev_priv, plane, pipe);
> intel_enable_planes(crtc);
> /* The fixup needs to happen before cursor is enabled */
> @@ -3910,7 +3912,6 @@ static void intel_crtc_disable_planes(struct drm_crtc *crtc)
> int plane = intel_crtc->plane;
>
> intel_crtc_wait_for_pending_flips(crtc);
> - drm_crtc_vblank_off(crtc);
>
> if (dev_priv->fbc.plane == plane)
> intel_disable_fbc(dev);
> @@ -3921,6 +3922,8 @@ static void intel_crtc_disable_planes(struct drm_crtc *crtc)
> intel_crtc_update_cursor(crtc, false);
> intel_disable_planes(crtc);
> intel_disable_primary_hw_plane(dev_priv, plane, pipe);
> +
> + drm_vblank_off(dev, pipe);
> }
>
> static void ironlake_crtc_enable(struct drm_crtc *crtc)
> @@ -3999,8 +4002,6 @@ static void ironlake_crtc_enable(struct drm_crtc *crtc)
> cpt_verify_modeset(dev, intel_crtc->pipe);
>
> intel_crtc_enable_planes(crtc);
> -
> - drm_crtc_vblank_on(crtc);
> }
>
> /* IPS only exists on ULT machines and is tied to pipe A. */
> @@ -4114,8 +4115,6 @@ static void haswell_crtc_enable(struct drm_crtc *crtc)
> * to change the workaround. */
> haswell_mode_set_planes_workaround(intel_crtc);
> intel_crtc_enable_planes(crtc);
> -
> - drm_crtc_vblank_on(crtc);
> }
>
> static void ironlake_pfit_disable(struct intel_crtc *crtc)
> @@ -4625,8 +4624,6 @@ static void valleyview_crtc_enable(struct drm_crtc *crtc)
>
> intel_crtc_enable_planes(crtc);
>
> - drm_crtc_vblank_on(crtc);
> -
> /* Underruns don't raise interrupts, so check manually. */
> i9xx_check_fifo_underruns(dev);
> }
> @@ -4719,8 +4716,6 @@ static void i9xx_crtc_enable(struct drm_crtc *crtc)
> if (IS_GEN2(dev))
> intel_set_cpu_fifo_underrun_reporting(dev, pipe, true);
>
> - drm_crtc_vblank_on(crtc);
> -
> /* Underruns don't raise interrupts, so check manually. */
> i9xx_check_fifo_underruns(dev);
> }
> --
> 1.8.5.5
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
next prev parent reply other threads:[~2014-05-26 13:56 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-22 14:48 [PATCH v2 00/16] drm/i915: Two part watermark update for ILK+, part 2 ville.syrjala
2014-05-22 14:48 ` [PATCH v2 01/16] drm/i915: Keep vblank interrupts enabled while enabling/disabling planes ville.syrjala
2014-05-26 13:56 ` Daniel Vetter [this message]
2014-06-04 6:00 ` Arun Murthy
2014-06-10 16:22 ` Ville Syrjälä
2014-05-22 14:48 ` [PATCH 02/16] drm/i915: Leave interrupts enabled while disabling crtcs during suspend ville.syrjala
2014-05-22 14:48 ` [PATCH 03/16] drm/i915: Check hw vs. sw watermark state after programming ville.syrjala
2014-05-22 14:48 ` [PATCH 04/16] drm/i915: Refactor ilk_validate_pipe_wm() ville.syrjala
2014-05-22 14:48 ` [PATCH v2 05/16] drm/i915: Refactor ilk_update_wm ville.syrjala
2014-05-22 14:48 ` [PATCH 06/16] drm/i915: Add dev_priv->wm.mutex ville.syrjala
2014-05-22 14:48 ` [PATCH v2 07/16] drm/i915: Add vblank based delayed watermark update mechanism ville.syrjala
2014-06-03 18:50 ` Paulo Zanoni
2014-06-03 19:32 ` Ville Syrjälä
2014-06-04 14:01 ` Paulo Zanoni
2014-06-04 16:10 ` Daniel Vetter
2014-06-09 15:01 ` Ville Syrjälä
2014-05-22 14:48 ` [PATCH v2 08/16] drm/i915: Split watermark programming into pre and post steps ville.syrjala
2014-06-03 20:51 ` Paulo Zanoni
2014-06-04 16:22 ` Daniel Vetter
2014-06-09 17:03 ` Ville Syrjälä
2014-06-10 11:46 ` Jani Nikula
2014-05-22 14:48 ` [PATCH v2 09/16] drm/i915: Actually perform the watermark update in two phases ville.syrjala
2014-06-03 22:47 ` Paulo Zanoni
2014-06-09 18:28 ` Ville Syrjälä
2014-05-22 14:48 ` [PATCH v2 10/16] drm/i915: Wait for watermark updates to finish before disabling a pipe ville.syrjala
2014-06-04 13:54 ` Paulo Zanoni
2014-05-22 14:48 ` [PATCH 11/16] drm/i915: Refactor get_other_active_crtc() ville.syrjala
2014-06-04 16:59 ` Paulo Zanoni
2014-05-22 14:48 ` [PATCH 12/16] drm/i915: Disable LP1+ watermarks while changing the number of active pipes ville.syrjala
2014-06-04 18:24 ` Paulo Zanoni
2014-06-09 16:51 ` Ville Syrjälä
2014-05-22 14:48 ` [PATCH v2 13/16] drm/i915: Keep track of who disabled LP1+ watermarks ville.syrjala
2014-06-04 18:30 ` Paulo Zanoni
2014-05-22 14:48 ` [PATCH 14/16] drm/i915: Prefer the 5/6 DDB split when primary is disabled ville.syrjala
2014-06-04 18:34 ` Paulo Zanoni
2014-05-22 14:48 ` [PATCH 15/16] drm/i915: Add a workaround for sprite only <-> primary only switching ville.syrjala
2014-06-04 18:44 ` Paulo Zanoni
2014-05-22 14:48 ` [PATCH 16/16] drm/i915: Don't disable LP1+ watermarks for every frame when scaled ville.syrjala
2014-06-04 18:49 ` Paulo Zanoni
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=20140526135617.GR14357@phenom.ffwll.local \
--to=daniel@ffwll.ch \
--cc=intel-gfx@lists.freedesktop.org \
--cc=ville.syrjala@linux.intel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox