On Thu, Nov 21, 2013 at 09:29:44PM +0200, ville.syrjala@xxxxxxxxxxxxxxx wrote: > Another set of FBC patches, which should fit on top of the previous set: > "[PATCH 00/10] drm/i915: FBC fixes v2" > > The persistent mode and HT tracking bit stuff is a bit unclear in the docs, > but I can remove it all, and everything still seems to work fine. > > The page flip and dirtyfb stuff is maybe a bit raw, but I'll post anyway > now since it seems to work for me. > > I'll post my igt test case that tries to stress all this shortly. It passes > for me on ILK, SNB and IVB. On ILK it's a bit limited since there are no > contexts (didn't try the ILK context patches w/ this) and we're missing > a gen5 rendercopy, so I couldn't test the render tracking using igt. But I > don't get any screen corruption w/ FBC enabled, so it must be working. > > The only FBC1 capable hardware on my desk is a MGM, but someone was a bit > too conservative when they implemented FBC1 support and enabled it only > for CL. I was too lazy to read through the code to see if it should work > for MGM. > > Ville Syrjälä (9): > drm/i915: Don't set the fence number in DPFC_CTL on SNB > drm/i915: Don't set persistent FBC mode on ILK/SNB > drm/i915: Don't set DPFC_HT_MODIFY bit on CTG/ILK/SNB > drm/i915: Use LRI based FBC render tracking for ILK > drm/i915: Reorder i915_gem_execbuffer_move_to_gpu() and i915_switch_context() > drm/i915: Improve page flip vs. FBC interaction > drm: Push dirtyfb ioctl kms locking down to drivers > drm/i915: Hook up dirtyfb ioctl for FBC nuke > drm/i915: Flush caches for scanout during cpu->gtt move I've punted on merging the 2 sw flush patches Chris' reviewed - I'd kinda like to see the full picture for fbc2 frontbuffer tracking first, including the current performance regression addressed. I just want to avoid half-merging one approach that later on turns out to be fully inadequate. Also, please enable fbc on lots of platforms by default at the end, I'm not a fan of dead code ;-) Cheers, Daniel > > drivers/gpu/drm/drm_crtc.c | 2 - > drivers/gpu/drm/i915/i915_gem.c | 2 +- > drivers/gpu/drm/i915/i915_gem_execbuffer.c | 8 +- > drivers/gpu/drm/i915/i915_reg.h | 2 +- > drivers/gpu/drm/i915/intel_display.c | 24 ++++- > drivers/gpu/drm/i915/intel_drv.h | 5 ++ > drivers/gpu/drm/i915/intel_pm.c | 136 +++++++++++++++++++++++++++-- > drivers/gpu/drm/i915/intel_ringbuffer.c | 57 ++++++------ > drivers/gpu/drm/omapdrm/omap_fb.c | 4 + > drivers/gpu/drm/qxl/qxl_display.c | 9 +- > drivers/gpu/drm/udl/udl_fb.c | 12 ++- > drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 18 +++- > 12 files changed, 228 insertions(+), 51 deletions(-) > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx