f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# This file is part of systemd.
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# Pointingstick const-accel configuration, to make different brand / model
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# laptop pointingsticks have the same speed / feel, and per model adjustment
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# of the IBM TrackPoint driver's sensitivity setting
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# The lookup keys are composed in:
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# Note: The format of the "evdev:" prefix match key is a contract between the
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# rules file and the hardware data, it might change in later revisions to
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# support more or better matches, it is not necessarily a stable ABI.
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# Supported hardware matches are:
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# - Generic input devices match:
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# evdev:input:bZZZZvYYYYpXXXXeWWWW-VVVV
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# This matches on the kernel modalias of the input-device, mainly:
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# ZZZZ is the bus-id (see /usr/include/linux/input.h BUS_*), YYYY, XXXX and
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# WWW are the 4-digit hex uppercase vendor, product and version ID and VVVV
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# is an arbitrary length input-modalias describing the device capabilities.
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# - Input driver device name and DMI data match:
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# evdev:name:<input device name>:dmi:bvn*:bvr*:bd*:svn<vendor>:pn*
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# <input device name> is the name device specified by the driver,
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# <vendor> is the firmware-provided string from the kernel DMI modalias.
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# To add local entries, create a new file
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# and add your rules there. To load the new rules execute (as root):
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# udevadm hwdb --update
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# udevadm trigger /dev/input/eventXX
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# where /dev/input/eventXX is the pointingstick in question. If in
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# doubt, simply use /dev/input/event* to reload all input rules.
195c9e37fcb1273b92e2cdacc1d0aa573bf7a92dZbigniew Jędrzejewski-Szmek# If your changes are generally applicable, preferably send them as a pull
195c9e37fcb1273b92e2cdacc1d0aa573bf7a92dZbigniew Jędrzejewski-Szmek# https://github.com/systemd/systemd
195c9e37fcb1273b92e2cdacc1d0aa573bf7a92dZbigniew Jędrzejewski-Szmek# or create a bug report on https://github.com/systemd/systemd/issues and
195c9e37fcb1273b92e2cdacc1d0aa573bf7a92dZbigniew Jędrzejewski-Szmek# include your new rules, a description of the device, and the output of
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# Allowed properties are:
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# POINTINGSTICK_CONST_ACCEL
5defbb5ff664f141293f800c486bc5b723f985ceHans de Goede# POINTINGSTICK_SENSITIVITY
ea35a386133b7998e9419a666c36bf38433c4b5cZbigniew Jędrzejewski-Szmek# Entries should be sorted with growing _SENSITIVITY and _CONST_ACCEL.
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede#########################################
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# POINTINGSTICK_CONST_ACCEL #
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede#########################################
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# Trackpoint const accel settings are specified as
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# POINTINGSTICK_CONST_ACCEL=<accel>
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# Where <accel> is a floating point number, using a '.' seperator, specifying
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# by how much to multiply deltas generated by the pointingstick to get
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# normalized deltas.
5defbb5ff664f141293f800c486bc5b723f985ceHans de Goede#########################################
5defbb5ff664f141293f800c486bc5b723f985ceHans de Goede# POINTINGSTICK_SENSITIVITY #
5defbb5ff664f141293f800c486bc5b723f985ceHans de Goede#########################################
5defbb5ff664f141293f800c486bc5b723f985ceHans de Goede# TPPS/2 IBM TrackPoint driver sensitivity sysfs setting
5defbb5ff664f141293f800c486bc5b723f985ceHans de Goede# POINTINGSTICK_SENSITIVITY=<sensitivity>
5defbb5ff664f141293f800c486bc5b723f985ceHans de Goede# Where <sensitivity> is a number between 0 and 255, note this property
5defbb5ff664f141293f800c486bc5b723f985ceHans de Goede# only applies to TPPS/2 IBM TrackPoint devices, see
5defbb5ff664f141293f800c486bc5b723f985ceHans de Goede# drivers/input/mouse/trackpoint.c in the Linux kernel sources.
f29378b4437e0d50e738641de24ec19d41396284Hans de Goede# Sort by by brand, model
1f845120ec0e1921ccf924aa5b001721c561c540Hans de Goede#########################################
1f845120ec0e1921ccf924aa5b001721c561c540Hans de Goede#########################################
1f845120ec0e1921ccf924aa5b001721c561c540Hans de Goede# Latitude D620
1f845120ec0e1921ccf924aa5b001721c561c540Hans de Goedeevdev:name:*DualPoint Stick:dmi:bvn*:bvr*:bd*:svnDellInc.:pnLatitudeD620*:pvr*
1f845120ec0e1921ccf924aa5b001721c561c540Hans de Goede POINTINGSTICK_CONST_ACCEL=0.5
d68c7dea388887de352be86fbb11c04a558bb510Peter Hutterer# Latitude E6320
d68c7dea388887de352be86fbb11c04a558bb510Peter Huttererevdev:name:*DualPoint Stick:dmi:bvn*:bvr*:bd*:svnDellInc.:pnLatitudeE6320*:pvr*
d68c7dea388887de352be86fbb11c04a558bb510Peter Hutterer POINTINGSTICK_CONST_ACCEL=2.0
1f845120ec0e1921ccf924aa5b001721c561c540Hans de Goede# Latitude E6400
1f845120ec0e1921ccf924aa5b001721c561c540Hans de Goedeevdev:name:*DualPoint Stick:dmi:bvn*:bvr*:bd*:svnDellInc.:pnLatitudeE6400*:pvr*
1f845120ec0e1921ccf924aa5b001721c561c540Hans de Goede POINTINGSTICK_CONST_ACCEL=1.5
70a5703bd4bb8697392ebc65fc7c711357bfde9bHans de Goede#########################################
70a5703bd4bb8697392ebc65fc7c711357bfde9bHans de Goede#########################################
27c43e7ed48bfe87917767166b7353840d4317c4Peter Hutterer# Lenovo Thinkpad X230
27c43e7ed48bfe87917767166b7353840d4317c4Peter Huttererevdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPadX230:*
e6e3d81e215ec9a7696fd87a9b34fc3e508af9efHans de Goede# Lenovo Thinkpad X230 tablet
e6e3d81e215ec9a7696fd87a9b34fc3e508af9efHans de Goedeevdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPadX230Tablet:*
151f5feb31bb83bf5e9e8c4d138268f07e25e716Hans de Goede# Lenovo Thinkpad X240
151f5feb31bb83bf5e9e8c4d138268f07e25e716Hans de Goedeevdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPadX240:*
70a5703bd4bb8697392ebc65fc7c711357bfde9bHans de Goede# Lenovo Thinkpad T440s
70a5703bd4bb8697392ebc65fc7c711357bfde9bHans de Goedeevdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPadT440s:*
151f5feb31bb83bf5e9e8c4d138268f07e25e716Hans de Goede# Lenovo Thinkpad T540p
151f5feb31bb83bf5e9e8c4d138268f07e25e716Hans de Goedeevdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPadT540p:*
056119922d922ce5a3aa1075d0a8252b1fffb5d1Hans de Goede# Lenovo Thinkpad T550 / W550s
056119922d922ce5a3aa1075d0a8252b1fffb5d1Hans de Goedeevdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPadT550:*
c01705b9ee09ff69df231f41466c19f722bba2cdHans de Goede# Lenovo Thinkpad X1 Carbon 3rd gen
c01705b9ee09ff69df231f41466c19f722bba2cdHans de Goedeevdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPadX1Carbon3rd:*
151f5feb31bb83bf5e9e8c4d138268f07e25e716Hans de Goede POINTINGSTICK_SENSITIVITY=200
151f5feb31bb83bf5e9e8c4d138268f07e25e716Hans de Goede POINTINGSTICK_CONST_ACCEL=1.0
ea35a386133b7998e9419a666c36bf38433c4b5cZbigniew Jędrzejewski-Szmek# Lenovo Thinkpad X200s / X201s
ea35a386133b7998e9419a666c36bf38433c4b5cZbigniew Jędrzejewski-Szmek# Note these come with 2 revisions of keyboard, with the trackpoints having a
ea35a386133b7998e9419a666c36bf38433c4b5cZbigniew Jędrzejewski-Szmek# different sensitivity in the different revisions. 1.25 is a bit slow for the
ea35a386133b7998e9419a666c36bf38433c4b5cZbigniew Jędrzejewski-Szmek# least sensitive revision, but it is better to be a bit slow than too fast.
ea35a386133b7998e9419a666c36bf38433c4b5cZbigniew Jędrzejewski-Szmekevdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPadX20?s:*
ea35a386133b7998e9419a666c36bf38433c4b5cZbigniew Jędrzejewski-Szmek POINTINGSTICK_SENSITIVITY=200
ea35a386133b7998e9419a666c36bf38433c4b5cZbigniew Jędrzejewski-Szmek POINTINGSTICK_CONST_ACCEL=1.25