summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorZbigniew Kempczyński <zbigniew.kempczynski@intel.com>2024-06-18 07:23:30 +0200
committerZbigniew Kempczyński <zbigniew.kempczynski@intel.com>2024-06-19 14:30:40 +0200
commit0a0ae6062750e3d14aa7b2068f5915d1a3c9258b (patch)
treea6770af45cef9249f4968aab82d2a458882ab65d /lib
parent01471ec874a1cd3eb3e3b2a9ad30df84455ed0a3 (diff)
lib/intel_bufops: Add Ys tiling in linear_to and to_linear path
To iterate over all tilings we need to have each case addressed in the code. Add missing Ys case. Cc: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Link: https://lore.kernel.org/r/20240618052335.152588-8-zbigniew.kempczynski@intel.com Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
Diffstat (limited to 'lib')
-rw-r--r--lib/intel_blt.c3
-rw-r--r--lib/intel_bufops.c6
-rw-r--r--lib/intel_cmds_info.h1
3 files changed, 8 insertions, 2 deletions
diff --git a/lib/intel_blt.c b/lib/intel_blt.c
index d1200ca86..20c42eec1 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 36b9aa2a8..38b720624 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 6f7d65508..7960e0412 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
};