]> git.ipfire.org Git - thirdparty/systemd.git/commit - Makefile.am
udev: builtin-keyboard: add support for EVDEV_ABS_*
authorPeter Hutterer <peter.hutterer@who-t.net>
Thu, 19 Mar 2015 04:19:58 +0000 (14:19 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Fri, 10 Apr 2015 22:44:33 +0000 (08:44 +1000)
commit51c0c2869845a058268d54c3111d55d0dd485704
treec2da7abb5eee37b67e998393e24c100dfaff5b6f
parent8a0fd83cf03547653a195582ba004d2ff69dfbd0
udev: builtin-keyboard: add support for EVDEV_ABS_*

Parse properties in the form
EVDEV_ABS_00="<min>:<max>:<res>:<fuzz>:<flat>"

and apply them to the kernel device. Future processes that open that device
will see the updated EV_ABS range.

This is particularly useful for touchpads that don't provide a resolution in
the kernel driver but can be fixed up through hwdb entries (e.g. bcm5974).

All values in the property are optional, e.g. a string of "::45" is valid to
set the resolution to 45.

The order intentionally orders resolution before fuzz and flat despite it
being the last element in the absinfo struct. The use-case for setting
fuzz/flat is almost non-existent, resolution is probably the most common case
we'll need.

To avoid multiple hwdb invocations for the same device, replace the
hwdb "keyboard:" prefix with "evdev:" and drop the separate 60-keyboard.rules
file. The new 60-evdev.rules is called for all event nodes
anyway, we don't need a separate rules file and second callout to the hwdb
builtin.
Makefile.am
hwdb/60-evdev.hwdb [new file with mode: 0644]
hwdb/60-keyboard.hwdb
rules/60-evdev.rules [new file with mode: 0644]
rules/60-keyboard.rules [deleted file]
src/udev/udev-builtin-keyboard.c