lkml.org 
[lkml]   [2013]   [Sep]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] drm/i915/tv: clear adjusted_mode.flags
On Tue, Sep 24, 2013 at 07:52:06AM +0200, Knut Petersen wrote:
> Hi Daniel!
>
> This patch is definitely needed for 3.12, but it is still missing in 3.12-rc2 ...

Oops, that one fell through the cracks. Applied to -fixes, thanks for
poking.
-Daniel

>
> cu,
> Knut
>
> On 10.09.2013 11:44, Daniel Vetter wrote:
> >The native TV encoder has it's own flags to adjust sync modes and
> >enabled interlaced modes which are totally irrelevant for the adjusted
> >mode. This worked out nicely since the input modes used by both the
> >load detect code and reported in the ->get_modes callbacks all have no
> >flags set, and we also don't fill out any of them in the ->get_config
> >callback.
> >
> >This changed with the additional sanitation done with
> >
> >commit 2960bc9cceecb5d556ce1c07656a6609e2f7e8b0
> >Author: Imre Deak <imre.deak@intel.com>
> >Date: Tue Jul 30 13:36:32 2013 +0300
> >
> > drm/i915: make user mode sync polarity setting explicit
> >
> >sinc now the "no flags at all" state wouldn't fit through core code
> >any more. So fix this up again by explicitly clearing the flags in the
> >->compute_config callback.
> >
> >Aside: We have zero checking in place to make sure that the requested
> >mode is indeed the right input mode we want for the selected TV mode.
> >So we'll happily fall over if userspace tries to pull us. But that's
> >definitely work for a different patch series. So just add a FIXME
> >comment for now.
> >
> >Reported-by: Knut Petersen <Knut_Petersen@t-online.de>
> >Cc: Knut Petersen <Knut_Petersen@t-online.de>
> >Cc: Imre Deak <imre.deak@intel.com>
> >Cc: Chris Wilson <chris@chris-wilson.co.uk>
> >Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
> >---
> > drivers/gpu/drm/i915/intel_tv.c | 8 ++++++++
> > 1 file changed, 8 insertions(+)
> >
> >diff --git a/drivers/gpu/drm/i915/intel_tv.c b/drivers/gpu/drm/i915/intel_tv.c
> >index f2c6d79..dd6f84b 100644
> >--- a/drivers/gpu/drm/i915/intel_tv.c
> >+++ b/drivers/gpu/drm/i915/intel_tv.c
> >@@ -916,6 +916,14 @@ intel_tv_compute_config(struct intel_encoder *encoder,
> > DRM_DEBUG_KMS("forcing bpc to 8 for TV\n");
> > pipe_config->pipe_bpp = 8*3;
> >+ /* TV has it's own notion of sync and other mode flags, so clear them. */
> >+ pipe_config->adjusted_mode.flags = 0;
> >+
> >+ /*
> >+ * FIXME: We don't check whether the input mode is actually what we want
> >+ * or whether userspace is doing something stupid.
> >+ */
> >+
> > return true;
> > }
>

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


\
 
 \ /
  Last update: 2013-09-24 11:21    [W:0.305 / U:0.136 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site