[Intel-gfx] [PATCH 10/22] flip_test: factor out the final state check
Imre Deak
imre.deak at intel.com
Tue Oct 16 16:34:44 CEST 2012
Needed by an upcoming patch where we want to make a final state check
for both the flip and vblank events.
No functional change.
Signed-off-by: Imre Deak <imre.deak at intel.com>
---
tests/flip_test.c | 29 +++++++++++++++++------------
1 file changed, 17 insertions(+), 12 deletions(-)
diff --git a/tests/flip_test.c b/tests/flip_test.c
index 8f925d0..9b7ac2b 100644
--- a/tests/flip_test.c
+++ b/tests/flip_test.c
@@ -404,6 +404,22 @@ fb_is_bound(struct test_output *o, int fb)
return mode.mode_valid && mode.fb_id == fb;
}
+static void check_final_state(struct test_output *o, unsigned int ellapsed)
+{
+ /* Verify we drop no frames, but only if it's not a TV encoder, since
+ * those use some funny fake timings behind userspace's back. */
+ if (o->flags & TEST_CHECK_TS && !analog_tv_connector(o)) {
+ int expected;
+
+ expected = ellapsed * o->mode.vrefresh / (1000 * 1000);
+ if (o->count < expected * 99/100) {
+ fprintf(stderr, "dropped frames, expected %d, counted %d, encoder type %d\n",
+ expected, o->count, o->encoder->encoder_type);
+ exit(3);
+ }
+ }
+}
+
static void wait_for_events(struct test_output *o)
{
drmEventContext evctx;
@@ -526,18 +542,7 @@ static void flip_mode(struct test_output *o, int crtc, int duration)
ellapsed = event_loop(o, duration);
- /* Verify we drop no frames, but only if it's not a TV encoder, since
- * those use some funny fake timings behind userspace's back. */
- if (o->flags & TEST_CHECK_TS && !analog_tv_connector(o)) {
- int expected;
-
- expected = ellapsed * o->mode.vrefresh / (1000 * 1000);
- if (o->count < expected * 99/100) {
- fprintf(stderr, "dropped frames, expected %d, counted %d, encoder type %d\n",
- expected, o->count, o->encoder->encoder_type);
- exit(3);
- }
- }
+ check_final_state(o, ellapsed);
fprintf(stdout, "\npage flipping on crtc %d, connector %d: PASSED\n",
crtc, o->id);
--
1.7.9.5
More information about the Intel-gfx
mailing list