All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Vetter <daniel@ffwll.ch>
To: Vijay Purushothaman <vijay.a.purushothaman@intel.com>
Cc: "Nikula, Jani" <jani.nikula@intel.com>,
	Intel Graphics <intel-gfx@lists.freedesktop.org>
Subject: Re: [PATCH 6/9] drm/i915: Add eDP support for Valleyview
Date: Thu, 27 Sep 2012 15:50:58 +0200	[thread overview]
Message-ID: <20120927135058.GE2098@bremse> (raw)
In-Reply-To: <506456E1.5070904@intel.com>

On Thu, Sep 27, 2012 at 07:08:41PM +0530, Vijay Purushothaman wrote:
> On 9/26/2012 8:19 PM, Daniel Vetter wrote:
> >On Wed, Sep 26, 2012 at 04:31:46PM +0200, Daniel Vetter wrote:
> >>On Wed, Sep 26, 2012 at 07:07:35PM +0530, Vijay Purushothaman wrote:
> >>>Eventhough Valleyview display block is derived from Cantiga, VLV
> >>>supports eDP. So, added eDP checks in i9xx_crtc_mode_set path.
> >>>
> >>>v2: use different DPIO_DIVISOR values for VGA, DP and eDP
> >>>v3: fix DPIO value calculation to use same values for all display
> >>>	interfaces
> >>>
> >>>Signed-off-by: Gajanan Bhat <gajanan.bhat@intel.com>
> >>>Signed-off-by: Vijay Purushothaman <vijay.a.purushothaman@intel.com>
> >>>Signed-off-by: Ben Widawsky <benjamin.widawsky@intel.com>
> >>>---
> >>>  drivers/gpu/drm/i915/intel_display.c |    6 ++++++
> >>>  drivers/gpu/drm/i915/intel_dp.c      |   13 ++++++++-----
> >>>  2 files changed, 14 insertions(+), 5 deletions(-)
> >>>
> >>>diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> >>>index a8a81d1..aee6151 100644
> >>>--- a/drivers/gpu/drm/i915/intel_display.c
> >>>+++ b/drivers/gpu/drm/i915/intel_display.c
> >>>@@ -4405,6 +4405,12 @@ static int i9xx_crtc_mode_set(struct drm_crtc *crtc,
> >>>  		}
> >>>  	}
> >>>
> >>>+	if (IS_VALLEYVIEW(dev) && intel_pipe_has_type(crtc, INTEL_OUTPUT_EDP)) {
> >>>+		pipeconf |= PIPECONF_BPP_6 |
> >>>+			PIPECONF_ENABLE |
> >>>+			I965_PIPECONF_ACTIVE;
> >>>+	}
> >>
> >>No.
> >>
> >>Jani Nikula and me just figured out that we have a giant mess with 6bpc
> >>dithering on DP outputs, but unconditionally enabling 6bpc on vlv eDP only
> >>papers over issues.
> >
> >Forgotten to put Jani on cc.
> >-Daniel
> 
> Thanks for the catch. I've removed this unconditional enabling of
> 6bpc for VLV eDP. For long term i believe, eDP handling in
> i9xx_crtc_mode_set should be changed along the lines of
> ironlake_crtc_mode_set for cleaner code. For now, this should
> unblock others with VLV enabling.

My Big Plan (tm) for handling bpc, bandwidth, dotclocks and clocks in
general (e.g. pll sharing) is to move all this stuff out of the ->mode_set
callbacks and into a new preparation step at the beginning of the modeset
sequence (i.e. before we start touching the hw). Essentially I want to
extend the current ->mode_adjust callbacks and move all these calculations
in there. Aims for this are
- should allow us to move a lot of the encoder specific code that
  currently sits in the xxx_crtc_mode_set functions into encoder callbacks
- allows us to fail a modeset that won't work (e.g. due to pll sharing
  limits or fdi link bw limits) _before_ we touch the hw
- prepares for the global modeset stuff, where we want to make clever
  decision about shared resources (e.g. enable 6bpc dithering if there are
  not enough fdi lanes availbale in 3 pipe configs).

So the ironlake bpc code is a bit cleaner, but imho still gets it wrong.

Cheers, Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch

  reply	other threads:[~2012-09-27 13:51 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-26 13:37 [PATCH 0/9] Enable all display interfaces in Valleyview Vijay Purushothaman
2012-09-26 13:37 ` [PATCH 1/9] drm/i915: Set aux clk to 100MHz for Valleyview Vijay Purushothaman
2012-09-26 13:37 ` [PATCH 2/9] drm/i915: Fix SDVO IER and status bits " Vijay Purushothaman
2012-09-26 13:37 ` [PATCH 3/9] drm/i915: Add Valleyview lane control definitions Vijay Purushothaman
2012-09-26 13:37 ` [PATCH 4/9] drm/i915: Program correct m n tu register for Valleyview Vijay Purushothaman
2012-09-26 13:37 ` [PATCH 5/9] drm/i915: Fix lanecontrol, vswing, preemp for Valleyview DisplayPort Vijay Purushothaman
2012-09-26 14:24   ` Daniel Vetter
2012-09-27 13:28     ` Vijay Purushothaman
2012-09-26 13:37 ` [PATCH 6/9] drm/i915: Add eDP support for Valleyview Vijay Purushothaman
2012-09-26 14:31   ` Daniel Vetter
2012-09-26 14:49     ` Daniel Vetter
2012-09-27 13:38       ` Vijay Purushothaman
2012-09-27 13:50         ` Daniel Vetter [this message]
2012-09-27  7:18     ` Jani Nikula
2012-09-27 13:39       ` Vijay Purushothaman
2012-09-26 13:37 ` [PATCH 7/9] drm/i915: panel power sequencing for VLV eDP Vijay Purushothaman
2012-09-26 14:34   ` Daniel Vetter
2012-09-26 13:37 ` [PATCH 8/9] drm/i915: Reverse min, max vco limits for VLV HDMI Vijay Purushothaman
2012-09-26 14:38   ` Daniel Vetter
2012-09-27 13:32     ` Vijay Purushothaman
2012-09-26 13:37 ` [PATCH 9/9] drm/i915: Enable multi display support in VLV Vijay Purushothaman
2012-09-26 14:40   ` Daniel Vetter
2012-09-27 13:34     ` Vijay Purushothaman

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=20120927135058.GE2098@bremse \
    --to=daniel@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=jani.nikula@intel.com \
    --cc=vijay.a.purushothaman@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.