From: Daniel Vetter <daniel@ffwll.ch>
To: Intel Graphics Development <intel-gfx@lists.freedesktop.org>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Subject: Re: [PATCH] drm/i915: disable sdvo pixel multiplier cross-check for HAS_PCH_SPLIT
Date: Wed, 12 Jun 2013 16:51:09 +0200 [thread overview]
Message-ID: <20130612145109.GD22870@phenom.ffwll.local> (raw)
In-Reply-To: <1371030444-7205-1-git-send-email-daniel.vetter@ffwll.ch>
On Wed, Jun 12, 2013 at 11:47:24AM +0200, Daniel Vetter wrote:
> We don't (yet) have proper pixel multiplier readout support on pch
> split platforms, so the cross check will naturally fail.
>
> v2: Fix spelling in the comment, spotted by Ville.
>
> v3: Since the ordering constraint is pretty tricky between the crtc
> get_pipe_config callback and the encoder->get_config callback add a
> few comments about it. Prompted by a discussion with Chris Wilson on
> irc about why this does work anywhere else than on i915g/gm.
>
> Reported-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Merged with Chris' irc-ack to dinq.
-Daniel
> ---
> drivers/gpu/drm/i915/intel_drv.h | 3 ++-
> drivers/gpu/drm/i915/intel_sdvo.c | 11 +++++++++++
> 2 files changed, 13 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
> index 3363358..cf26fa8 100644
> --- a/drivers/gpu/drm/i915/intel_drv.h
> +++ b/drivers/gpu/drm/i915/intel_drv.h
> @@ -140,7 +140,8 @@ struct intel_encoder {
> * it is connected to in the pipe parameter. */
> bool (*get_hw_state)(struct intel_encoder *, enum pipe *pipe);
> /* Reconstructs the equivalent mode flags for the current hardware
> - * state. */
> + * state. This must be called _after_ display->get_pipe_config has
> + * pre-filled the pipe config. */
> void (*get_config)(struct intel_encoder *,
> struct intel_crtc_config *pipe_config);
> int crtc_mask;
> diff --git a/drivers/gpu/drm/i915/intel_sdvo.c b/drivers/gpu/drm/i915/intel_sdvo.c
> index a6c53b6..1327fa9 100644
> --- a/drivers/gpu/drm/i915/intel_sdvo.c
> +++ b/drivers/gpu/drm/i915/intel_sdvo.c
> @@ -1342,6 +1342,13 @@ static void intel_sdvo_get_config(struct intel_encoder *encoder,
>
> pipe_config->adjusted_mode.flags |= flags;
>
> + /*
> + * pixel multiplier readout is tricky: Only on i915g/gm it is stored in
> + * the sdvo port register, on all other platforms it is part of the dpll
> + * state. Since the general pipe state readout happens before the
> + * encoder->get_config we so already have a valid pixel multplier on all
> + * other platfroms.
> + */
> if (IS_I915G(dev) || IS_I915GM(dev)) {
> sdvox = I915_READ(intel_sdvo->sdvo_reg);
> pipe_config->pixel_multiplier =
> @@ -1362,6 +1369,10 @@ static void intel_sdvo_get_config(struct intel_encoder *encoder,
> encoder_pixel_multiplier = 4;
> break;
> }
> +
> + if(HAS_PCH_SPLIT(dev))
> + return; /* no pixel multiplier readout support yet */
> +
> WARN(encoder_pixel_multiplier != pipe_config->pixel_multiplier,
> "SDVO pixel multiplier mismatch, port: %i, encoder: %i\n",
> pipe_config->pixel_multiplier, encoder_pixel_multiplier);
> --
> 1.7.11.7
>
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
prev parent reply other threads:[~2013-06-12 14:51 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-10 7:25 [PATCH] drm/i915: disable sdvo pixel multiplier cross-check for HAS_PCH_SPLIT Daniel Vetter
2013-06-10 9:56 ` Ville Syrjälä
2013-06-10 15:26 ` Daniel Vetter
2013-06-12 9:47 ` Daniel Vetter
2013-06-12 14:51 ` Daniel Vetter [this message]
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=20130612145109.GD22870@phenom.ffwll.local \
--to=daniel@ffwll.ch \
--cc=daniel.vetter@ffwll.ch \
--cc=intel-gfx@lists.freedesktop.org \
/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.