From: "José Roberto de Souza" <jose.souza@intel.com>
To: igt-dev@lists.freedesktop.org
Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>,
Rodrigo Vivi <rodrigo.vivi@intel.com>
Subject: [igt-dev] [PATCH i-g-t 02/10] tests/psr: Share the code check if sink supports PSR
Date: Fri, 11 Jan 2019 17:45:59 -0800 [thread overview]
Message-ID: <20190112014607.13446-2-jose.souza@intel.com> (raw)
In-Reply-To: <20190112014607.13446-1-jose.souza@intel.com>
The same code checking if sink supports PSR was spread into 3 tests,
better move it to lib and reuse.
v2: splitted previous patch into this one and the next one(Dhinakaran)
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
---
lib/igt_psr.c | 10 ++++++++++
lib/igt_psr.h | 1 +
tests/kms_fbcon_fbt.c | 15 +--------------
tests/kms_frontbuffer_tracking.c | 13 +------------
tests/kms_psr.c | 8 +-------
5 files changed, 14 insertions(+), 33 deletions(-)
diff --git a/lib/igt_psr.c b/lib/igt_psr.c
index c105bb6e..82012e6d 100644
--- a/lib/igt_psr.c
+++ b/lib/igt_psr.c
@@ -129,3 +129,13 @@ bool psr_disable(int debugfs_fd)
{
return psr_set(debugfs_fd, false);
}
+
+bool psr_sink_support(int debugfs_fd)
+{
+ char buf[PSR_STATUS_MAX_LEN];
+ int ret;
+
+ ret = igt_debugfs_simple_read(debugfs_fd, "i915_edp_psr_status", buf,
+ sizeof(buf));
+ return ret > 0 && strstr(buf, "Sink_Support: yes\n");
+}
diff --git a/lib/igt_psr.h b/lib/igt_psr.h
index 96f7bedf..d3336c2d 100644
--- a/lib/igt_psr.h
+++ b/lib/igt_psr.h
@@ -34,5 +34,6 @@ bool psr_wait_entry(int debugfs_fd);
bool psr_wait_exit(int debugfs_fd);
bool psr_enable(int debugfs_fd);
bool psr_disable(int debugfs_fd);
+bool psr_sink_support(int debugfs_fd);
#endif
diff --git a/tests/kms_fbcon_fbt.c b/tests/kms_fbcon_fbt.c
index 0ad53266..2823b47a 100644
--- a/tests/kms_fbcon_fbt.c
+++ b/tests/kms_fbcon_fbt.c
@@ -168,19 +168,6 @@ 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(int debugfs_fd)
-{
- char buf[PSR_STATUS_MAX_LEN];
- int ret;
-
- ret = igt_debugfs_simple_read(debugfs_fd, "i915_edp_psr_status",
- buf, sizeof(buf));
- if (ret < 0)
- return false;
-
- return strstr(buf, "Sink_Support: yes\n");
-}
-
static bool connector_can_psr(drmModeConnectorPtr connector)
{
return (connector->connector_type == DRM_MODE_CONNECTOR_eDP);
@@ -239,7 +226,7 @@ struct feature {
.connector_possible_fn = connector_can_fbc,
.enable = fbc_modparam_enable,
}, psr = {
- .supported_on_chipset = psr_supported_on_chipset,
+ .supported_on_chipset = psr_sink_support,
.wait_until_enabled = psr_wait_until_enabled,
.connector_possible_fn = connector_can_psr,
.enable = psr_debugfs_enable,
diff --git a/tests/kms_frontbuffer_tracking.c b/tests/kms_frontbuffer_tracking.c
index c366fecf..42f4c289 100644
--- a/tests/kms_frontbuffer_tracking.c
+++ b/tests/kms_frontbuffer_tracking.c
@@ -1417,17 +1417,6 @@ static void teardown_fbc(void)
{
}
-static bool psr_sink_has_support(void)
-{
- char buf[PSR_STATUS_MAX_LEN];
-
- debugfs_read("i915_edp_psr_status", buf);
- if (*buf == '\0') /* !HAS_PSR -> -ENODEV*/
- return false;
-
- return strstr(buf, "Sink_Support: yes\n");
-}
-
static void setup_psr(void)
{
if (prim_mode_params.output->config.connector->connector_type !=
@@ -1436,7 +1425,7 @@ static void setup_psr(void)
return;
}
- if (!psr_sink_has_support()) {
+ if (!psr_sink_support(drm.debugfs)) {
igt_info("Can't test PSR: not supported by sink.\n");
return;
}
diff --git a/tests/kms_psr.c b/tests/kms_psr.c
index 20b69892..855679b0 100644
--- a/tests/kms_psr.c
+++ b/tests/kms_psr.c
@@ -191,13 +191,7 @@ static void fill_render(data_t *data, uint32_t handle, unsigned char color)
static bool sink_support(data_t *data)
{
- char buf[PSR_STATUS_MAX_LEN];
-
- igt_debugfs_simple_read(data->debugfs_fd, "i915_edp_psr_status",
- buf, sizeof(buf));
-
- return data->with_psr_disabled ||
- strstr(buf, "Sink_Support: yes\n");
+ return data->with_psr_disabled || psr_sink_support(data->debugfs_fd);
}
static bool psr_wait_entry_if_enabled(data_t *data)
--
2.20.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
next prev parent reply other threads:[~2019-01-12 1:46 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-12 1:45 [igt-dev] [PATCH i-g-t 01/10] lib/psr: Add a macro with the maximum lenght of i915_edp_psr_status and use it José Roberto de Souza
2019-01-12 1:45 ` José Roberto de Souza [this message]
2019-01-12 1:46 ` [igt-dev] [PATCH i-g-t 03/10] lib/psr: Add support to new modified i915_edp_psr_status output José Roberto de Souza
2019-01-14 18:26 ` Rodrigo Vivi
2019-01-12 1:46 ` [igt-dev] [PATCH i-g-t 04/10] lib/psr: Only care about DEEP_SLEEP state for PSR2 José Roberto de Souza
2019-01-12 1:46 ` [igt-dev] [PATCH i-g-t 05/10] lib/psr: Rename psr_wait_exit to psr_wait_update José Roberto de Souza
2019-01-16 4:55 ` Dhinakaran Pandiyan
2019-01-12 1:46 ` [igt-dev] [PATCH i-g-t 06/10] lib/psr: Make psr_wait_entry and psr_wait_update aware of the PSR version tested José Roberto de Souza
2019-01-16 5:19 ` Dhinakaran Pandiyan
2019-01-17 1:59 ` Souza, Jose
2019-01-12 1:46 ` [igt-dev] [PATCH i-g-t 07/10] lib/psr: Drop support to old kernels without new PSR debugfs interface José Roberto de Souza
2019-01-16 5:21 ` Dhinakaran Pandiyan
2019-01-17 2:07 ` Souza, Jose
2019-01-17 2:16 ` Dhinakaran Pandiyan
2019-01-17 21:17 ` Souza, Jose
2019-01-17 9:50 ` Petri Latvala
2019-01-12 1:46 ` [igt-dev] [PATCH i-g-t 08/10] lib/psr: Add PSR2 support to the remaning psr functions José Roberto de Souza
2019-01-16 5:33 ` Dhinakaran Pandiyan
2019-01-17 2:14 ` Souza, Jose
2019-01-17 2:27 ` Dhinakaran Pandiyan
2019-01-12 1:46 ` [igt-dev] [PATCH i-g-t 09/10] test/psr: Add a generic function to setup each test José Roberto de Souza
2019-01-12 1:46 ` [igt-dev] [PATCH i-g-t 10/10] tests/psr: Add the same test coverage that we have for PSR1 to PSR2 José Roberto de Souza
2019-01-14 18:25 ` Rodrigo Vivi
2019-01-16 6:44 ` Dhinakaran Pandiyan
2019-01-17 21:43 ` Souza, Jose
2019-01-17 21:51 ` Dhinakaran Pandiyan
2019-01-17 23:05 ` Souza, Jose
2019-01-17 23:09 ` Pandiyan, Dhinakaran
2019-01-17 23:41 ` Souza, Jose
2019-01-12 2:32 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,01/10] lib/psr: Add a macro with the maximum lenght of i915_edp_psr_status and use it Patchwork
2019-01-12 8:48 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190112014607.13446-2-jose.souza@intel.com \
--to=jose.souza@intel.com \
--cc=dhinakaran.pandiyan@intel.com \
--cc=igt-dev@lists.freedesktop.org \
--cc=rodrigo.vivi@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.