diff options
Diffstat (limited to 'Documentation/input')
-rw-r--r-- | Documentation/input/multi-touch-protocol.txt | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/Documentation/input/multi-touch-protocol.txt b/Documentation/input/multi-touch-protocol.txt index 71536e78406f..543101c5bf26 100644 --- a/Documentation/input/multi-touch-protocol.txt +++ b/Documentation/input/multi-touch-protocol.txt | |||
@@ -65,6 +65,20 @@ the full state of each initiated contact has to reside in the receiving | |||
65 | end. Upon receiving an MT event, one simply updates the appropriate | 65 | end. Upon receiving an MT event, one simply updates the appropriate |
66 | attribute of the current slot. | 66 | attribute of the current slot. |
67 | 67 | ||
68 | Some devices identify and/or track more contacts than they can report to the | ||
69 | driver. A driver for such a device should associate one type B slot with each | ||
70 | contact that is reported by the hardware. Whenever the identity of the | ||
71 | contact associated with a slot changes, the driver should invalidate that | ||
72 | slot by changing its ABS_MT_TRACKING_ID. If the hardware signals that it is | ||
73 | tracking more contacts than it is currently reporting, the driver should use | ||
74 | a BTN_TOOL_*TAP event to inform userspace of the total number of contacts | ||
75 | being tracked by the hardware at that moment. The driver should do this by | ||
76 | explicitly sending the corresponding BTN_TOOL_*TAP event and setting | ||
77 | use_count to false when calling input_mt_report_pointer_emulation(). | ||
78 | The driver should only advertise as many slots as the hardware can report. | ||
79 | Userspace can detect that a driver can report more total contacts than slots | ||
80 | by noting that the largest supported BTN_TOOL_*TAP event is larger than the | ||
81 | total number of type B slots reported in the absinfo for the ABS_MT_SLOT axis. | ||
68 | 82 | ||
69 | Protocol Example A | 83 | Protocol Example A |
70 | ------------------ | 84 | ------------------ |