summaryrefslogtreecommitdiff
path: root/rules
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2015-01-28 14:05:01 +1000
committerAnthony G. Basile <blueness@gentoo.org>2015-02-08 08:21:43 -0500
commitb51ba787a3e16cefa3af98cf357a7f3b29d700b9 (patch)
tree4366b04f55929b08eb261c5ec9dff4ad12039ebe /rules
parent681b0e3876ba6ed10efbc139c0d4346446500e07 (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. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
Diffstat (limited to 'rules')
-rw-r--r--rules/70-touchpad.rules12
-rw-r--r--rules/Makefile.am1
2 files changed, 13 insertions, 0 deletions
diff --git a/rules/70-touchpad.rules b/rules/70-touchpad.rules
new file mode 100644
index 0000000000..88e6fd2f25
--- /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"
diff --git a/rules/Makefile.am b/rules/Makefile.am
index dfbda04684..1fae8b56ec 100644
--- a/rules/Makefile.am
+++ b/rules/Makefile.am
@@ -13,6 +13,7 @@ dist_udevrules_DATA = \
61-accelerometer.rules \
64-btrfs.rules \
70-mouse.rules \
+ 70-touchpad.rules \
75-net-description.rules \
75-probe_mtd.rules \
75-tty-description.rules \