From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 6/6] drm/i915: Reject page flips with changed format/offset/pitch Date: Thu, 19 Jul 2012 14:39:21 +0200 Message-ID: <20120719123921.GC5262@phenom.ffwll.local> References: <1337882939-22274-1-git-send-email-ville.syrjala@linux.intel.com> <1337882939-22274-7-git-send-email-ville.syrjala@linux.intel.com> <20120705113117.GH5203@phenom.ffwll.local> <2171560.KDWZDTKijx@avalon> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Return-path: Content-Disposition: inline In-Reply-To: <2171560.KDWZDTKijx@avalon> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org To: Laurent Pinchart Cc: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org On Thu, Jul 19, 2012 at 02:27:47PM +0200, Laurent Pinchart wrote: > Hi Daniel, > = > On Thursday 05 July 2012 13:31:17 Daniel Vetter wrote: > > On Thu, May 24, 2012 at 09:08:59PM +0300, ville.syrjala@linux.intel.com = > wrote: > > > From: Ville Syrj=E4l=E4 > > > = > > > MI display flips can't handle some changes in the framebuffer > > > format or layout. Return an error in such cases. > > > = > > > Signed-off-by: Ville Syrj=E4l=E4 > > = > > Queued for -next, thanks for the patch. I've punted on the others, hopi= ng > > for a few i-g-t tests (and maybe someone else that could review them). > > Safe for the uninitialized stack var patch and this one, because we need > > this check to fix up gen4+ tileoffset limitations. > > = > > Yours, Daniel > > = > > > --- > > > = > > > drivers/gpu/drm/i915/intel_display.c | 13 +++++++++++++ > > > 1 files changed, 13 insertions(+), 0 deletions(-) > > > = > > > diff --git a/drivers/gpu/drm/i915/intel_display.c > > > b/drivers/gpu/drm/i915/intel_display.c index f4338cb..72ac2f9 100644 > > > --- a/drivers/gpu/drm/i915/intel_display.c > > > +++ b/drivers/gpu/drm/i915/intel_display.c > > > @@ -6217,6 +6217,19 @@ static int intel_crtc_page_flip(struct drm_crtc > > > *crtc,> = > > > unsigned long flags; > > > int ret; > > > = > > > + /* Can't change pixel format via MI display flips. */ > > > + if (fb->pixel_format !=3D crtc->fb->pixel_format) > > > + return -EINVAL; > = > Is this still needed if we apply my "drm: Don't allow page flip to change = > pixel format" patch ? Actually, drm/i915 is on track to grow itself a complete new modeset implementation which does not use the crtc helpers (at least as little as possible). See http://cgit.freedesktop.org/~danvet/drm/log/?h=3Dmodeset-rework Cheers, Daniel > = > > > + /* > > > + * TILEOFF/LINOFF registers can't be changed via MI display flips. > > > + * Note that pitch changes could also affect these register. > > > + */ > > > + if (INTEL_INFO(dev)->gen > 3 && > > > + (fb->offsets[0] !=3D crtc->fb->offsets[0] || > > > + fb->pitches[0] !=3D crtc->fb->pitches[0])) > > > + return -EINVAL; > > > + > > > = > > > work =3D kzalloc(sizeof *work, GFP_KERNEL); > > > if (work =3D=3D NULL) > > > = > > > return -ENOMEM; > = > -- = > Regards, > = > Laurent Pinchart > = -- = Daniel Vetter Mail: daniel@ffwll.ch Mobile: +41 (0)79 365 57 48