lib: Add wrapper for DRM_IOCTL_MODE_CREATE_DUMB

In order to test drivers that don't have support for proper buffer
objects, add a wrapper for creating dumb buffer objects that will be
called from the lib code for those subtests that don't need to care.

Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Reviewed-by: Daniel Stone <daniels@collabora.com>
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
Tomeu Vizoso
2016-03-02 13:39:44 +01:00
committed by Daniel Stone
parent 85a1d45c4a
commit dc84e7d6ad
4 changed files with 41 additions and 32 deletions
+1 -15
View File
@@ -120,20 +120,6 @@ static void test_invalid_buffer(int in)
teardown(fd);
}
static uint32_t dumb_create(int fd)
{
struct drm_mode_create_dumb arg;
arg.bpp = 32;
arg.width = 32;
arg.height = 32;
do_ioctl(fd, DRM_IOCTL_MODE_CREATE_DUMB, &arg);
igt_assert(arg.size >= 4096);
return arg.handle;
}
static void test_fault_buffer(int in)
{
int fd = setup(in, 0);
@@ -141,7 +127,7 @@ static void test_fault_buffer(int in)
char *buf;
memset(&arg, 0, sizeof(arg));
arg.handle = dumb_create(fd);
arg.handle = kmstest_dumb_create(fd, 32, 32, 32, NULL, NULL);
do_ioctl(fd, DRM_IOCTL_MODE_MAP_DUMB, &arg);
+1 -17
View File
@@ -170,22 +170,6 @@ static const char *bytes_per_sec(char *buf, double v)
return buf;
}
static uint32_t dumb_create(int fd)
{
struct drm_mode_create_dumb arg;
int ret;
arg.bpp = 32;
arg.width = 32;
arg.height = 32;
ret = drmIoctl(fd, DRM_IOCTL_MODE_CREATE_DUMB, &arg);
igt_assert_eq(ret, 0);
igt_assert(arg.size >= 4096);
return arg.handle;
}
static int dcmp(const void *A, const void *B)
{
const double *a = A, *b = B;
@@ -209,7 +193,7 @@ static void run(int object_size, bool dumb)
fd = drm_open_driver(DRIVER_INTEL);
if (dumb)
handle = dumb_create(fd);
handle = kmstest_dumb_create(fd, 32, 32, 32, NULL, NULL);
else
handle = gem_create(fd, 4096);