All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Vetter <daniel@ffwll.ch>
To: Jesse Barnes <jbarnes@virtuousgeek.org>
Cc: intel-gfx@lists.freedesktop.org, Paulo Zanoni <paulo.r.zanoni@intel.com>
Subject: Re: [PATCH 6/6] drm/i915: set the backlight panel delays registers to 1
Date: Mon, 20 Jan 2014 17:12:10 +0100	[thread overview]
Message-ID: <20140120161210.GF15089@phenom.ffwll.local> (raw)
In-Reply-To: <20140117135742.GJ4770@phenom.ffwll.local>

On Fri, Jan 17, 2014 at 02:57:42PM +0100, Daniel Vetter wrote:
> On Thu, Dec 19, 2013 at 09:39:12AM -0800, Jesse Barnes wrote:
> > On Thu, 19 Dec 2013 14:29:44 -0200
> > Paulo Zanoni <przanoni@gmail.com> wrote:
> > 
> > > From: Paulo Zanoni <paulo.r.zanoni@intel.com>
> > > 
> > > Because we already do the wait in software: see
> > > ironlake_wait_backlight_on and ironlake_edp_wait_backlight_off.
> > > 
> > > For the "backlight on" delay, even BSpec says we need to program 0x1
> > > to PP_ON_DELAYS 12:0.
> > > 
> > > For the "backlight off" delay, if we don't do the same thing, when we
> > > call ironlake_wait_panel_off we'll end up waiting for the it again.
> > > 
> > > On my machine the off delay is 200ms, so we save this amount of time
> > > whenever we disable the panel (e.g, suspend).
> > > 
> > > Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
> > > ---
> > >  drivers/gpu/drm/i915/intel_dp.c | 13 ++++++++++---
> > >  1 file changed, 10 insertions(+), 3 deletions(-)
> > > 
> > > diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> > > index 69d8f1c..90ff059 100644
> > > --- a/drivers/gpu/drm/i915/intel_dp.c
> > > +++ b/drivers/gpu/drm/i915/intel_dp.c
> > > @@ -3535,10 +3535,17 @@ intel_dp_init_panel_power_sequencer_registers(struct drm_device *dev,
> > >  		pp_div_reg = VLV_PIPE_PP_DIVISOR(pipe);
> > >  	}
> > >  
> > > -	/* And finally store the new values in the power sequencer. */
> > > +	/*
> > > +	 * And finally store the new values in the power sequencer. The
> > > +	 * backlight delays are set to 1 because we do manual waits on them. For
> > > +	 * T8, even BSpec recommends doing it. For T9, if we don't do this,
> > > +	 * we'll end up waiting for the backlight off delay twice: once when we
> > > +	 * do the manual sleep, and once when we disable the panel and wait for
> > > +	 * the PP_STATUS bit to become zero.
> > > +	 */
> > >  	pp_on = (seq->t1_t3 << PANEL_POWER_UP_DELAY_SHIFT) |
> > > -		(seq->t8 << PANEL_LIGHT_ON_DELAY_SHIFT);
> > > -	pp_off = (seq->t9 << PANEL_LIGHT_OFF_DELAY_SHIFT) |
> > > +		(1 << PANEL_LIGHT_ON_DELAY_SHIFT);
> > > +	pp_off = (1 << PANEL_LIGHT_OFF_DELAY_SHIFT) |
> > >  		 (seq->t10 << PANEL_POWER_DOWN_DELAY_SHIFT);
> > >  	/* Compute the divisor for the pp clock, simply match the Bspec
> > >  	 * formula. */
> > 
> > Yay!
> > 
> > Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org>
> 
> I'll wait with this one until the updated version of patch 3 is finalized,
> but I've meanwhile pulled in patches 4&5.

Paulo convinced me that this is save already, so merged to dinq.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch

  reply	other threads:[~2014-01-20 16:12 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-19 16:29 [PATCH 0/6] eDP panel power sequencing optimizations Paulo Zanoni
2013-12-19 16:29 ` [PATCH 1/6] drm/i915: init the DP panel power seq variables earlier Paulo Zanoni
2013-12-19 17:24   ` Jesse Barnes
2013-12-19 16:29 ` [PATCH 2/6] drm/i915: save some time when waiting the eDP timings Paulo Zanoni
2013-12-19 17:32   ` Jesse Barnes
2013-12-20  9:30   ` Jani Nikula
2013-12-20 14:24     ` Daniel Vetter
2014-01-03 18:27     ` Paulo Zanoni
2014-01-03 19:45       ` Paulo Zanoni
2014-01-17 13:09   ` Jani Nikula
2014-01-17 13:29     ` Daniel Vetter
2014-01-17 13:53       ` Daniel Vetter
2013-12-19 16:29 ` [PATCH 3/6] drm/i915: reset eDP timestamps on resume Paulo Zanoni
2013-12-19 17:35   ` Jesse Barnes
2014-01-03 19:46     ` Paulo Zanoni
2014-01-15 18:21       ` Jesse Barnes
2014-01-15 23:36         ` Daniel Vetter
2014-01-16 14:26           ` Paulo Zanoni
2014-01-17 20:17             ` Paulo Zanoni
2014-01-17 20:22               ` Chris Wilson
2014-01-17 21:11                 ` Paulo Zanoni
2014-01-17 21:21                   ` Chris Wilson
2014-01-17 21:34                     ` Daniel Vetter
2014-01-20 15:47                       ` Paulo Zanoni
2014-01-20 16:10                         ` Daniel Vetter
2013-12-19 16:29 ` [PATCH 4/6] drm/i915: remove a column of zeros from the eDP wait definitions Paulo Zanoni
2013-12-19 17:36   ` Jesse Barnes
2013-12-19 16:29 ` [PATCH 5/6] drm/i915: don't wait for power cycle when waiting for power off Paulo Zanoni
2013-12-19 17:38   ` Jesse Barnes
2013-12-19 18:34     ` Jesse Barnes
2013-12-19 16:29 ` [PATCH 6/6] drm/i915: set the backlight panel delays registers to 1 Paulo Zanoni
2013-12-19 17:39   ` Jesse Barnes
2014-01-17 13:57     ` Daniel Vetter
2014-01-20 16:12       ` Daniel Vetter [this message]
2014-01-28  7:57   ` Jani Nikula
2014-01-28  8:02     ` Daniel Vetter
2014-01-28  8:23       ` Jani Nikula

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=20140120161210.GF15089@phenom.ffwll.local \
    --to=daniel@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=jbarnes@virtuousgeek.org \
    --cc=paulo.r.zanoni@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 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.