Hi Here's yet another patch series randomly modifying the FBC code. We start by refactoring things in order to fix the locking problems, then fix a few other smaller problems and apply some polishing. Just to keep the tradition of the past 10 cover letters, I guess I should say that this series is the last one and that we may consider enabling FBC on HSW/BDW/SKL after it is merged :) For SKL specifically, I tested this series on a two-weeks old version of drm-intel-nightly since today's version is giving me a BUG() even without my patches applied. Thanks, Paulo Paulo Zanoni (25): drm/i915/fbc: wait for a vblank instead of 50ms when enabling drm/i915/fbc: extract intel_fbc_can_activate() drm/i915/fbc: extract intel_fbc_can_enable() drm/i915/fbc: introduce struct intel_fbc_reg_params drm/i915/fbc: replace frequent dev_priv->fbc.x with fbc->x drm/i915/fbc: don't use the frontbuffer tracking subsystem for flips drm/i915/fbc: don't flush for operations on the wrong frontbuffer drm/i915/fbc: unconditionally update FBC during atomic commits drm/i915/fbc: introduce struct intel_fbc_state_cache drm/i915/fbc: split intel_fbc_update into pre and post update drm/i915/fbc: fix the FBC state checking code drm/i915/fbc: unexport intel_fbc_deactivate drm/i915/fbc: rename the FBC disable functions drm/i915/fbc: make sure we cancel the work function at fbc_disable drm/i915/fbc: rewrite the multiple_pipes_ok() code for locking drm/i915: simplify struct drm_device access at intel_atomic_check() drm/i915/fbc: choose the new FBC CRTC during atomic check drm/i915/fbc: move intel_fbc_{enable,disable} call one level up drm/i915/fbc: make FBC work with fastboot drm/i915/fbc: don't try to deactivate FBC if it's not enabled drm/i915/fbc: don't print no_fbc_reason to dmesg drm/i915/fbc: don't store the fb_id on reg_params drm/i915/fbc: call intel_fbc_pre_update earlier during page flips drm/i915/fbc: don't store/check a pointer to the FB drm/i915/fbc: refactor some small functions called only once drivers/gpu/drm/i915/i915_drv.h | 51 +- drivers/gpu/drm/i915/i915_suspend.c | 2 +- drivers/gpu/drm/i915/intel_display.c | 59 +-- drivers/gpu/drm/i915/intel_drv.h | 18 +- drivers/gpu/drm/i915/intel_fbc.c | 901 ++++++++++++++++++++--------------- 5 files changed, 589 insertions(+), 442 deletions(-) -- 2.6.4 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx