[Intel-gfx] [PATCH 13/13] drm/i915: check for non-native modes when inheriting a BIOS fb

Jesse Barnes jbarnes at virtuousgeek.org
Wed Mar 27 00:29:33 CET 2013


On Wed, 20 Mar 2013 14:51:12 +0200
Imre Deak <imre.deak at intel.com> wrote:

> On Tue, 2013-02-19 at 13:31 -0800, Jesse Barnes wrote:
> > If the mode is non-native using the panel fitter, don't try to re-use
> > the fb the BIOS allocated for it.
> > 
> > Signed-off-by: Jesse Barnes <jbarnes at virtuousgeek.org>
> > ---
> >  drivers/gpu/drm/i915/intel_fb.c |   12 ++++++++++++
> >  1 file changed, 12 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/i915/intel_fb.c b/drivers/gpu/drm/i915/intel_fb.c
> > index b60f277..9ff12aa 100644
> > --- a/drivers/gpu/drm/i915/intel_fb.c
> > +++ b/drivers/gpu/drm/i915/intel_fb.c
> > @@ -438,6 +438,18 @@ void intel_fbdev_init_bios(struct drm_device *dev)
> >  		width = ((val >> 16) & 0xfff) + 1;
> >  		height = ((val >> 0) & 0xfff) + 1;
> >  
> > +		/* Don't bother inheriting panel fitted modes */
> > +		val = I915_READ(HTOTAL(pipe));
> > +		if (((val & 0xffff) + 1) != width) {
> > +			DRM_ERROR("BIOS fb not native width (%d vs %d), skipping\n", width, (val & 0xffff) + 1);
> > +			continue;
> > +		}
> > +		val = I915_READ(VTOTAL(pipe));
> > +		if (((val & 0xffff) + 1) != height) {
> > +			DRM_ERROR("BIOS fb not native width (%d vs %d), skipping\n", height, (val & 0xffff) + 1);
> 
> s/width/height/
> 
> > +			continue;
> > +		}
> > +
> >  		DRM_DEBUG_KMS("Found active pipe [%d/%d]: size=%dx%d@%d, offset=%x\n",
> >  			      pipe, plane, width, height, bpp, offset);
> >  
> 
> On the series with my comments and the note that I couldn't yet test it:
> Reviewed-by: Imre Deak <imre.deak at intel.com>

Fixed, thanks.

-- 
Jesse Barnes, Intel Open Source Technology Center



More information about the Intel-gfx mailing list