summaryrefslogtreecommitdiff
path: root/tests/gem_read_read_speed.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2016-07-22 17:53:51 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2016-07-22 18:06:38 +0100
commitb64d10cd9d9e9638acebae5e1199bd1be52aed39 (patch)
tree2d4b64f76c80a8ebca999ce450d5c6fb86a08bd7 /tests/gem_read_read_speed.c
parent2e1275371efe83c34332bfcd75af3ba1c36c9fc1 (diff)
lib/sysfs: Provide a convenience function for reading a bool
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'tests/gem_read_read_speed.c')
-rw-r--r--tests/gem_read_read_speed.c39
1 files changed, 10 insertions, 29 deletions
diff --git a/tests/gem_read_read_speed.c b/tests/gem_read_read_speed.c
index c01e4c25..0ac6f830 100644
--- a/tests/gem_read_read_speed.c
+++ b/tests/gem_read_read_speed.c
@@ -27,6 +27,7 @@
*/
#include "igt.h"
+#include "igt_sysfs.h"
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
@@ -48,39 +49,19 @@ igt_render_copyfunc_t rendercopy;
struct intel_batchbuffer *batch;
int width, height;
-static int gem_param(int fd, int name)
+static int semaphores_enabled(int fd)
{
- drm_i915_getparam_t gp;
- int v = -1; /* No param uses the sign bit, reserve it for errors */
-
- memset(&gp, 0, sizeof(gp));
- gp.param = name;
- gp.value = &v;
- if (drmIoctl(fd, DRM_IOCTL_I915_GETPARAM, &gp))
- return -1;
+ bool enabled = false;
+ int dir;
- return v;
-}
+ dir = igt_sysfs_open_parameters(fd);
+ if (dir < 0)
+ return false;
-static int semaphores_enabled(int fd)
-{
- FILE *file;
- int detected = -1;
- int ret;
-
- ret = gem_param(fd, 20);
- if (ret != -1)
- return ret > 0;
-
- file = fopen("/sys/module/i915/parameters/semaphores", "r");
- if (file) {
- int value;
- if (fscanf(file, "%d", &value) == 1)
- detected = value;
- fclose(file);
- }
+ enabled = igt_sysfs_get_boolean(dir, "semaphores");
+ close(dir);
- return detected;
+ return enabled;
}
static drm_intel_bo *rcs_copy_bo(drm_intel_bo *dst, drm_intel_bo *src)