Re: [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 > >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 > >Cc: Knut Petersen > >Cc: Imre Deak > >Cc: Chris Wilson > >Signed-off-by: Daniel Vetter > >--- > > 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 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [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.d...@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_peter...@t-online.de Cc: Knut Petersen knut_peter...@t-online.de Cc: Imre Deak imre.d...@intel.com Cc: Chris Wilson ch...@chris-wilson.co.uk Signed-off-by: Daniel Vetter daniel.vet...@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 -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] drm/i915/tv: clear adjusted_mode.flags
Hi Daniel! This patch is definitely needed for 3.12, but it is still missing in 3.12-rc2 ... 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 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 Cc: Knut Petersen Cc: Imre Deak Cc: Chris Wilson Signed-off-by: Daniel Vetter --- 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; } -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] drm/i915/tv: clear adjusted_mode.flags
Hi Daniel! This patch is definitely needed for 3.12, but it is still missing in 3.12-rc2 ... 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.d...@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_peter...@t-online.de Cc: Knut Petersen knut_peter...@t-online.de Cc: Imre Deak imre.d...@intel.com Cc: Chris Wilson ch...@chris-wilson.co.uk Signed-off-by: Daniel Vetter daniel.vet...@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; } -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] drm/i915/tv: clear adjusted_mode.flags
On 10.09.2013 11:44, Daniel Vetter wrote: Thanks. Combined with your two patches and Jesse Barnes' patch "add early quirk for reserving Intel graphics stolen memory v5", current linux master branch works fine on i915GM hardware now. cu, Knut -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] drm/i915/tv: clear adjusted_mode.flags
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 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 Cc: Knut Petersen Cc: Imre Deak Cc: Chris Wilson Signed-off-by: Daniel Vetter --- 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; } -- 1.8.4.rc3 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] drm/i915/tv: clear adjusted_mode.flags
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.d...@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_peter...@t-online.de Cc: Knut Petersen knut_peter...@t-online.de Cc: Imre Deak imre.d...@intel.com Cc: Chris Wilson ch...@chris-wilson.co.uk Signed-off-by: Daniel Vetter daniel.vet...@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; } -- 1.8.4.rc3 -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] drm/i915/tv: clear adjusted_mode.flags
On 10.09.2013 11:44, Daniel Vetter wrote: Thanks. Combined with your two patches and Jesse Barnes' patch add early quirk for reserving Intel graphics stolen memory v5, current linux master branch works fine on i915GM hardware now. cu, Knut -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/