summaryrefslogtreecommitdiff
path: root/rules
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2015-01-28 14:05:01 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2015-01-29 13:06:04 +1000
commit001a247324b44c0e0b8fdba41a6fc66e7465b8b6 (patch)
tree03259f0ea25736b4af378b1610f52d7a3e0eb355 /rules
parent3e495a6651609d0a45b62aab5c3ed5a3b40e11ab (diff)
hwdb: add a touchpad hwdb
Currently used to tag devices in the new Lenovo *50 series and the X1 Carbon 3rd. These laptops re-introduced the physical trackpoint buttons that were missing from the *40 series but those buttons are now wired up to the touchpad. The touchpad now sends BTN_0, BTN_1 and BTN_2 for the trackpoint. The same button codes were used in older touchpads that had dedicated scroll up/down buttons. Input drivers need to work around this and thus know what they're dealing with. For the previous gen we introduced INPUT_PROP_TOPBUTTONPAD in the kernel, but the resulting mess showed that these per-device quirks should really live in userspace. The list currently includes the X1 Carbon 3rd PNPID, others will be added as get to know which PNPID they have.
Diffstat (limited to 'rules')
-rw-r--r--rules/70-touchpad.rules12
1 files changed, 12 insertions, 0 deletions
diff --git a/rules/70-touchpad.rules b/rules/70-touchpad.rules
new file mode 100644
index 000000000..88e6fd2f2
--- /dev/null
+++ b/rules/70-touchpad.rules
@@ -0,0 +1,12 @@
+# do not edit this file, it will be overwritten on update
+
+ACTION=="remove", GOTO="touchpad_end"
+KERNEL!="event*", GOTO="touchpad_end"
+ENV{ID_INPUT_TOUCHPAD}=="", GOTO="touchpad_end"
+
+# touchpad:pnpid:<pnpid>:*
+KERNELS=="serio1", \
+ IMPORT{builtin}="hwdb 'touchpad:pnpid:$attr{firmware_id}:'", \
+ GOTO="touchpad_end"
+
+LABEL="touchpad_end"