From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 1/3] drm/i915: No panel fitter on 830M or non-mobile gen2/3 platforms Date: Fri, 10 Jan 2014 18:02:59 +0100 Message-ID: <20140110170259.GE4770@phenom.ffwll.local> References: <1389355607-8794-1-git-send-email-ville.syrjala@linux.intel.com> <1389355607-8794-2-git-send-email-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Return-path: Received: from mail-ee0-f48.google.com (mail-ee0-f48.google.com [74.125.83.48]) by gabe.freedesktop.org (Postfix) with ESMTP id E8C67FB33E for ; Fri, 10 Jan 2014 09:01:46 -0800 (PST) Received: by mail-ee0-f48.google.com with SMTP id t10so315945eei.7 for ; Fri, 10 Jan 2014 09:01:42 -0800 (PST) Content-Disposition: inline In-Reply-To: <1389355607-8794-2-git-send-email-ville.syrjala@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces@lists.freedesktop.org Errors-To: intel-gfx-bounces@lists.freedesktop.org To: ville.syrjala@linux.intel.com Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org On Fri, Jan 10, 2014 at 02:06:45PM +0200, ville.syrjala@linux.intel.com wro= te: > From: Ville Syrj=E4l=E4 > = > PFIT_CONTROL doesn't exist on 830M, so avoid reading it in > i9xx_get_pfit_config(). > = > Also assume that only mobile gen2/3 chipsets have a panel fitter. This > matches the documentation, but I didn't have real hardware to verify. > = > Gen4 docmentation is a bit inconsistent, but experimenetation on my > LPT machine suggests that the panel fitter is available on non-mobile > gen4 platforms. At least on this machine panel fitter appears works > just fine even on VGA output. > = > Signed-off-by: Ville Syrj=E4l=E4 > --- > drivers/gpu/drm/i915/intel_display.c | 3 +++ > drivers/gpu/drm/i915/intel_overlay.c | 2 +- > 2 files changed, 4 insertions(+), 1 deletion(-) > = > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/= intel_display.c > index a51e105..9f8c5b5 100644 > --- a/drivers/gpu/drm/i915/intel_display.c > +++ b/drivers/gpu/drm/i915/intel_display.c > @@ -5428,6 +5428,9 @@ static void i9xx_get_pfit_config(struct intel_crtc = *crtc, > struct drm_i915_private *dev_priv =3D dev->dev_private; > uint32_t tmp; > = > + if (INTEL_INFO(dev)->gen <=3D 3 && (IS_I830(dev) || !IS_MOBILE(dev))) > + return; > + > tmp =3D I915_READ(PFIT_CONTROL); > if (!(tmp & PFIT_ENABLE)) > return; > diff --git a/drivers/gpu/drm/i915/intel_overlay.c b/drivers/gpu/drm/i915/= intel_overlay.c > index a1397b1..424f094 100644 > --- a/drivers/gpu/drm/i915/intel_overlay.c > +++ b/drivers/gpu/drm/i915/intel_overlay.c > @@ -1005,7 +1005,7 @@ static int intel_panel_fitter_pipe(struct drm_devic= e *dev) > u32 pfit_control; > = > /* i830 doesn't have a panel fitter */ > - if (IS_I830(dev)) > + if (INTEL_INFO(dev)->gen <=3D 3 && (IS_I830(dev) || !IS_MOBILE(dev))) Hm, we could switch that code to the pipe config. Like we've already done for the double-wide stuff. Like we've done for the double-wide checks already ... -Daniel > return -1; > = > pfit_control =3D I915_READ(PFIT_CONTROL); > -- = > 1.8.3.2 > = > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- = Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch