public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
From: robert.foss@collabora.com
To: daniel.vetter@ffwll.ch, daniel.stone@collabora.com,
	marius.c.vlad@intel.com, ville.syrjala@linux.intel.com,
	jani.nikula@intel.com, chris@chris-wilson.co.uk
Cc: intel-gfx@lists.freedesktop.org
Subject: [PATCH i-g-t v6 4/7] lib/igt_kms: Added kmstest_get_vbl_flag to igt_kms.
Date: Wed, 18 May 2016 20:07:06 -0400	[thread overview]
Message-ID: <1463616429-13079-5-git-send-email-robert.foss@collabora.com> (raw)
In-Reply-To: <1463616429-13079-1-git-send-email-robert.foss@collabora.com>

From: Robert Foss <robert.foss@collabora.com>

Added function kmstest_get_vbl_flag() to igt_kms.
This function formats a pipe_id into the format
expected by DRM while processing DRM_IOCTL_WAIT_VBLANK.

Signed-off-by: Robert Foss <robert.foss@collabora.com>
---
 lib/igt_kms.c | 19 +++++++++++++++++++
 lib/igt_kms.h |  1 +
 2 files changed, 20 insertions(+)

diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index 1113f57..0e781ef 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -2562,3 +2562,22 @@ void igt_reset_connectors(void)
 		close(fd);
 	}
 }
+
+/**
+ * kmstest_get_vbl_flag:
+ *
+ * Convert a pipe id into the flag representation
+ * expected in DRM while processing DRM_IOCTL_WAIT_VBLANK.
+ */
+uint32_t kmstest_get_vbl_flag(uint32_t pipe_id)
+{
+	if (pipe_id == 0)
+		return 0;
+	else if (pipe_id == 1)
+		return _DRM_VBLANK_SECONDARY;
+	else {
+		uint32_t pipe_flag = pipe_id << 1;
+		igt_assert(!(pipe_flag & ~DRM_VBLANK_HIGH_CRTC_MASK));
+		return pipe_flag;
+	}
+}
diff --git a/lib/igt_kms.h b/lib/igt_kms.h
index b8f6dd8..7359d26 100644
--- a/lib/igt_kms.h
+++ b/lib/igt_kms.h
@@ -380,6 +380,7 @@ void igt_wait_for_vblank(int drm_fd, enum pipe pipe);
 
 void igt_enable_connectors(void);
 void igt_reset_connectors(void);
+uint32_t kmstest_get_vbl_flag(uint32_t pipe_id);
 
 #define EDID_LENGTH 128
 const unsigned char* igt_kms_get_base_edid(void);
-- 
2.7.4

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  parent reply	other threads:[~2016-05-19  0:07 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-19  0:07 [PATCH i-g-t v6 0/7] kms_flip_event_leak and kms_vblank fixes for VC4 robert.foss
2016-05-19  0:07 ` [PATCH i-g-t v6 1/7] lib/igt_kms: Add support for up to 10 planes robert.foss
2016-05-19  0:07 ` [PATCH i-g-t v6 2/7] lib/igt_kms: Fix plane counting in igt_display_init robert.foss
2016-05-19  0:07 ` [PATCH i-g-t v6 3/7] lib/igt_kms: Switch to verbose assert robert.foss
2016-05-19  0:07 ` robert.foss [this message]
2016-05-19  0:07 ` [PATCH i-g-t v6 5/7] kms_vblank: Switch from using crtc0 statically to explicitly setting mode robert.foss
2016-05-19  0:07 ` [PATCH i-g-t v6 6/7] igt_kms: Change igt_wait_for_vblank to use helper function robert.foss
2016-05-19  0:07 ` [PATCH i-g-t v6 7/7] kms_flip: Change __wait_for_vblank " robert.foss

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=1463616429-13079-5-git-send-email-robert.foss@collabora.com \
    --to=robert.foss@collabora.com \
    --cc=chris@chris-wilson.co.uk \
    --cc=daniel.stone@collabora.com \
    --cc=daniel.vetter@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=jani.nikula@intel.com \
    --cc=marius.c.vlad@intel.com \
    --cc=ville.syrjala@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