On Fri, Aug 14, 2015 at 06:34:12PM -0300, Paulo Zanoni wrote: > If we want to try to enable FBC by default on any platform we need to > be on the safe side and disable it in case we get an underrun while > FBC is enabled on the corresponding pipe. We currently already have > other reasons for FIFO underruns on our driver, but the ones I saw > with FBC lead to black screens that only go away when you disable FBC. > > The current FIFO underrun I see happens when the CFB is using the top > 8mb of stolen memory. This is reproducible with a 2560x1440 DP Monitor > on a system with 32mb of stolen memory. On this case, all the IGT > tests fail while checking the screen CRC. A later patch on this series > will fix this problem for real. > > With this patch, the tests will start failing while checking if FBC is > enabled instead of failing while comparing the CRC of the black screen > against the correct CRC. So this patch is not hiding any IGT bugs: the > tests still fail, but now they fail with a different reason. > > Signed-off-by: Paulo Zanoni <paulo.r.zanoni@xxxxxxxxx> > --- > drivers/gpu/drm/i915/i915_drv.h | 5 +++ > drivers/gpu/drm/i915/intel_drv.h | 1 + > drivers/gpu/drm/i915/intel_fbc.c | 61 ++++++++++++++++++++++++++++++ > drivers/gpu/drm/i915/intel_fifo_underrun.c | 2 + > 4 files changed, 69 insertions(+) > > diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h > index 4fd7858..e74a844 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -926,6 +926,11 @@ struct i915_fbc { > struct drm_framebuffer *fb; > } *fbc_work; > > + struct intel_fbc_underrun_work { > + struct work_struct work; > + struct intel_crtc *crtc; > + } underrun_work; It's a singleshot (perhaps a couple in flight during the switch off), so there's no need for a permanent allocation. Fight the bloat! -Chris -- Chris Wilson, Intel Open Source Technology Centre _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx