[Intel-gfx] [PATCH 2/2] drm/i915/fbc: Resize CFB in non-full modeset paths

Souza, Jose jose.souza at intel.com
Wed Apr 11 00:44:24 UTC 2018


On Fri, 2018-04-06 at 22:03 +0100, Chris Wilson wrote:
> Quoting José Roberto de Souza (2018-04-06 21:53:49)
> > A simple page flip can cause the CFB required size to increase and
> > if it is bigger than the currently allocated CFB it needs to be
> > resized to activate FBC again.
> 
> I would have expected the answer to be to plug into atomic. During
> the
> prepare phase, you evaluate the planes for compatibility with FBC,
> and
> record what actions you plan to take in the commit (including
> allocating
> the next slab of stolen if required). Everything now goes through the
> same atomic prepare/commit, so it should be possible to eliminate all
> guess work.
> 
> Hopefully Maarten can either explain it better or why it shouldn't be
> done that at all. ;)
> -Chris


Hi Chris

You mean check if FBC needs to resize CFB inside
intel_crtc_compute_config() if so set state->mode_changed=true, to
cause a full modeset? This way intel_fbc_disable() and
intel_fbc_enable() will be called.

Yeah looks better than current solution, do you have any objections
Paulo?

Thanks


More information about the Intel-gfx mailing list