[igt-dev] [i-g-t V4 14/46] lib/igt_fb: For xe assume vram is used on discrete
Bhanuprakash Modem
bhanuprakash.modem at intel.com
Fri Apr 28 06:07:46 UTC 2023
From: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>
Assume fb bo's were created on vram on discrete, otherwise use system
memory.
Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>
Reviewed-by: Bhanuprakash Modem <bhanuprakash.modem at intel.com>
---
lib/igt_fb.c | 17 +++++++++++------
1 file changed, 11 insertions(+), 6 deletions(-)
diff --git a/lib/igt_fb.c b/lib/igt_fb.c
index 7379b99aa..df3d7d91a 100644
--- a/lib/igt_fb.c
+++ b/lib/igt_fb.c
@@ -2545,6 +2545,7 @@ igt_fb_create_intel_buf(int fd, struct buf_ops *bops,
{
struct intel_buf *buf;
uint32_t bo_name, handle, compression;
+ uint64_t region;
int num_surfaces;
int i;
@@ -2571,12 +2572,16 @@ igt_fb_create_intel_buf(int fd, struct buf_ops *bops,
bo_name = gem_flink(fd, fb->gem_handle);
handle = gem_open(fd, bo_name);
- buf = intel_buf_create_using_handle_and_size(bops, handle,
- fb->width, fb->height,
- fb->plane_bpp[0], 0,
- igt_fb_mod_to_tiling(fb->modifier),
- compression, fb->size,
- fb->strides[0]);
+ /* For i915 region doesn't matter, for xe does */
+ region = buf_ops_get_driver(bops) == INTEL_DRIVER_XE ?
+ vram_if_possible(fd, 0) : -1;
+ buf = intel_buf_create_full(bops, handle,
+ fb->width, fb->height,
+ fb->plane_bpp[0], 0,
+ igt_fb_mod_to_tiling(fb->modifier),
+ compression, fb->size,
+ fb->strides[0],
+ region);
intel_buf_set_name(buf, name);
/* Make sure we close handle on destroy path */
--
2.40.0
More information about the igt-dev
mailing list