From: Vinod Govindapillai Date: Fri, 22 Sep 2023 13:30:03 +0000 (+0300) Subject: drm/i915/lnl: update the supported plane formats with FBC X-Git-Tag: v6.7-rc1~145^2~13^2~58 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f2a7b9cd5b06eba8cf12153507ff77cc80c7b45f;p=thirdparty%2Fkernel%2Flinux.git drm/i915/lnl: update the supported plane formats with FBC FBC is supported with RGB32 8:8:8:8 with or without alpha Bspec: 68904, 69560 Signed-off-by: Vinod Govindapillai Signed-off-by: Ville Syrjälä Link: https://patchwork.freedesktop.org/patch/msgid/20230922133003.150578-3-vinod.govindapillai@intel.com --- diff --git a/drivers/gpu/drm/i915/display/intel_fbc.c b/drivers/gpu/drm/i915/display/intel_fbc.c index 0f1dd8729bf1a..5f13c6776c7d0 100644 --- a/drivers/gpu/drm/i915/display/intel_fbc.c +++ b/drivers/gpu/drm/i915/display/intel_fbc.c @@ -903,6 +903,11 @@ static bool pixel_format_is_valid(const struct intel_plane_state *plane_state) if (IS_G4X(i915)) return false; return true; + case DRM_FORMAT_ARGB8888: + case DRM_FORMAT_ABGR8888: + if (DISPLAY_VER(i915) >= 20) + return true; + fallthrough; default: return false; } @@ -1132,7 +1137,8 @@ static int intel_fbc_check_plane(struct intel_atomic_state *state, return 0; } - if (plane_state->hw.pixel_blend_mode != DRM_MODE_BLEND_PIXEL_NONE && + if (DISPLAY_VER(i915) < 20 && + plane_state->hw.pixel_blend_mode != DRM_MODE_BLEND_PIXEL_NONE && fb->format->has_alpha) { plane_state->no_fbc_reason = "per-pixel alpha not supported"; return 0;