Thread (23 messages) 23 messages, 4 authors, 2016-06-27

Re: [PATCH v5 1/9] [media] v4l2-core: Add support for touch devices

From: Nick Dyer <hidden>
Date: 2016-06-24 13:48:34
Also in: linux-media, lkml


On 22/06/2016 23:08, Nick Dyer wrote:
Some touch controllers send out touch data in a similar way to a
greyscale frame grabber.

Use a new device prefix v4l-touch for these devices, to stop generic
capture software from treating them as webcams.

Add formats:
- V4L2_TCH_FMT_DELTA_TD16 for signed 16-bit touch deltas
- V4L2_TCH_FMT_DELTA_TD08 for signed 16-bit touch deltas
- V4L2_TCH_FMT_TU16 for unsigned 16-bit touch data
- V4L2_TCH_FMT_TU08 for unsigned 8-bit touch data

This support will be used by:
* Atmel maXTouch (atmel_mxt_ts)
* Synaptics RMI4.
* sur40

Signed-off-by: Nick Dyer <redacted>
---
[...]
quoted hunk ↗ jump to hunk
diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h
index 8f95191..7e19782 100644
--- a/include/uapi/linux/videodev2.h
+++ b/include/uapi/linux/videodev2.h
@@ -143,6 +143,7 @@ enum v4l2_buf_type {
 	V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE  = 10,
 	V4L2_BUF_TYPE_SDR_CAPTURE          = 11,
 	V4L2_BUF_TYPE_SDR_OUTPUT           = 12,
+	V4L2_BUF_TYPE_TOUCH_CAPTURE        = 13,
 	/* Deprecated, do not use */
 	V4L2_BUF_TYPE_PRIVATE              = 0x80,
 };
@@ -440,6 +441,8 @@ struct v4l2_capability {
 #define V4L2_CAP_ASYNCIO                0x02000000  /* async I/O */
 #define V4L2_CAP_STREAMING              0x04000000  /* streaming I/O ioctls */
 
+#define V4L2_CAP_TOUCH			0x00100000  /* Is a touch device */
Apologies, this should have been
#define V4L2_CAP_TOUCH                 0x10000000

You will find my changes to v4l2-compliance to support these changes here:
https://github.com/ndyer/v4l-utils

I've tested the atmel_mxt_ts version of this with v4l2-compliance on Pixel 2.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help