[Intel-gfx] [PATCH i-g-t v3 26/33] tests/kms_rotation_crc: Add support for dynamic number of planes

Jordan Justen jordan.l.justen at intel.com
Tue Mar 28 23:08:02 UTC 2017


On 2017-03-28 15:19:51, Robert Foss wrote:
> Hi,
> 
> On 2017-03-28 06:06 PM, Jordan Justen wrote:
> > Robert,
> >
> > I think this patch got committed (with a slight change) in
> > 3e04c5197ff965a8cd050f9c3b5213abcf437a31.
> >
> > Unfortunately, I think that commit inadvertently included a binary
> > file 'tools/intel_bios_reader' as well. Can you remove this file?
> 
> That a pretty bad mistake. Would you just like to see a commit removing 
> this binary file? Or something more clever?
> 

There has been a release tagged with the commit, and besides I think
it's been far too long to consider anything except a new commit
removing it.

-Jordan

> >
> > On 2017-01-30 06:12:17, Robert Foss wrote:
> >> Add changes reflecting the new support for dynamic number of planes per pipe.
> >>
> >> Signed-off-by: Robert Foss <robert.foss at collabora.com>
> >> Reviewed-by: Mika Kahola <mika.kahola at intel.com>
> >> ---
> >>  tests/kms_rotation_crc.c | 63 ++++++++++++++++++++++++------------------------
> >>  1 file changed, 32 insertions(+), 31 deletions(-)
> >>
> >> diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c
> >> index cb0ac1eb..6769a89b 100644
> >> --- a/tests/kms_rotation_crc.c
> >> +++ b/tests/kms_rotation_crc.c
> >> @@ -97,17 +97,18 @@ static void commit_crtc(data_t *data, igt_output_t *output, igt_plane_t *plane)
> >>          * we create an fb covering the crtc and call commit
> >>          */
> >>
> >> -       primary = igt_output_get_plane(output, IGT_PLANE_PRIMARY);
> >> +       primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
> >>         igt_plane_set_fb(primary, &data->fb_modeset);
> >>         primary->rotation_changed = false;
> >>         igt_display_commit(display);
> >>
> >>         igt_plane_set_fb(plane, &data->fb);
> >>
> >> -       if (!plane->is_cursor)
> >> +       if (plane->type != DRM_PLANE_TYPE_CURSOR)
> >>                 igt_plane_set_position(plane, data->pos_x, data->pos_y);
> >>
> >> -       if (plane->is_primary || plane->is_cursor)
> >> +       if (plane->type == DRM_PLANE_TYPE_PRIMARY ||
> >> +           plane->type == DRM_PLANE_TYPE_CURSOR)
> >>                 commit = COMMIT_UNIVERSAL;
> >>
> >>         if (data->display.is_atomic)
> >> @@ -154,7 +155,7 @@ static void prepare_crtc(data_t *data, igt_output_t *output, enum pipe pipe,
> >>                 tiling = data->override_tiling ?
> >>                          data->override_tiling : LOCAL_I915_FORMAT_MOD_Y_TILED;
> >>                 w = h =  mode->vdisplay;
> >> -       } else if (plane->is_cursor) {
> >> +       } else if (plane->type == DRM_PLANE_TYPE_CURSOR) {
> >>                 pixel_format = data->override_fmt ?
> >>                                data->override_fmt : DRM_FORMAT_ARGB8888;
> >>                 w = h = 128;
> >> @@ -206,10 +207,10 @@ static void cleanup_crtc(data_t *data, igt_output_t *output, igt_plane_t *plane)
> >>                 igt_remove_fb(data->gfx_fd, &data->fb_flip);
> >>
> >>         /* XXX: see the note in prepare_crtc() */
> >> -       if (!plane->is_primary) {
> >> +       if (plane->type != DRM_PLANE_TYPE_PRIMARY) {
> >>                 igt_plane_t *primary;
> >>
> >> -               primary = igt_output_get_plane(output, IGT_PLANE_PRIMARY);
> >> +               primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
> >>                 igt_plane_set_fb(primary, NULL);
> >>         }
> >>
> >> @@ -236,7 +237,7 @@ static void wait_for_pageflip(int fd)
> >>         igt_assert(drmHandleEvent(fd, &evctx) == 0);
> >>  }
> >>
> >> -static void test_plane_rotation(data_t *data, enum igt_plane plane_type)
> >> +static void test_plane_rotation(data_t *data, int plane_type)
> >>  {
> >>         igt_display_t *display = &data->display;
> >>         igt_output_t *output;
> >> @@ -247,10 +248,10 @@ static void test_plane_rotation(data_t *data, enum igt_plane plane_type)
> >>         unsigned int flip_count;
> >>         int ret;
> >>
> >> -       if (plane_type == IGT_PLANE_PRIMARY || plane_type == IGT_PLANE_CURSOR)
> >> +       if (plane_type == DRM_PLANE_TYPE_PRIMARY || plane_type == DRM_PLANE_TYPE_CURSOR)
> >>                 commit = COMMIT_UNIVERSAL;
> >>
> >> -       if (plane_type == IGT_PLANE_CURSOR)
> >> +       if (plane_type == DRM_PLANE_TYPE_CURSOR)
> >>                 igt_require(display->has_cursor_plane);
> >>
> >>         if (data->display.is_atomic)
> >> @@ -261,7 +262,7 @@ static void test_plane_rotation(data_t *data, enum igt_plane plane_type)
> >>
> >>                 igt_output_set_pipe(output, pipe);
> >>
> >> -               plane = igt_output_get_plane(output, plane_type);
> >> +               plane = igt_output_get_plane_type(output, plane_type);
> >>                 igt_require(igt_plane_supports_rotation(plane));
> >>
> >>                 prepare_crtc(data, output, pipe, plane);
> >> @@ -321,7 +322,7 @@ static void test_plane_rotation(data_t *data, enum igt_plane plane_type)
> >>
> >>  static void test_plane_rotation_ytiled_obj(data_t *data,
> >>                                            igt_output_t *output,
> >> -                                          enum igt_plane plane_type)
> >> +                                          int plane_type)
> >>  {
> >>         igt_display_t *display = &data->display;
> >>         uint64_t tiling = LOCAL_I915_FORMAT_MOD_Y_TILED;
> >> @@ -335,13 +336,13 @@ static void test_plane_rotation_ytiled_obj(data_t *data,
> >>         uint32_t gem_handle;
> >>         int ret;
> >>
> >> -       plane = igt_output_get_plane(output, plane_type);
> >> +       plane = igt_output_get_plane_type(output, plane_type);
> >>         igt_require(igt_plane_supports_rotation(plane));
> >>
> >> -       if (plane_type == IGT_PLANE_PRIMARY || plane_type == IGT_PLANE_CURSOR)
> >> +       if (plane_type == DRM_PLANE_TYPE_PRIMARY || plane_type == DRM_PLANE_TYPE_CURSOR)
> >>                 commit = COMMIT_UNIVERSAL;
> >>
> >> -       if (plane_type == IGT_PLANE_CURSOR)
> >> +       if (plane_type == DRM_PLANE_TYPE_CURSOR)
> >>                 igt_require(display->has_cursor_plane);
> >>
> >>         if (data->display.is_atomic)
> >> @@ -388,7 +389,7 @@ static void test_plane_rotation_ytiled_obj(data_t *data,
> >>
> >>  static void test_plane_rotation_exhaust_fences(data_t *data,
> >>                                                igt_output_t *output,
> >> -                                              enum igt_plane plane_type)
> >> +                                              int plane_type)
> >>  {
> >>         igt_display_t *display = &data->display;
> >>         uint64_t tiling = LOCAL_I915_FORMAT_MOD_Y_TILED;
> >> @@ -404,13 +405,13 @@ static void test_plane_rotation_exhaust_fences(data_t *data,
> >>         uint64_t total_aperture_size, total_fbs_size;
> >>         int i, ret;
> >>
> >> -       plane = igt_output_get_plane(output, plane_type);
> >> +       plane = igt_output_get_plane_type(output, plane_type);
> >>         igt_require(igt_plane_supports_rotation(plane));
> >>
> >> -       if (plane_type == IGT_PLANE_PRIMARY || plane_type == IGT_PLANE_CURSOR)
> >> +       if (plane_type == DRM_PLANE_TYPE_PRIMARY || plane_type == DRM_PLANE_TYPE_CURSOR)
> >>                 commit = COMMIT_UNIVERSAL;
> >>
> >> -       if (plane_type == IGT_PLANE_CURSOR)
> >> +       if (plane_type == DRM_PLANE_TYPE_CURSOR)
> >>                 igt_require(display->has_cursor_plane);
> >>
> >>         if (data->display.is_atomic)
> >> @@ -519,41 +520,41 @@ igt_main
> >>         }
> >>         igt_subtest_f("primary-rotation-180") {
> >>                 data.rotation = IGT_ROTATION_180;
> >> -               test_plane_rotation(&data, IGT_PLANE_PRIMARY);
> >> +               test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY);
> >>         }
> >>
> >>         igt_subtest_f("sprite-rotation-180") {
> >>                 data.rotation = IGT_ROTATION_180;
> >> -               test_plane_rotation(&data, IGT_PLANE_2);
> >> +               test_plane_rotation(&data, DRM_PLANE_TYPE_OVERLAY);
> >>         }
> >>
> >>         igt_subtest_f("cursor-rotation-180") {
> >>                 data.rotation = IGT_ROTATION_180;
> >> -               test_plane_rotation(&data, IGT_PLANE_CURSOR);
> >> +               test_plane_rotation(&data, DRM_PLANE_TYPE_CURSOR);
> >>         }
> >>
> >>         igt_subtest_f("primary-rotation-90") {
> >>                 igt_require(gen >= 9);
> >>                 data.rotation = IGT_ROTATION_90;
> >> -               test_plane_rotation(&data, IGT_PLANE_PRIMARY);
> >> +               test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY);
> >>         }
> >>
> >>         igt_subtest_f("primary-rotation-270") {
> >>                 igt_require(gen >= 9);
> >>                 data.rotation = IGT_ROTATION_270;
> >> -               test_plane_rotation(&data, IGT_PLANE_PRIMARY);
> >> +               test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY);
> >>         }
> >>
> >>         igt_subtest_f("sprite-rotation-90") {
> >>                 igt_require(gen >= 9);
> >>                 data.rotation = IGT_ROTATION_90;
> >> -               test_plane_rotation(&data, IGT_PLANE_2);
> >> +               test_plane_rotation(&data, DRM_PLANE_TYPE_OVERLAY);
> >>         }
> >>
> >>         igt_subtest_f("sprite-rotation-270") {
> >>                 igt_require(gen >= 9);
> >>                 data.rotation = IGT_ROTATION_270;
> >> -               test_plane_rotation(&data, IGT_PLANE_2);
> >> +               test_plane_rotation(&data, DRM_PLANE_TYPE_OVERLAY);
> >>         }
> >>
> >>         igt_subtest_f("sprite-rotation-90-pos-100-0") {
> >> @@ -561,7 +562,7 @@ igt_main
> >>                 data.rotation = IGT_ROTATION_90;
> >>                 data.pos_x = 100,
> >>                 data.pos_y = 0;
> >> -               test_plane_rotation(&data, IGT_PLANE_2);
> >> +               test_plane_rotation(&data, DRM_PLANE_TYPE_OVERLAY);
> >>         }
> >>
> >>         igt_subtest_f("bad-pixel-format") {
> >> @@ -570,7 +571,7 @@ igt_main
> >>                 data.pos_y = 0;
> >>                 data.rotation = IGT_ROTATION_90;
> >>                 data.override_fmt = DRM_FORMAT_RGB565;
> >> -               test_plane_rotation(&data, IGT_PLANE_PRIMARY);
> >> +               test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY);
> >>         }
> >>
> >>         igt_subtest_f("bad-tiling") {
> >> @@ -578,7 +579,7 @@ igt_main
> >>                 data.override_fmt = 0;
> >>                 data.rotation = IGT_ROTATION_90;
> >>                 data.override_tiling = LOCAL_DRM_FORMAT_MOD_NONE;
> >> -               test_plane_rotation(&data, IGT_PLANE_PRIMARY);
> >> +               test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY);
> >>         }
> >>
> >>         igt_subtest_f("primary-rotation-90-flip-stress") {
> >> @@ -586,7 +587,7 @@ igt_main
> >>                 data.override_tiling = 0;
> >>                 data.flip_stress = 60;
> >>                 data.rotation = IGT_ROTATION_90;
> >> -               test_plane_rotation(&data, IGT_PLANE_PRIMARY);
> >> +               test_plane_rotation(&data, DRM_PLANE_TYPE_PRIMARY);
> >>         }
> >>
> >>         igt_subtest_f("primary-rotation-90-Y-tiled") {
> >> @@ -600,7 +601,7 @@ igt_main
> >>                 for_each_pipe_with_valid_output(&data.display, pipe, output) {
> >>                         igt_output_set_pipe(output, pipe);
> >>
> >> -                       test_plane_rotation_ytiled_obj(&data, output, IGT_PLANE_PRIMARY);
> >> +                       test_plane_rotation_ytiled_obj(&data, output, DRM_PLANE_TYPE_PRIMARY);
> >>
> >>                         valid_tests++;
> >>                         break;
> >> @@ -619,7 +620,7 @@ igt_main
> >>                 for_each_pipe_with_valid_output(&data.display, pipe, output) {
> >>                         igt_output_set_pipe(output, pipe);
> >>
> >> -                       test_plane_rotation_exhaust_fences(&data, output, IGT_PLANE_PRIMARY);
> >> +                       test_plane_rotation_exhaust_fences(&data, output, DRM_PLANE_TYPE_PRIMARY);
> >>
> >>                         valid_tests++;
> >>                         break;
> >> --
> >> 2.11.0.453.g787f75f05
> >>
> >> _______________________________________________
> >> Intel-gfx mailing list
> >> Intel-gfx at lists.freedesktop.org
> >> https://lists.freedesktop.org/mailman/listinfo/intel-gfx


More information about the Intel-gfx mailing list