All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t v2] tests/kms_prime: Create the exporting BO with smem placement
@ 2021-09-08 10:41 Ramalingam C
  2021-09-08 11:31 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Ramalingam C @ 2021-09-08 10:41 UTC (permalink / raw)
  To: igt-dev; +Cc: Dixit Ashutosh, Chris_intel_ID, Michael Ruhl, Ramalingam C

On i915, to avail the dmabuf, the sharing object needs to migratable
into smem. So if the shared object is lmem, then it needs to have the
smem as second placement option.

Currently kms_prime sharing the dumb buffer between the devices.
But dumb buffer can't have the placements and resides at lmem for the
dgfx. Hence to meet the i915 expectation for dgfx, we create the BO
using the gem_create with smem as second placement option.

v2: Used gem_mmap__device_coherent for mmaped ptr (Ashutosh)

Signed-off-by: Ramalingam C <ramalingam.c@intel.com>
---
 tests/kms_prime.c | 23 +++++++++++------------
 1 file changed, 11 insertions(+), 12 deletions(-)

diff --git a/tests/kms_prime.c b/tests/kms_prime.c
index 2e20c58bc16e..ccbb2feadd29 100644
--- a/tests/kms_prime.c
+++ b/tests/kms_prime.c
@@ -100,18 +100,17 @@ static void prepare_scratch(int exporter_fd, struct dumb_bo *scratch,
 	scratch->height = mode->vdisplay;
 	scratch->bpp = 32;
 
-	scratch->handle = kmstest_dumb_create(exporter_fd,
-			ALIGN(scratch->width, 256),
-			scratch->height,
-			scratch->bpp,
-			&scratch->pitch,
-			&scratch->size);
-
-
-	ptr = kmstest_dumb_map_buffer(exporter_fd,
-				      scratch->handle,
-				      scratch->size,
-				      PROT_WRITE);
+	igt_calc_fb_size(exporter_fd, mode->hdisplay, mode->vdisplay, DRM_FORMAT_XRGB8888,
+			 DRM_FORMAT_MOD_NONE, &scratch->size, &scratch->pitch);
+	if (gem_has_lmem(exporter_fd))
+		scratch->handle = gem_create_in_memory_regions(exporter_fd, scratch->size,
+							       REGION_LMEM(0), REGION_SMEM);
+	else
+		scratch->handle = gem_create_in_memory_regions(exporter_fd, scratch->size,
+							       REGION_SMEM);
+
+	ptr = gem_mmap__device_coherent(exporter_fd, scratch->handle, 0, scratch->size,
+					PROT_WRITE | PROT_READ);
 
 	for (size_t idx = 0; idx < scratch->size / sizeof(*ptr); ++idx)
 		ptr[idx] = color;
-- 
2.20.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-09-08 20:59 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-08 10:41 [igt-dev] [PATCH i-g-t v2] tests/kms_prime: Create the exporting BO with smem placement Ramalingam C
2021-09-08 11:31 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
2021-09-08 15:05 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
2021-09-08 20:50 ` [igt-dev] [PATCH i-g-t v2] " Dixit, Ashutosh
2021-09-08 20:59   ` Ruhl, Michael J

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.