summaryrefslogtreecommitdiff
path: root/tests/kms_fbcon_fbt.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2017-03-21 17:16:03 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2017-03-21 17:36:02 +0000
commit83884e97e18739e3588c6467a210838099d42073 (patch)
tree778bab4b309c852d3649cc901952267d0cbb5992 /tests/kms_fbcon_fbt.c
parent25fbae15262cf570e207e62f50e7c5233e06bc67 (diff)
Restore "lib: Open debugfs files for the given DRM device"
This reverts commit 25fbae15262cf570e207e62f50e7c5233e06bc67, restoring commit 301ad44cdf1b868b1ab89096721da91fa8541fdc Author: Tomeu Vizoso <tomeu.vizoso@collabora.com> Date: Thu Mar 2 10:37:11 2017 +0100 lib: Open debugfs files for the given DRM device with fixes. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'tests/kms_fbcon_fbt.c')
-rw-r--r--tests/kms_fbcon_fbt.c44
1 files changed, 22 insertions, 22 deletions
diff --git a/tests/kms_fbcon_fbt.c b/tests/kms_fbcon_fbt.c
index 6342289f..d0090912 100644
--- a/tests/kms_fbcon_fbt.c
+++ b/tests/kms_fbcon_fbt.c
@@ -82,11 +82,11 @@ static void teardown_drm(struct drm_info *drm)
igt_assert(close(drm->fd) == 0);
}
-static bool fbc_supported_on_chipset(void)
+static bool fbc_supported_on_chipset(int fd)
{
char buf[128];
- igt_debugfs_read("i915_fbc_status", buf);
+ igt_debugfs_read(fd, "i915_fbc_status", buf);
return !strstr(buf, "FBC unsupported on this chipset\n");
}
@@ -95,17 +95,17 @@ static bool connector_can_fbc(drmModeConnectorPtr connector)
return true;
}
-static bool fbc_is_enabled(void)
+static bool fbc_is_enabled(int fd)
{
char buf[128];
- igt_debugfs_read("i915_fbc_status", buf);
+ igt_debugfs_read(fd, "i915_fbc_status", buf);
return strstr(buf, "FBC enabled\n");
}
-static bool fbc_wait_until_enabled(void)
+static bool fbc_wait_until_enabled(int fd)
{
- return igt_wait(fbc_is_enabled(), 5000, 1);
+ return igt_wait(fbc_is_enabled(fd), 5000, 1);
}
typedef bool (*connector_possible_fn)(drmModeConnectorPtr connector);
@@ -147,11 +147,11 @@ static void set_mode_for_one_screen(struct drm_info *drm, struct igt_fb *fb,
igt_assert_eq(rc, 0);
}
-static bool psr_supported_on_chipset(void)
+static bool psr_supported_on_chipset(int fd)
{
char buf[256];
- igt_debugfs_read("i915_edp_psr_status", buf);
+ igt_debugfs_read(fd, "i915_edp_psr_status", buf);
return strstr(buf, "Sink_Support: yes\n");
}
@@ -160,22 +160,22 @@ static bool connector_can_psr(drmModeConnectorPtr connector)
return (connector->connector_type == DRM_MODE_CONNECTOR_eDP);
}
-static bool psr_is_enabled(void)
+static bool psr_is_enabled(int fd)
{
char buf[256];
- igt_debugfs_read("i915_edp_psr_status", buf);
+ igt_debugfs_read(fd, "i915_edp_psr_status", buf);
return strstr(buf, "\nActive: yes\n");
}
-static bool psr_wait_until_enabled(void)
+static bool psr_wait_until_enabled(int fd)
{
- return igt_wait(psr_is_enabled(), 5000, 1);
+ return igt_wait(psr_is_enabled(fd), 5000, 1);
}
struct feature {
- bool (*supported_on_chipset)(void);
- bool (*wait_until_enabled)(void);
+ bool (*supported_on_chipset)(int fd);
+ bool (*wait_until_enabled)(int fd);
bool (*connector_possible_fn)(drmModeConnectorPtr connector);
const char *param_name;
} fbc = {
@@ -201,26 +201,26 @@ static void subtest(struct feature *feature, bool suspend)
struct drm_info drm;
struct igt_fb fb;
- igt_require(feature->supported_on_chipset());
+ setup_drm(&drm);
+
+ igt_require(feature->supported_on_chipset(drm.fd));
disable_features();
igt_set_module_param_int(feature->param_name, 1);
- setup_drm(&drm);
-
kmstest_unset_all_crtcs(drm.fd, drm.res);
wait_user("Modes unset.");
- igt_assert(!feature->wait_until_enabled());
+ igt_assert(!feature->wait_until_enabled(drm.fd));
set_mode_for_one_screen(&drm, &fb, feature->connector_possible_fn);
wait_user("Screen set.");
- igt_assert(feature->wait_until_enabled());
+ igt_assert(feature->wait_until_enabled(drm.fd));
if (suspend) {
igt_system_suspend_autoresume(SUSPEND_STATE_MEM,
SUSPEND_TEST_NONE);
sleep(5);
- igt_assert(feature->wait_until_enabled());
+ igt_assert(feature->wait_until_enabled(drm.fd));
}
igt_remove_fb(drm.fd, &fb);
@@ -230,13 +230,13 @@ static void subtest(struct feature *feature, bool suspend)
sleep(3);
wait_user("Back to fbcon.");
- igt_assert(!feature->wait_until_enabled());
+ igt_assert(!feature->wait_until_enabled(drm.fd));
if (suspend) {
igt_system_suspend_autoresume(SUSPEND_STATE_MEM,
SUSPEND_TEST_NONE);
sleep(5);
- igt_assert(!feature->wait_until_enabled());
+ igt_assert(!feature->wait_until_enabled(drm.fd));
}
}