drm-tests: remove ad-hoc gem map in atomictest.

Make atomictest use bs_mapper and bs_draw to remove ad-hoc map.

Now atomictest uses gem mapper because gem mapper can handle both tiled and
linear bo.

BUG=chromium:485571
TEST=Ran these commands:
    emerge-{BOARD} drm-tests
    cros deploy --board $BOARD $IP drm-tests
    stop ui
    ./atomictest disable_primary or others

Change-Id: Id9a67d4c59d8b018be63d930e225e7201edb6935
Reviewed-on: https://chromium-review.googlesource.com/475224
Commit-Ready: Dongseong Hwang <dongseong.hwang@intel.com>
Tested-by: Dongseong Hwang <dongseong.hwang@intel.com>
Reviewed-by: Dongseong Hwang <dongseong.hwang@intel.com>
Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org>
diff --git a/atomictest.c b/atomictest.c
index a66c8ac..0a8f1e8 100644
--- a/atomictest.c
+++ b/atomictest.c
@@ -162,14 +162,12 @@
 	return &crtc->planes[index];
 }
 
-static void write_to_buffer(struct gbm_bo *bo, uint32_t u32, uint16_t u16)
+static void write_to_buffer(struct bs_mapper *mapper, struct gbm_bo *bo, uint32_t u32, uint16_t u16)
 {
 	void *map_data;
-	uint32_t stride;
 	uint32_t num_ints;
 	uint32_t format = gbm_bo_get_format(bo);
-	void *addr = gbm_bo_map(bo, 0, 0, gbm_bo_get_width(bo), gbm_bo_get_height(bo), 0, &stride,
-				&map_data, 0);
+	void *addr = bs_mapper_map(mapper, bo, 0, &map_data);
 
 	if (format == GBM_FORMAT_RGB565 || format == GBM_FORMAT_BGR565) {
 		num_ints = gbm_bo_get_plane_size(bo, 0) / sizeof(uint16_t);
@@ -183,15 +181,13 @@
 			pixel[i] = u32;
 	}
 
-	gbm_bo_unmap(bo, map_data);
+	bs_mapper_unmap(mapper, bo, map_data);
 }
 
-static void draw_cursor(struct gbm_bo *bo)
+static void draw_cursor(struct bs_mapper *mapper, struct gbm_bo *bo)
 {
 	void *map_data;
-	uint32_t stride;
-	uint32_t *cursor_ptr = gbm_bo_map(bo, 0, 0, gbm_bo_get_width(bo), gbm_bo_get_height(bo), 0,
-					  &stride, &map_data, 0);
+	uint32_t *cursor_ptr = bs_mapper_map(mapper, bo, 0, &map_data);
 	for (size_t y = 0; y < gbm_bo_get_height(bo); y++) {
 		for (size_t x = 0; x < gbm_bo_get_width(bo); x++) {
 			// A white triangle pointing right
@@ -201,7 +197,7 @@
 		}
 	}
 
-	gbm_bo_unmap(bo, map_data);
+	bs_mapper_unmap(mapper, bo, map_data);
 }
 
 static int get_prop(int fd, drmModeObjectPropertiesPtr props, const char *name,
@@ -411,7 +407,7 @@
 
 	for (uint32_t i = 0; i < count_formats; i++) {
 		CHECK_RESULT(init_plane(ctx, plane, formats[i], x, y, w, h, zpos, crtc_id));
-		write_to_buffer(plane->bo, 0x00FF0000, 0xF800);
+		write_to_buffer(ctx->mapper, plane->bo, 0x00FF0000, 0xF800);
 		CHECK_RESULT(commit(ctx));
 		usleep(1e6);
 	}
@@ -507,7 +503,7 @@
 	ctx->drm_event_ctx.version = DRM_EVENT_CONTEXT_VERSION;
 	ctx->drm_event_ctx.page_flip_handler = page_flip_handler;
 
-	ctx->mapper = bs_mapper_dma_buf_new();
+	ctx->mapper = bs_mapper_gem_new();
 	if (ctx->mapper == NULL) {
 		bs_debug_error("failed to create mapper object");
 		free_context(ctx);
@@ -724,7 +720,7 @@
 				added_video = true;
 				CHECK_RESULT(init_plane(ctx, overlay, DRM_FORMAT_XRGB8888, x, y, x,
 							y, i, crtc->crtc_id));
-				write_to_buffer(overlay->bo, 0x00FF0000, 0);
+				write_to_buffer(ctx->mapper, overlay->bo, 0x00FF0000, 0);
 			}
 		}
 
@@ -734,13 +730,13 @@
 			cursor = get_plane(crtc, j, DRM_PLANE_TYPE_CURSOR);
 			CHECK_RESULT(init_plane(ctx, cursor, DRM_FORMAT_XRGB8888, x, y, CURSOR_SIZE,
 						CURSOR_SIZE, crtc->num_overlay + j, crtc->crtc_id));
-			draw_cursor(cursor->bo);
+			draw_cursor(ctx->mapper, cursor->bo);
 		}
 
 		primary = get_plane(crtc, i, DRM_PLANE_TYPE_PRIMARY);
 		CHECK_RESULT(init_plane(ctx, primary, DRM_FORMAT_XRGB8888, 0, 0, crtc->width,
 					crtc->height, 0, crtc->crtc_id));
-		write_to_buffer(primary->bo, 0x00000FF, 0);
+		write_to_buffer(ctx->mapper, primary->bo, 0x00000FF, 0);
 
 		uint32_t num_planes = crtc->num_primary + crtc->num_cursor + crtc->num_overlay;
 		int done = 0;
@@ -826,14 +822,14 @@
 			uint32_t y = crtc->height >> (j + 2);
 			CHECK_RESULT(init_plane(ctx, overlay, DRM_FORMAT_XRGB8888, x, y, x, y, i,
 						crtc->crtc_id));
-			write_to_buffer(overlay->bo, 0x00FF0000, 0);
+			write_to_buffer(ctx->mapper, overlay->bo, 0x00FF0000, 0);
 		}
 
 		cursor = drmModeAtomicGetCursor(ctx->pset);
 		primary = get_plane(crtc, i, DRM_PLANE_TYPE_PRIMARY);
 		CHECK_RESULT(init_plane(ctx, primary, DRM_FORMAT_XRGB8888, 0, 0, crtc->width,
 					crtc->height, 0, crtc->crtc_id));
-		write_to_buffer(primary->bo, 0x00000FF, 0);
+		write_to_buffer(ctx->mapper, primary->bo, 0x00000FF, 0);
 		CHECK_RESULT(commit(ctx));
 		usleep(1e6);