[PATCH i-g-t v1] lib/i915/fbc: Disable FBC in case of selective update in xe2lpd
Hogander, Jouni
jouni.hogander at intel.com
Tue Mar 25 06:23:02 UTC 2025
On Thu, 2025-03-20 at 13:09 +0200, Vinod Govindapillai wrote:
> In xe2lpd onwards, FBC and PSR2 selective update should be
> selectively enabled based on the dirty rect threshold. Display
> driver lacks such a logic at the moment and instead disables
> FBC in case selective update is on. So replicate the same
> in related IGT cases as well.
As a name intel_fbc_psr_combo_supported is not specifically referring
PSR2. It is generally PSR. Also checked usage of
intel_fbc_psr_combo_supported and it seems to be used in PSR1-FBC
testcases as well. This will skip those tests as well. I don't think we
want that.
BR,
Jouni Högander
>
> Signed-off-by: Vinod Govindapillai <vinod.govindapillai at intel.com>
> ---
> lib/i915/intel_fbc.c | 15 ++++++++++-----
> 1 file changed, 10 insertions(+), 5 deletions(-)
>
> diff --git a/lib/i915/intel_fbc.c b/lib/i915/intel_fbc.c
> index 3971e4920..b0b4278ad 100644
> --- a/lib/i915/intel_fbc.c
> +++ b/lib/i915/intel_fbc.c
> @@ -167,11 +167,16 @@ bool intel_fbc_plane_size_supported(int fd,
> uint32_t width, uint32_t height)
> */
> bool intel_fbc_psr_combo_supported(int device)
> {
> - int ver = intel_display_ver(intel_get_drm_devid(device));
> -
> - /* In Xe3 FBC PSR combo not supported because of FBC dirty
> rect */
> - if (ver >= 20 && ver < 30)
> - return true;
> + /*
> + * Because of some random underruns, FBC is disabled when
> selective
> + * update is enabled for xe2lpd onwards. The display driver
> should
> + * implement a selection logic between FBC and PSR2 / PR
> selective
> + * update from xe2lpd onwards. Until that is implemented,
> keep
> + * FBC disabled if PSR2 selective update is on.
> + *
> + * Though right now this function is empty, keep this for
> the future
> + * display version based variations for FBC and PSR
> + */
>
> return false;
> }
More information about the igt-dev
mailing list