compositor-drm: handle vblanks on secondary crtc

Signed-off-by: Rob Clark <rob@ti.com>
diff --git a/src/compositor-drm.c b/src/compositor-drm.c
index cde6d5d..e3cf134 100644
--- a/src/compositor-drm.c
+++ b/src/compositor-drm.c
@@ -116,6 +116,7 @@
 
 	char *name;
 	uint32_t crtc_id;
+	int pipe;
 	uint32_t connector_id;
 	drmModeCrtcPtr original_crtc;
 
@@ -407,6 +408,9 @@
 			weston_log("setplane failed: %d: %s\n",
 				ret, strerror(errno));
 
+		if (output->pipe > 0)
+			vbl.request.type |= DRM_VBLANK_SECONDARY;
+
 		/*
 		 * Queue a vblank signal so we know when the surface
 		 * becomes active on the display or has been replaced.
@@ -1365,6 +1369,7 @@
 	output->name = strdup(name);
 
 	output->crtc_id = resources->crtcs[i];
+	output->pipe = i;
 	ec->crtc_allocator |= (1 << output->crtc_id);
 	output->connector_id = connector->connector_id;
 	ec->connector_allocator |= (1 << output->connector_id);