diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-21 15:59:04 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-21 15:59:04 -0500 |
commit | 1acd2de5facd7fbea499aea64a3a3d0ec7bb9b51 (patch) | |
tree | 21e5aed9925f3171d2c8c472193b1a5b635d8fdd /Documentation | |
parent | b5ccb078c806f4804aaf85bb59faa9b6fedf85a7 (diff) | |
parent | 4c971aa78314253cce914ed29e3d90df3326d646 (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
Pull more input updates from Dmitry Torokhov:
"The second round of updates for the input subsystem.
Updates to ALPS an bfin_roraty drivers and a couple oother fixups"
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
Input: psmouse - use IS_ENABLED instead of homegrown code
Input: bfin_rotary - introduce open and close methods
Input: bfin_rotary - convert to use managed resources
Input: bfin_rotary - use generic IO functions
Input: bfin_rotary - move pin lists into into platform data
Input: bfin_rotary - move platform header to linux/platform_data
Input: bfin_rotary - mark suspend and resume code as __maybe_unused
Input: bfin_rotary - fix potential oops in interrupt handler
Input: ALPS - move v7 packet info to Documentation and v6 packet info
Input: ALPS - fix confusing comment in protocol data
Input: ALPS - do not mix trackstick and external PS/2 mouse data
Input: ALPS - fix trackstick detection on some Dell Latitudes
Input: ALPS - consolidate setting protocol parameters
Input: ALPS - split protocol data from model info
Input: ALPS - make Rushmore a separate protocol
Input: ALPS - renumber protocol numbers
Input: adi - remove an unnecessary check
Input: pxa27x_keypad - remove an unneeded NULL check
Input: soc_button_array - use "Windows" key for "Home"
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/input/alps.txt | 68 |
1 files changed, 66 insertions, 2 deletions
diff --git a/Documentation/input/alps.txt b/Documentation/input/alps.txt index 90bca6f988e1..a63e5e013a8c 100644 --- a/Documentation/input/alps.txt +++ b/Documentation/input/alps.txt | |||
@@ -3,8 +3,8 @@ ALPS Touchpad Protocol | |||
3 | 3 | ||
4 | Introduction | 4 | Introduction |
5 | ------------ | 5 | ------------ |
6 | Currently the ALPS touchpad driver supports five protocol versions in use by | 6 | Currently the ALPS touchpad driver supports seven protocol versions in use by |
7 | ALPS touchpads, called versions 1, 2, 3, 4 and 5. | 7 | ALPS touchpads, called versions 1, 2, 3, 4, 5, 6 and 7. |
8 | 8 | ||
9 | Since roughly mid-2010 several new ALPS touchpads have been released and | 9 | Since roughly mid-2010 several new ALPS touchpads have been released and |
10 | integrated into a variety of laptops and netbooks. These new touchpads | 10 | integrated into a variety of laptops and netbooks. These new touchpads |
@@ -240,3 +240,67 @@ For mt, the format is: | |||
240 | byte 3: 0 x23 x22 x21 x20 x19 x18 x17 | 240 | byte 3: 0 x23 x22 x21 x20 x19 x18 x17 |
241 | byte 4: 0 x9 x8 x7 x6 x5 x4 x3 | 241 | byte 4: 0 x9 x8 x7 x6 x5 x4 x3 |
242 | byte 5: 0 x16 x15 x14 x13 x12 x11 x10 | 242 | byte 5: 0 x16 x15 x14 x13 x12 x11 x10 |
243 | |||
244 | ALPS Absolute Mode - Protocol Version 6 | ||
245 | --------------------------------------- | ||
246 | |||
247 | For trackstick packet, the format is: | ||
248 | |||
249 | byte 0: 1 1 1 1 1 1 1 1 | ||
250 | byte 1: 0 X6 X5 X4 X3 X2 X1 X0 | ||
251 | byte 2: 0 Y6 Y5 Y4 Y3 Y2 Y1 Y0 | ||
252 | byte 3: ? Y7 X7 ? ? M R L | ||
253 | byte 4: Z7 Z6 Z5 Z4 Z3 Z2 Z1 Z0 | ||
254 | byte 5: 0 1 1 1 1 1 1 1 | ||
255 | |||
256 | For touchpad packet, the format is: | ||
257 | |||
258 | byte 0: 1 1 1 1 1 1 1 1 | ||
259 | byte 1: 0 0 0 0 x3 x2 x1 x0 | ||
260 | byte 2: 0 0 0 0 y3 y2 y1 y0 | ||
261 | byte 3: ? x7 x6 x5 x4 ? r l | ||
262 | byte 4: ? y7 y6 y5 y4 ? ? ? | ||
263 | byte 5: z7 z6 z5 z4 z3 z2 z1 z0 | ||
264 | |||
265 | (v6 touchpad does not have middle button) | ||
266 | |||
267 | ALPS Absolute Mode - Protocol Version 7 | ||
268 | --------------------------------------- | ||
269 | |||
270 | For trackstick packet, the format is: | ||
271 | |||
272 | byte 0: 0 1 0 0 1 0 0 0 | ||
273 | byte 1: 1 1 * * 1 M R L | ||
274 | byte 2: X7 1 X5 X4 X3 X2 X1 X0 | ||
275 | byte 3: Z6 1 Y6 X6 1 Y2 Y1 Y0 | ||
276 | byte 4: Y7 0 Y5 Y4 Y3 1 1 0 | ||
277 | byte 5: T&P 0 Z5 Z4 Z3 Z2 Z1 Z0 | ||
278 | |||
279 | For touchpad packet, the format is: | ||
280 | |||
281 | packet-fmt b7 b6 b5 b4 b3 b2 b1 b0 | ||
282 | byte 0: TWO & MULTI L 1 R M 1 Y0-2 Y0-1 Y0-0 | ||
283 | byte 0: NEW L 1 X1-5 1 1 Y0-2 Y0-1 Y0-0 | ||
284 | byte 1: Y0-10 Y0-9 Y0-8 Y0-7 Y0-6 Y0-5 Y0-4 Y0-3 | ||
285 | byte 2: X0-11 1 X0-10 X0-9 X0-8 X0-7 X0-6 X0-5 | ||
286 | byte 3: X1-11 1 X0-4 X0-3 1 X0-2 X0-1 X0-0 | ||
287 | byte 4: TWO X1-10 TWO X1-9 X1-8 X1-7 X1-6 X1-5 X1-4 | ||
288 | byte 4: MULTI X1-10 TWO X1-9 X1-8 X1-7 X1-6 Y1-5 1 | ||
289 | byte 4: NEW X1-10 TWO X1-9 X1-8 X1-7 X1-6 0 0 | ||
290 | byte 5: TWO & NEW Y1-10 0 Y1-9 Y1-8 Y1-7 Y1-6 Y1-5 Y1-4 | ||
291 | byte 5: MULTI Y1-10 0 Y1-9 Y1-8 Y1-7 Y1-6 F-1 F-0 | ||
292 | |||
293 | L: Left button | ||
294 | R / M: Non-clickpads: Right / Middle button | ||
295 | Clickpads: When > 2 fingers are down, and some fingers | ||
296 | are in the button area, then the 2 coordinates reported | ||
297 | are for fingers outside the button area and these report | ||
298 | extra fingers being present in the right / left button | ||
299 | area. Note these fingers are not added to the F field! | ||
300 | so if a TWO packet is received and R = 1 then there are | ||
301 | 3 fingers down, etc. | ||
302 | TWO: 1: Two touches present, byte 0/4/5 are in TWO fmt | ||
303 | 0: If byte 4 bit 0 is 1, then byte 0/4/5 are in MULTI fmt | ||
304 | otherwise byte 0 bit 4 must be set and byte 0/4/5 are | ||
305 | in NEW fmt | ||
306 | F: Number of fingers - 3, 0 means 3 fingers, 1 means 4 ... | ||