summaryrefslogtreecommitdiff
path: root/tests/kms_rotation_crc.c
diff options
context:
space:
mode:
authorDamien Lespiau <damien.lespiau@intel.com>2014-07-08 18:06:44 +0100
committerDamien Lespiau <damien.lespiau@intel.com>2014-07-11 15:12:22 +0100
commit063d22ecea7f3ffedb29a037f7b29694f22012ce (patch)
treebd154197459ff9e1198045db68e8ba9a3a483c0d /tests/kms_rotation_crc.c
parent0b3a30ee5a2668897e14c99dac8ba0b2ed7bb94d (diff)
kms_rotation_crc: Just store the igt_plane_t in data
Now that we're always using an igt_plane_t, we can get rid of ->type to use ->directly without those switch() or if()/else Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Diffstat (limited to 'tests/kms_rotation_crc.c')
-rw-r--r--tests/kms_rotation_crc.c46
1 files changed, 11 insertions, 35 deletions
diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c
index 026c333c..966fd120 100644
--- a/tests/kms_rotation_crc.c
+++ b/tests/kms_rotation_crc.c
@@ -57,7 +57,7 @@ typedef struct {
int gfx_fd;
igt_display_t display;
igt_output_t *output;
- int type;
+ igt_plane_t *plane;
int pipe;
struct igt_fb fb;
igt_crc_t ref_crc;
@@ -96,7 +96,6 @@ static bool prepare_crtc(data_t *data)
drmModeModeInfo *mode;
igt_display_t *display = &data->display;
igt_output_t *output = data->output;
- igt_plane_t *plane;
int fb_id;
igt_output_set_pipe(output, data->pipe);
@@ -105,19 +104,6 @@ static bool prepare_crtc(data_t *data)
if (!data->output->valid)
return false;
- switch (data->type) {
- case DRM_PLANE_TYPE_OVERLAY:
- igt_info("Sprite plane\n");
- plane = igt_output_get_plane(output, IGT_PLANE_2);
- break;
- case DRM_PLANE_TYPE_PRIMARY:
- igt_info("Primary plane\n");
- plane = igt_output_get_plane(output, IGT_PLANE_PRIMARY);
- break;
- default:
- return false;
- }
-
/* create the pipe_crc object for this pipe */
if (data->pipe_crc)
igt_pipe_crc_free(data->pipe_crc);
@@ -141,7 +127,7 @@ static bool prepare_crtc(data_t *data)
paint_squares(data, &data->fb, mode, DRM_ROTATE_180);
- igt_plane_set_fb(plane, &data->fb);
+ igt_plane_set_fb(data->plane, &data->fb);
igt_display_commit(display);
/* Collect reference crc */
@@ -149,7 +135,7 @@ static bool prepare_crtc(data_t *data)
paint_squares(data, &data->fb, mode, DRM_ROTATE_0);
- igt_plane_set_fb(plane, &data->fb);
+ igt_plane_set_fb(data->plane, &data->fb);
igt_display_commit(display);
return true;
@@ -194,20 +180,14 @@ static int set_plane_property(data_t *data, int plane_id, const char *prop_name,
static void cleanup_crtc(data_t *data, igt_output_t *output)
{
igt_display_t *display = &data->display;
- igt_plane_t *plane = NULL;
igt_pipe_crc_free(data->pipe_crc);
data->pipe_crc = NULL;
igt_remove_fb(data->gfx_fd, &data->fb);
- if (data->type == DRM_PLANE_TYPE_PRIMARY)
- plane = igt_output_get_plane(output, IGT_PLANE_PRIMARY);
- else if (data->type == DRM_PLANE_TYPE_OVERLAY)
- plane = igt_output_get_plane(output, IGT_PLANE_2);
-
- if (plane != NULL)
- igt_plane_set_fb(plane, NULL);
+ if (data->plane != NULL)
+ igt_plane_set_fb(data->plane, NULL);
igt_output_set_pipe(output, PIPE_ANY);
igt_display_commit(display);
@@ -217,7 +197,6 @@ static void test_sprite_rotation(data_t *data)
{
igt_display_t *display = &data->display;
igt_output_t *output;
- igt_plane_t *sprite;
igt_crc_t crc_output;
int p;
int plane_id;
@@ -228,18 +207,17 @@ static void test_sprite_rotation(data_t *data)
data->output = output;
for (p = 0; p < igt_display_get_n_pipes(display); p++) {
data->pipe = p;
- data->type = 0;
data->rotate = DRM_ROTATE_180;
if (!prepare_crtc(data))
continue;
sleep(2);
- sprite = igt_output_get_plane(output, IGT_PLANE_2);
+ data->plane = igt_output_get_plane(output, IGT_PLANE_2);
- igt_require(igt_plane_supports_rotation(sprite));
+ igt_require(igt_plane_supports_rotation(data->plane));
- plane_id = sprite->drm_plane->plane_id;
+ plane_id = data->plane->drm_plane->plane_id;
if (plane_id != 0) {
igt_info("Setting rotation property for plane:%d\n", plane_id);
ret = set_plane_property(data, plane_id, "rotation", BIT(data->rotate), &crc_output);
@@ -262,7 +240,6 @@ static void test_primary_rotation(data_t *data)
{
igt_display_t *display = &data->display;
igt_output_t *output;
- igt_plane_t *primary;
int p;
int plane_id;
int ret;
@@ -275,18 +252,17 @@ static void test_primary_rotation(data_t *data)
data->output = output;
for (p = 0; p < igt_display_get_n_pipes(display); p++) {
data->pipe = p;
- data->type = 1;
data->rotate = DRM_ROTATE_180;
if (!prepare_crtc(data))
continue;
sleep(2);
- primary = igt_output_get_plane(output, IGT_PLANE_PRIMARY);
+ data->plane = igt_output_get_plane(output, IGT_PLANE_PRIMARY);
- igt_require(igt_plane_supports_rotation(primary));
+ igt_require(igt_plane_supports_rotation(data->plane));
- plane_id = primary->drm_plane->plane_id;
+ plane_id = data->plane->drm_plane->plane_id;
if (plane_id != 0) {
igt_info("Setting rotation property for plane:%d\n", plane_id);
ret = set_plane_property(data, plane_id, "rotation", BIT(data->rotate), &crc_output);