[xorg-x11-drv-synaptics] Update the various top softbutton ranges and use a udev quirk to tag them

Peter Hutterer whot at fedoraproject.org
Wed Mar 19 05:15:43 UTC 2014


commit 69e85b463fa54a026283641a51f833c59461b0fe
Author: Peter Hutterer <peter.hutterer at who-t.net>
Date:   Wed Mar 19 14:40:42 2014 +1000

    Update the various top softbutton ranges and use a udev quirk to tag them

 50-synaptics.conf           |   56 +++++++++++++++++++++++++++++++++---------
 70-touchpad-quirks.rules    |    7 ++++-
 xorg-x11-drv-synaptics.spec |    5 +++-
 3 files changed, 53 insertions(+), 15 deletions(-)
---
diff --git a/50-synaptics.conf b/50-synaptics.conf
index 5fa6d29..2d22dad 100644
--- a/50-synaptics.conf
+++ b/50-synaptics.conf
@@ -59,17 +59,49 @@ EndSection
 
 # FIXME: This config below requires a kernel fix to expose the device's PnPID
 # correctly https://lkml.org/lkml/2014/2/23/63, and an Xserver fix to
-# actually find that PNPID. So for now, leave the above snippet in place as well
-# so we have something for those who haven't updated everything yet.
+# actually find that PNPID. So for now, manually configure them with udev
+# rule hacks.
+#
+# WARNING: these devices are affected by a firmware bug that
+# provides us with wrong min/max ranges. So we can't use percentages
+# here and instead hardcode some range that seems sensible for now.
+# Do not copy this into your custom file, wait for the kernel to be
+# fixed and use percentages
+#
+# FTR: this is how it should look like:
+#Section "InputClass"
+#    Identifier "Lenovo TrackPoint top software buttons"
+#    MatchDriver "synaptics"
+#    MatchPnPID "LEN0033*|LEN0034*|LEN0035*|LEN0036*|LEN0042*"
+#    Option "SecondarySoftButtonAreas" "58% 0 0 8% 42% 58% 0 8%"
+#EndSection
+
 Section "InputClass"
-        Identifier "Lenovo 40 series top buttons custom"
-        MatchDriver "synaptics"
-        MatchPnPID  "LEN0034*"
-        # WARNING: these devices are affected by a kernel bug that
-        # provides us with wrong min/max ranges. So we can't use percentages
-        # here and instead hardcode some range that seems sensible for now.
-        # Do not copy this into your custom file, wait for the kernel bug to be
-        # fixed and use percentages
-        Option "SoftButtonAreas" "3251 0 4390 0 2950 3250 4390 0"
-        Option "SecondarySoftButtonAreas" "3251 0 0 2270 2950 3250 0 2270"
+        Identifier "Lenovo Helix trackstick software button buttons"
+        MatchTag "Helix"
+        Option "SecondarySoftButtonAreas" "3360 0 0 2464 2716 3359 0 2464"
+EndSection
+
+Section "InputClass"
+        Identifier "Lenovo T540 trackstick software button buttons"
+        MatchTag "T540"
+        Option "SecondarySoftButtonAreas" "3363 0 0 2280 2717 3362 0 2280"
+EndSection
+
+Section "InputClass"
+        Identifier "Lenovo X240 trackstick software button buttons"
+        MatchTag "X240"
+        Option "SecondarySoftButtonAreas" "3835 0 0 1439 3116 3834 0 1439"
+EndSection
+
+Section "InputClass"
+        Identifier "Lenovo T440 trackstick software button buttons"
+        MatchTag "T440"
+        Option "SecondarySoftButtonAreas" "3395 0 0 2248 2741 3394 0 2248"
+EndSection
+
+Section "InputClass"
+        Identifier "Lenovo Yoga trackstick software button buttons"
+        MatchTag "Yoga"
+        Option "SecondarySoftButtonAreas" "3835 0 0 1439 3116 3834 0 1439"
 EndSection
diff --git a/70-touchpad-quirks.rules b/70-touchpad-quirks.rules
index 31fa0cb..bc1aa8b 100644
--- a/70-touchpad-quirks.rules
+++ b/70-touchpad-quirks.rules
@@ -12,7 +12,10 @@ ENV{ID_INPUT_TOUCHPAD}!="1", GOTO="touchpad_quirks_end"
 ATTR{[dmi/id]product_name}=="Inspiron 1011|Inspiron 1012", \
   ENV{ID_INPUT.tags}="touchpad_button_overlap"
 
-ATTR{[dmi/id]product_version}=="*T440*", \
-  ENV{ID_INPUT.tags}="touchpad_softbutton_top"
+ATTR{[dmi/id]product_version}=="*T440*", ENV{ID_INPUT.tags}="T440"
+ATTR{[dmi/id]product_version}=="*T540*", ENV{ID_INPUT.tags}="T540"
+ATTR{[dmi/id]product_version}=="*X240*", ENV{ID_INPUT.tags}="X240"
+ATTR{[dmi/id]product_version}=="*Helix*" ENV{ID_INPUT.tags}="X240"
+ATTR{[dmi/id]product_version}=="*Yoga*", ENV{ID_INPUT.tags}="Yoga"
 
 LABEL="touchpad_quirks_end"
diff --git a/xorg-x11-drv-synaptics.spec b/xorg-x11-drv-synaptics.spec
index 1b3ba52..f09c838 100644
--- a/xorg-x11-drv-synaptics.spec
+++ b/xorg-x11-drv-synaptics.spec
@@ -8,7 +8,7 @@
 Name:           xorg-x11-drv-synaptics
 Summary:        Xorg X11 Synaptics touchpad input driver
 Version:        1.7.99.1
-Release:        1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist}
+Release:        2%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist}
 URL:            http://www.x.org
 License:        MIT
 Group:          User Interface/X Hardware Support
@@ -135,6 +135,9 @@ Development files for the Synaptics TouchPad for X.Org.
 
 
 %changelog
+* Wed Mar 19 2014 Peter Hutterer <peter.hutterer at redhat.com> - 1.7.99.1-2.20140318gitfd7099004
+- Update the various top softbutton ranges and use a udev quirk to tag them
+
 * Mon Mar 17 2014 Peter Hutterer <peter.hutterer at redhat.com> - 1.7.99.1-1.20140318gitfd7099004
 - 1.7.99.1 (from git)
 


More information about the scm-commits mailing list