[PATCH i-g-t 14/23] lib/igt_fb: Expose igt_fb_is_gen12_rc_ccs_cc_modifier()
Ville Syrjala
ville.syrjala at linux.intel.com
Mon Sep 2 14:37:49 UTC 2024
From: Ville Syrjälä <ville.syrjala at linux.intel.com>
I'm going to need is_gen12_rc_ccs_cc_modifier() outside of
igt_fb.c. Rename it to igt_fb_is_gen12_rc_ccs_cc_modifier()
and expose it to everyone.
v2: Add docs (J-P)
Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila at gmail.com>
Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
---
lib/igt_fb.c | 16 ++++++++++------
lib/igt_fb.h | 1 +
2 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/lib/igt_fb.c b/lib/igt_fb.c
index 0cf8691d1d7d..534ed9aa4e55 100644
--- a/lib/igt_fb.c
+++ b/lib/igt_fb.c
@@ -596,7 +596,13 @@ static bool is_gen12_mc_ccs_modifier(uint64_t modifier)
modifier == I915_FORMAT_MOD_4_TILED_MTL_MC_CCS;
}
-static bool is_gen12_rc_ccs_cc_modifier(uint64_t modifier)
+/**
+ * igt_fb_is_gen12_rc_ccs_cc_modifier:
+ * @modifier: drm modifier
+ *
+ * This function returns true if @modifier supports clear color.
+ */
+bool igt_fb_is_gen12_rc_ccs_cc_modifier(uint64_t modifier)
{
return modifier == I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS_CC ||
modifier == I915_FORMAT_MOD_4_TILED_DG2_RC_CCS_CC ||
@@ -606,7 +612,7 @@ static bool is_gen12_rc_ccs_cc_modifier(uint64_t modifier)
static bool is_gen12_ccs_modifier(uint64_t modifier)
{
return is_gen12_mc_ccs_modifier(modifier) ||
- is_gen12_rc_ccs_cc_modifier(modifier) ||
+ igt_fb_is_gen12_rc_ccs_cc_modifier(modifier) ||
modifier == I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS ||
modifier == I915_FORMAT_MOD_4_TILED_DG2_RC_CCS ||
modifier == I915_FORMAT_MOD_4_TILED_MTL_RC_CCS;
@@ -742,9 +748,7 @@ static int fb_num_planes(const struct igt_fb *fb)
!HAS_FLATCCS(intel_get_drm_devid(fb->fd)))
num_planes *= 2;
- if (fb->modifier == I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS_CC ||
- fb->modifier == I915_FORMAT_MOD_4_TILED_MTL_RC_CCS_CC ||
- fb->modifier == I915_FORMAT_MOD_4_TILED_DG2_RC_CCS_CC)
+ if (igt_fb_is_gen12_rc_ccs_cc_modifier(fb->modifier))
num_planes++;
return num_planes;
@@ -2511,7 +2515,7 @@ static bool block_copy_ok(const struct igt_fb *fb)
static bool ccs_needs_enginecopy(const struct igt_fb *fb)
{
- if (is_gen12_rc_ccs_cc_modifier(fb->modifier))
+ if (igt_fb_is_gen12_rc_ccs_cc_modifier(fb->modifier))
return true;
if (is_gen12_mc_ccs_modifier(fb->modifier))
diff --git a/lib/igt_fb.h b/lib/igt_fb.h
index b1b40b858610..12c9574827f2 100644
--- a/lib/igt_fb.h
+++ b/lib/igt_fb.h
@@ -182,6 +182,7 @@ uint64_t igt_fb_mod_to_tiling(uint64_t modifier);
uint64_t igt_fb_tiling_to_mod(uint64_t tiling);
bool igt_fb_is_ccs_modifier(uint64_t modifier);
+bool igt_fb_is_gen12_rc_ccs_cc_modifier(uint64_t modifier);
bool igt_fb_is_ccs_plane(const struct igt_fb *fb, int plane);
bool igt_fb_is_gen12_ccs_cc_plane(const struct igt_fb *fb, int plane);
int igt_fb_ccs_to_main_plane(const struct igt_fb *fb, int ccs_plane);
--
2.44.2
More information about the igt-dev
mailing list