[PATCH i-g-t 07/12] lib/intel_bufops: Add Ys tiling in linear_to and to_linear path
Zbigniew Kempczyński
zbigniew.kempczynski at intel.com
Mon May 27 07:33:40 UTC 2024
To iterate over all tilings we need to have each case addressed
in the code. Add missing Ys case.
Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>
Cc: Juha-Pekka Heikkila <juhapekka.heikkila at gmail.com>
---
lib/intel_blt.c | 3 +++
lib/intel_bufops.c | 6 ++++--
lib/intel_cmds_info.h | 1 +
3 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/lib/intel_blt.c b/lib/intel_blt.c
index d1200ca862..20c42eec14 100644
--- a/lib/intel_blt.c
+++ b/lib/intel_blt.c
@@ -540,6 +540,7 @@ const char *blt_tiling_name(enum blt_tiling_type tiling)
case T_TILE4: return "tile4";
case T_TILE64: return "tile64";
case T_YFMAJOR: return "yfmajor";
+ case T_YSMAJOR: return "ysmajor";
default:
break;
}
@@ -582,6 +583,7 @@ int blt_tile_to_i915_tile(enum blt_tiling_type tiling)
case T_TILE4: return I915_TILING_4;
case T_TILE64: return I915_TILING_64;
case T_YFMAJOR: return I915_TILING_Yf;
+ case T_YSMAJOR: return I915_TILING_Ys;
default:
break;
}
@@ -606,6 +608,7 @@ enum blt_tiling_type i915_tile_to_blt_tile(uint32_t tiling)
case I915_TILING_4: return T_TILE4;
case I915_TILING_64: return T_TILE64;
case I915_TILING_Yf: return T_YFMAJOR;
+ case I915_TILING_Ys: return T_YSMAJOR;
default:
igt_assert_f(0, "Unknown tiling!\n");
}
diff --git a/lib/intel_bufops.c b/lib/intel_bufops.c
index 36b9aa2a8c..38b720624e 100644
--- a/lib/intel_bufops.c
+++ b/lib/intel_bufops.c
@@ -1697,8 +1697,6 @@ static struct buf_ops *__buf_ops_create(int fd, bool check_idempotency)
bops->y_to_linear = copy_y_to_linear;
bops->linear_to_tile4 = copy_linear_to_tile4;
bops->tile4_to_linear = copy_tile4_to_linear;
- bops->linear_to_ys = NULL;
- bops->ys_to_linear = NULL;
return bops;
}
@@ -1956,6 +1954,10 @@ bool buf_ops_set_software_tiling(struct buf_ops *bops,
igt_debug("-> use SW on tiling Yf\n");
break;
+ case I915_TILING_Ys:
+ igt_debug("-> use SW on tiling Ys\n");
+ break;
+
default:
igt_warn("Invalid tiling: %d\n", tiling);
was_changed = false;
diff --git a/lib/intel_cmds_info.h b/lib/intel_cmds_info.h
index 6f7d655083..7960e0412e 100644
--- a/lib/intel_cmds_info.h
+++ b/lib/intel_cmds_info.h
@@ -14,6 +14,7 @@ enum blt_tiling_type {
T_YMAJOR,
T_TILE4,
T_YFMAJOR,
+ T_YSMAJOR,
T_TILE64,
__BLT_MAX_TILING
};
--
2.34.1
More information about the igt-dev
mailing list