[Intel-gfx] [PATCH 0/9] drm/i915: Some more FBC stuff
Daniel Vetter
daniel at ffwll.ch
Tue Dec 3 22:42:51 CET 2013
On Thu, Nov 21, 2013 at 09:29:44PM +0200, ville.syrjala at linux.intel.com 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 at 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
More information about the Intel-gfx
mailing list