diff options
Diffstat (limited to 'Documentation/media/uapi/v4l/dev-touch.rst')
| -rw-r--r-- | Documentation/media/uapi/v4l/dev-touch.rst | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/Documentation/media/uapi/v4l/dev-touch.rst b/Documentation/media/uapi/v4l/dev-touch.rst new file mode 100644 index 000000000000..98797f255ce0 --- /dev/null +++ b/Documentation/media/uapi/v4l/dev-touch.rst | |||
| @@ -0,0 +1,56 @@ | |||
| 1 | .. -*- coding: utf-8; mode: rst -*- | ||
| 2 | |||
| 3 | .. _touch: | ||
| 4 | |||
| 5 | ************* | ||
| 6 | Touch Devices | ||
| 7 | ************* | ||
| 8 | |||
| 9 | Touch devices are accessed through character device special files named | ||
| 10 | ``/dev/v4l-touch0`` to ``/dev/v4l-touch255`` with major number 81 and | ||
| 11 | dynamically allocated minor numbers 0 to 255. | ||
| 12 | |||
| 13 | Overview | ||
| 14 | ======== | ||
| 15 | |||
| 16 | Sensors may be Optical, or Projected Capacitive touch (PCT). | ||
| 17 | |||
| 18 | Processing is required to analyse the raw data and produce input events. In | ||
| 19 | some systems, this may be performed on the ASIC and the raw data is purely a | ||
| 20 | side-channel for diagnostics or tuning. In other systems, the ASIC is a simple | ||
| 21 | analogue front end device which delivers touch data at high rate, and any touch | ||
| 22 | processing must be done on the host. | ||
| 23 | |||
| 24 | For capacitive touch sensing, the touchscreen is composed of an array of | ||
| 25 | horizontal and vertical conductors (alternatively called rows/columns, X/Y | ||
| 26 | lines, or tx/rx). Mutual Capacitance measured is at the nodes where the | ||
| 27 | conductors cross. Alternatively, Self Capacitance measures the signal from each | ||
| 28 | column and row independently. | ||
| 29 | |||
| 30 | A touch input may be determined by comparing the raw capacitance measurement to | ||
| 31 | a no-touch reference (or "baseline") measurement: | ||
| 32 | |||
| 33 | Delta = Raw - Reference | ||
| 34 | |||
| 35 | The reference measurement takes account of variations in the capacitance across | ||
| 36 | the touch sensor matrix, for example manufacturing irregularities, | ||
| 37 | environmental or edge effects. | ||
| 38 | |||
| 39 | Querying Capabilities | ||
| 40 | ===================== | ||
| 41 | |||
| 42 | Devices supporting the touch interface set the ``V4L2_CAP_VIDEO_CAPTURE`` flag | ||
| 43 | and the ``V4L2_CAP_TOUCH`` flag in the ``capabilities`` field of | ||
| 44 | :c:type:`v4l2_capability` returned by the | ||
| 45 | :ref:`VIDIOC_QUERYCAP` ioctl. | ||
| 46 | |||
| 47 | At least one of the read/write or streaming I/O methods must be | ||
| 48 | supported. | ||
| 49 | |||
| 50 | The formats supported by touch devices are documented in | ||
| 51 | :ref:`Touch Formats <tch-formats>`. | ||
| 52 | |||
| 53 | Data Format Negotiation | ||
| 54 | ======================= | ||
| 55 | |||
| 56 | A touch device may support any I/O method. | ||
