From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH i-g-t v3 2/2] tests/pm_backlight: Enable connected output to allow tests to succeed, v4.
Date: Thu, 12 Oct 2017 15:29:19 +0300 [thread overview]
Message-ID: <20171012122919.GG10981@intel.com> (raw)
In-Reply-To: <20171012105539.20402-1-maarten.lankhorst@linux.intel.com>
On Thu, Oct 12, 2017 at 12:55:39PM +0200, Maarten Lankhorst wrote:
> If the connected output is disabled before this test is run, then the test
> will fail because actual_brightness stays at 0 instead of the value
> of the desired brightness. Fix this by reading intel_backlight/device
> for the output name, and enable that output at start of this test.
>
> Changes since v1:
> - Enable the connected output, instead of enabling all outputs.
> Changes since v2:
> - Set a dummy fb, just in case.
> Changes since v3:
> - Use igt_output_get_plane_type, not get_plane.
>
> Sample failure:
> IGT-Version: 1.20-g01c550a27986 (x86_64) (Linux: 4.14.0-rc3-fbconhax+ x86_64)
> (pm_backlight:1203) CRITICAL: Test assertion failure function test_and_verify, file pm_backlight.c:111:
> (pm_backlight:1203) CRITICAL: Failed assertion: ({ typeof(0) _a = (0); typeof(val - tolerance) _b = (val - tolerance); _a > _b ? _a : _b; }) <= result
> (pm_backlight:1203) CRITICAL: error: 91200 > 0
>
> Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> ---
> tests/pm_backlight.c | 47 +++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 47 insertions(+)
>
> diff --git a/tests/pm_backlight.c b/tests/pm_backlight.c
> index 8258d4e4c124..a695f90913fd 100644
> --- a/tests/pm_backlight.c
> +++ b/tests/pm_backlight.c
> @@ -155,13 +155,56 @@ igt_main
> {
> struct context context = {0};
> int old;
> + igt_display_t display;
> + struct igt_fb fb;
>
> igt_skip_on_simulation();
>
> igt_fixture {
> + enum pipe pipe;
> + igt_output_t *output;
> + bool found = false;
> + char full_name[32] = {};
> + char *name;
> + drmModeModeInfo *mode;
> + igt_plane_t *primary;
> +
> /* Get the max value and skip the whole test if sysfs interface not available */
> igt_skip_on(backlight_read(&old, "brightness"));
> igt_assert(backlight_read(&context.max, "max_brightness") > -1);
> +
> + /*
> + * Backlight tests requires the output to be enabled,
> + * try to enable all.
> + */
> + kmstest_set_vt_graphics_mode();
> + igt_display_init(&display, drm_open_driver(DRIVER_INTEL));
> +
> + /* should be ../../cardX-$output */
> + igt_assert_lt(12, readlink(BACKLIGHT_PATH "/device", full_name, sizeof(full_name) - 1));
> + name = basename(full_name);
> +
> + for_each_pipe_with_valid_output(&display, pipe, output) {
> + if (strcmp(name + 6, output->name))
This string magic isn't all that clear here. I think it would have been
cleaner to iterate all connected outputs and look for the backlight
under each. But I can't be bothered to care that much so
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> + continue;
> +
> + found = true;
> + break;
> + }
> +
> + igt_assert_f(found, "Could not map \"%s\" to output (%s?)\n", name, name + 6);
> +
> + igt_output_set_pipe(output, pipe);
> + mode = igt_output_get_mode(output);
> +
> + igt_create_pattern_fb(display.drm_fd,
> + mode->hdisplay, mode->vdisplay,
> + DRM_FORMAT_XRGB8888,
> + LOCAL_DRM_FORMAT_MOD_NONE, &fb);
> + primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
> + igt_plane_set_fb(primary, &fb);
> +
> + igt_display_commit2(&display, display.is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY);
> }
>
> igt_subtest("basic-brightness")
> @@ -174,5 +217,9 @@ igt_main
> igt_fixture {
> /* Restore old brightness */
> backlight_write(old, "brightness");
> +
> + igt_display_fini(&display);
> + igt_remove_fb(display.drm_fd, &fb);
> + close(display.drm_fd);
> }
> }
> --
> 2.14.1
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2017-10-12 12:29 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-10 16:04 [PATCH i-g-t 0/2] tests/BAT: Reduce reliance on fbcon Maarten Lankhorst
2017-10-10 16:04 ` [PATCH i-g-t 1/2] tests/debugfs_test: Try to light all outputs to increase chances of finding fails Maarten Lankhorst
2017-10-10 20:12 ` Chris Wilson
2017-10-11 10:28 ` Maarten Lankhorst
2017-10-25 1:36 ` Pandiyan, Dhinakaran
2017-10-25 7:56 ` Maarten Lankhorst
2017-10-12 10:01 ` [PATCH i-g-t v2 1/2] tests/debugfs_test: Try to light all outputs to increase chances of finding fails, v2 Maarten Lankhorst
2017-10-12 10:47 ` [PATCH i-g-t v3 1/2] tests/debugfs_test: Try to light all outputs to increase chances of finding fails, v3 Maarten Lankhorst
2017-10-12 14:05 ` Chris Wilson
2017-10-10 16:04 ` [PATCH i-g-t 2/2] tests/pm_backlight: Enable all possible outputs to allow tests to succeed Maarten Lankhorst
2017-10-10 16:14 ` Ville Syrjälä
2017-10-10 16:23 ` Maarten Lankhorst
2017-10-11 9:24 ` Ville Syrjälä
2017-10-11 9:25 ` [PATCH i-g-t] tests/pm_backlight: Enable connected output to allow tests to succeed, v2 Maarten Lankhorst
2017-10-12 10:00 ` [PATCH i-g-t v2 2/2] tests/pm_backlight: Enable connected output to allow tests to succeed, v3 Maarten Lankhorst
2017-10-12 10:55 ` [PATCH i-g-t v3 2/2] tests/pm_backlight: Enable connected output to allow tests to succeed, v4 Maarten Lankhorst
2017-10-12 12:29 ` Ville Syrjälä [this message]
2017-10-10 19:26 ` ✗ Fi.CI.BAT: warning for tests/BAT: Reduce reliance on fbcon Patchwork
2017-10-11 13:09 ` ✗ Fi.CI.BAT: warning for tests/BAT: Reduce reliance on fbcon. (rev2) Patchwork
2017-10-12 10:28 ` ✗ Fi.CI.BAT: failure for tests/BAT: Reduce reliance on fbcon. (rev4) Patchwork
2017-10-12 11:29 ` ✓ Fi.CI.BAT: success for tests/BAT: Reduce reliance on fbcon. (rev6) Patchwork
2017-10-12 12:56 ` ✗ Fi.CI.IGT: warning " 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=20171012122919.GG10981@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=maarten.lankhorst@linux.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).