From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Kumar, Shobhit" Subject: Re: [PATCH] drm/i915: Don't wait for vblank for sprite plane flips Date: Fri, 28 Jun 2013 14:22:20 +0000 Message-ID: References: <1372428931-24144-1-git-send-email-vijay.a.purushothaman@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mga14.intel.com (mga14.intel.com [143.182.124.37]) by gabe.freedesktop.org (Postfix) with ESMTP id D08D4E6653 for ; Fri, 28 Jun 2013 07:24:12 -0700 (PDT) In-Reply-To: <1372428931-24144-1-git-send-email-vijay.a.purushothaman@intel.com> Content-Language: en-US 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: "Purushothaman, Vijay A" , Intel Graphics List-Id: intel-gfx@lists.freedesktop.org > -----Original Message----- > From: intel-gfx-bounces+shobhit.kumar=intel.com@lists.freedesktop.org > [mailto:intel-gfx-bounces+shobhit.kumar=intel.com@lists.freedesktop.org] > On Behalf Of Vijay Purushothaman > Sent: Friday, June 28, 2013 7:46 PM > To: Intel Graphics > Subject: [Intel-gfx] [PATCH] drm/i915: Don't wait for vblank for sprite plane > flips > > Since the sprite planes are using synchronized MMIO based flip, no need to > wait for vblank. Removing this wait allows us to get a nice performance boost > to both 3D & media workloads based on sprite (~60 fps from ~20 fps) > > Signed-off-by: Vijay Purushothaman > Signed-off-by: Gary Smith > --- > drivers/gpu/drm/i915/intel_sprite.c | 14 +------------- > 1 file changed, 1 insertion(+), 13 deletions(-) > > diff --git a/drivers/gpu/drm/i915/intel_sprite.c > b/drivers/gpu/drm/i915/intel_sprite.c > index 1fa5612..1d14fc0 100644 > --- a/drivers/gpu/drm/i915/intel_sprite.c > +++ b/drivers/gpu/drm/i915/intel_sprite.c > @@ -828,20 +828,8 @@ intel_update_plane(struct drm_plane *plane, struct > drm_crtc *crtc, > intel_disable_primary(crtc); > > /* Unpin old obj after new one is active to avoid ugliness */ > - if (old_obj) { > - /* > - * It's fairly common to simply update the position of > - * an existing object. In that case, we don't need to > - * wait for vblank to avoid ugliness, we only need to > - * do the pin & ref bookkeeping. > - */ > - if (old_obj != obj) { > - mutex_unlock(&dev->struct_mutex); > - intel_wait_for_vblank(dev, to_intel_crtc(crtc)- > >pipe); > - mutex_lock(&dev->struct_mutex); > - } > + if (old_obj) > intel_unpin_fb_obj(old_obj); > - } > > out_unlock: > mutex_unlock(&dev->struct_mutex); > -- > 1.7.9.5 Tested on VLV. Works fine Tested-by: Shobhit Kumar