[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