[Intel-gfx] [PATCH I-G-T 2/4] tests/kms_psr_sink_crc: Refactor to use new PSR library primitives
Vivi, Rodrigo
rodrigo.vivi at intel.com
Thu Mar 23 22:22:04 UTC 2017
On Mon, 2017-02-13 at 15:43 -0800, Jim Bride wrote:
> Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
> Signed-off-by: Jim Bride <jim.bride at linux.intel.com>
> ---
> tests/kms_psr_sink_crc.c | 53 ++++++++++--------------------------------------
> 1 file changed, 11 insertions(+), 42 deletions(-)
>
> diff --git a/tests/kms_psr_sink_crc.c b/tests/kms_psr_sink_crc.c
> index 8f6bdc0..1d9eb11 100644
> --- a/tests/kms_psr_sink_crc.c
> +++ b/tests/kms_psr_sink_crc.c
> @@ -191,37 +191,6 @@ static void fill_render(data_t *data, uint32_t handle, unsigned char color)
> gem_bo_busy(data->drm_fd, handle);
> }
>
> -static bool psr_possible(data_t *data)
> -{
> - char buf[512];
> -
> - igt_debugfs_read("i915_edp_psr_status", buf);
> -
> - return running_with_psr_disabled ||
Oh! this patch removes the hability to run with psr disabled!
I really likes this functionality so we can know what to expect when PSR
is in place.
> - strstr(buf, "Sink_Support: yes\n");
> -}
> -
> -static bool psr_active(data_t *data)
> -{
> - char buf[512];
> -
> - igt_debugfs_read("i915_edp_psr_status", buf);
> -
> - return running_with_psr_disabled ||
> - strstr(buf, "HW Enabled & Active bit: yes\n");
> -}
> -
> -static bool wait_psr_entry(data_t *data)
> -{
> - int timeout = 5;
> - while (timeout--) {
> - if (psr_active(data))
> - return true;
> - sleep(1);
> - }
> - return false;
> -}
> -
> static void get_sink_crc(data_t *data, char *crc) {
> int ret;
> FILE *file;
> @@ -301,7 +270,7 @@ static void run_test(data_t *data)
> assert_or_manual(is_green(ref_crc), "screen GREEN");
>
> /* Confirm screen stays Green after PSR got active */
> - igt_assert(wait_psr_entry(data));
> + igt_assert(igt_psr_await_status(true));
> get_sink_crc(data, ref_crc);
> assert_or_manual(is_green(ref_crc), "screen GREEN");
>
> @@ -315,7 +284,7 @@ static void run_test(data_t *data)
> igt_display_commit(&data->display);
>
> /* Confirm it is not Green anymore */
> - igt_assert(wait_psr_entry(data));
> + igt_assert(igt_psr_await_status(true));
> get_sink_crc(data, ref_crc);
> if (data->test_plane == DRM_PLANE_TYPE_PRIMARY)
> assert_or_manual(!is_green(ref_crc), "screen WHITE");
> @@ -513,7 +482,7 @@ int main(int argc, char *argv[])
> igt_set_module_param_int("enable_psr", running_with_psr_disabled ?
> 0 : 1);
>
> - igt_skip_on(!psr_possible(&data));
> + igt_skip_on(!igt_psr_possible());
>
> data.bufmgr = drm_intel_bufmgr_gem_init(data.drm_fd, 4096);
> igt_assert(data.bufmgr);
> @@ -524,7 +493,7 @@ int main(int argc, char *argv[])
>
> igt_subtest("psr_basic") {
> setup_test_plane(&data);
> - igt_assert(wait_psr_entry(&data));
> + igt_assert(igt_psr_await_status(true));
> }
>
> for (op = PAGE_FLIP; op <= RENDER; op++) {
> @@ -532,7 +501,7 @@ int main(int argc, char *argv[])
> data.test_plane = DRM_PLANE_TYPE_PRIMARY;
> data.op = op;
> setup_test_plane(&data);
> - igt_assert(wait_psr_entry(&data));
> + igt_assert(igt_psr_await_status(true));
> run_test(&data);
> test_cleanup(&data);
> }
> @@ -543,7 +512,7 @@ int main(int argc, char *argv[])
> data.test_plane = DRM_PLANE_TYPE_OVERLAY;
> data.op = op;
> setup_test_plane(&data);
> - igt_assert(wait_psr_entry(&data));
> + igt_assert(igt_psr_await_status(true));
> run_test(&data);
> test_cleanup(&data);
> }
> @@ -554,7 +523,7 @@ int main(int argc, char *argv[])
> data.test_plane = DRM_PLANE_TYPE_CURSOR;
> data.op = op;
> setup_test_plane(&data);
> - igt_assert(wait_psr_entry(&data));
> + igt_assert(igt_psr_await_status(true));
> run_test(&data);
> test_cleanup(&data);
> }
> @@ -564,7 +533,7 @@ int main(int argc, char *argv[])
> data.test_plane = DRM_PLANE_TYPE_PRIMARY;
> data.op = RENDER;
> setup_test_plane(&data);
> - igt_assert(wait_psr_entry(&data));
> + igt_assert(igt_psr_await_status(true));
>
> dpms_off_on(data);
>
> @@ -579,7 +548,7 @@ int main(int argc, char *argv[])
>
> dpms_off_on(data);
>
> - igt_assert(wait_psr_entry(&data));
> + igt_assert(igt_psr_await_status(true));
> run_test(&data);
> test_cleanup(&data);
> }
> @@ -588,7 +557,7 @@ int main(int argc, char *argv[])
> data.test_plane = DRM_PLANE_TYPE_PRIMARY;
> data.op = PAGE_FLIP;
> setup_test_plane(&data);
> - igt_assert(wait_psr_entry(&data));
> + igt_assert(igt_psr_await_status(true));
>
> igt_system_suspend_autoresume(SUSPEND_STATE_MEM,
> SUSPEND_TEST_NONE);
> @@ -605,7 +574,7 @@ int main(int argc, char *argv[])
> igt_system_suspend_autoresume(SUSPEND_STATE_MEM,
> SUSPEND_TEST_NONE);
>
> - igt_assert(wait_psr_entry(&data));
> + igt_assert(igt_psr_await_status(true));
> run_test(&data);
> test_cleanup(&data);
> }
More information about the Intel-gfx
mailing list