Revert "clients: teach simple-dmabuf-v4l to deal with flipped input"

This reverts commit 0fee977c46423e496a6eda6418c31bfe09a1f27b.

This commit introduces a requirement on v4l2_query_ext_ctrl and
VIDIOC_QUERY_EXT_CTRL, which were introduced in kernel 3.17. Some Ubuntu
LTS releases ship with much older kernels (and, significantly, UAPI),
which don't have these.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Acked-by: Pekka Paalanen <pekka.paalanen@collabora.com>
Acked-by: Derek Foreman <derekf@osg.samsung.com>
diff --git a/clients/simple-dmabuf-v4l.c b/clients/simple-dmabuf-v4l.c
index 6f41b2a..af25d0e 100644
--- a/clients/simple-dmabuf-v4l.c
+++ b/clients/simple-dmabuf-v4l.c
@@ -351,67 +351,21 @@
 	create_failed
 };
 
-static bool
-check_v4l2_control_bool(const int fd,
-                        const struct v4l2_query_ext_ctrl *qectrl,
-                        const char *control_name,
-                        const int expected_value)
-{
-	struct v4l2_control ctrl;
-
-	memset(&ctrl, 0, sizeof(ctrl));
-	ctrl.id = qectrl->id;
-
-	if (qectrl->flags & V4L2_CTRL_FLAG_DISABLED)
-		return false;
-
-	if (!(qectrl->type == V4L2_CTRL_TYPE_BOOLEAN))
-		return false;
-
-	if (strcmp(qectrl->name, control_name))
-		return false;
-
-	/* with the early-outs out of the way, do the actual check */
-	if (xioctl(fd, VIDIOC_G_CTRL, &ctrl))
-		return false;
-
-	if (ctrl.value != expected_value)
-		return false;
-
-	return true;
-}
-
 static void
 create_dmabuf_buffer(struct display *display, struct buffer *buffer)
 {
 	struct zwp_linux_buffer_params_v1 *params;
 	uint64_t modifier;
-	uint32_t lbp_flags;
+	uint32_t flags;
 	unsigned i;
-	struct v4l2_query_ext_ctrl qectrl;
-	const unsigned int v4l2_qec_flags =
-                           V4L2_CTRL_FLAG_NEXT_CTRL | V4L2_CTRL_FLAG_NEXT_COMPOUND;
-	const char *vflip_ctrl = "Vertical Flip";
-	const char *hflip_ctrl = "Horizontal Flip";
 
 	modifier = 0;
-	lbp_flags = 0;
+	flags = 0;
 
-	/* handle relevant v4l2 controls */
-	memset(&qectrl, 0, sizeof(qectrl));
-	qectrl.id |= v4l2_qec_flags;
-	while (!xioctl(display->v4l_fd, VIDIOC_QUERY_EXT_CTRL, &qectrl)) {
-		if (check_v4l2_control_bool(display->v4l_fd, &qectrl,
-                                            vflip_ctrl, 0x1)) {
-			lbp_flags = ZWP_LINUX_BUFFER_PARAMS_V1_FLAGS_Y_INVERT;
-			printf ("\"%s\" control is set, inverting Y\n", vflip_ctrl);
-		} else if (check_v4l2_control_bool(display->v4l_fd, &qectrl,
-                                                   hflip_ctrl, 0x1)) {
-			printf ("\"%s\" control is set, but dmabuf output cannot"
-                                "be flipped horizontally\n", hflip_ctrl);
-		}
-		qectrl.id |= v4l2_qec_flags;
-	}
+	/* XXX: apparently some webcams may actually provide y-inverted images,
+	 * in which case we should set
+	 * flags = ZWP_LINUX_BUFFER_PARAMS_V1_FLAGS_Y_INVERT
+	 */
 
 	params = zwp_linux_dmabuf_v1_create_params(display->dmabuf);
 	for (i = 0; i < display->format.num_planes; ++i)
@@ -428,7 +382,7 @@
 	                                  display->format.width,
 	                                  display->format.height,
 	                                  display->drm_format,
-	                                  lbp_flags);
+	                                  flags);
 }
 
 static int