chiark / gitweb /
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)
committerSven Eden <yamakuzure@gmx.net>
Tue, 14 Mar 2017 06:45:32 +0000 (07:45 +0100)
commit33928c053afd0e119828fb52a20979da415c425d
tree552c039ac258ba81675769dd4c864446f486bbd6
parent5806784b5c7618d2a0407effe013b8734ce6917d
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.
hwdb/60-evdev.hwdb [new file with mode: 0644]
rules/60-evdev.rules [new file with mode: 0644]