Pointer acceleration for relative input devices (mice, trackballs, etc.)
applies to the deltas of the device. Alas, those deltas have no physical
reference point - a delta of 10 may be caused by a large movement of a
low-dpi mouse or by a minute movement of a high-dpi mouse.
Which makes pointer acceleration a bit useless and high-dpi devices
essentially unusable.
In an ideal world, we could read the DPI from the device directly and work
with that. In the world we actually live in, we need to compile this list
manually. This patch introduces the database, with the usual match formats
and a single property to be set on a device: MOUSE_DPI
That is either a single value for most mice, or a list of values for mice
that can change resolution at runtime. The exact format is detailed in the
hwdb file.
Note that we're explicitly overshooting the requirements we have for
libinput atm. Frequency could be detected in software and we don't
actually use the list of multiple resolutions (because we can't detect
when they change anyway). However, we might as well collect those values
from the get-go, adding/modifying what will eventually amount to hundreds
of entries is a bit cumbersome.
Note: we rely on the input_id builtin to tag us as mouse first, ordering
of the rules is important.
(David: fixed up typos and moved hwdb file into ./hwdb/)
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
udev seems to have a race condition with swapon to see which can open
/dev/zram0 first, causing swapon to fail. Seems to be most noticeable
on arm devices one out of every 7 times or something.
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
Note: some of these rules are premature because we have yet
to add udev_builtin_net_link. These commits were authored by
Kay Sievers
David Herrmann
Tom Gundersen
Lennart Poettering
Bastien Nocera
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
This commit imports the new internal keyboard handling from upstream.
This is a combination of many upstream commits, including those
that added code, removed old code, and updated the hwdb.
Some commits (hwdb ones specifically) were unrelated but brought
in anyways to keep the whole hwdb consistent. Each upstream
commit included is as follows:
9d7d42bc406a2ac04639674281ce3ff6beeda790 - internal keymap support
0c959b39175b126fdb70ae00de37ca6d9c8ca3a1 - hwdb: keyboard -- add file
e8193554925a22b63bef0e77b8397b56d63a91ff - hwdb: keyboard -- update comments
c79d894d590fc9df4861738555cc43c477e33376 - hwdb: import data
aedc2eddd16e48d468e6ad0aea2caf00c7d37365 - hwdb: keyboard update
97a9313cafccf772ce03f5ebd36fe4d9d8412583 - hwdb: drop non-existant Samsung 900XC3 from keymap
ddc77f62244bb41d5c8261517e2e1ff1b763fc94 - switch from udev keymaps to hwdb
0c3815773331b263713f4f7b9d80bc1ca159338e - also remove keymaps-force-release directory
1b6bce89b3383904d0dab619dd38bff673f7286e - keymap: re-add Logitech USB corded/cordless models
bf89b99c5a39115112c2eda4c2103e2db54988d2 - 60-keyboard.hwdb: Fix syntax error
ce39bb6909578017aa10031638e724e038f0b859 - hwdb: data update, upstream
884c86812c51479496edd50b278383d7bb67baf0 - rules: keyboard - use builtin command
All code from each of the above commits is attributed to the original
authors.
There were some adjustments made in order to support the code differences
between upstream and eudev, which was done by myself.
Also of note is that the code can still be disabled via the --disable-keymaps
configure option, which was removed from upstream.
Signed-off-by: Ian Stakenvicius <axs@gentoo.org>
We do not want to install 80-net-name-slot.rules if we
--enable-rule-generator. In fact doing so will switch to
the predictable network interface names.
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
There is no reason to keep this rule separate and it works fine
when incuded in 50-udev-default.rules.
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
75-persistent-net-generator.rules is in the rule_generator subdir, do
not try and install from here.
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
This restores the rule generator scripts for the persistent
network and optical device rule generator scripts that were
removed after udev-171, and re-introduces their installation
to the build system.
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
This sets the permissions on null, zero, full, random and urandom
to 666 which is needed for older kernels. This is part of Gentoo's
40-gentoo.rules which can now be dropped from Gentoo's ebuild.
X-gentoo-Bug: 457868
X-gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=457868
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
Signed-off-by: Ian Stakenvicius <axs@gentoo.org>
Separate out Ideapad U300s to its own line and add Microphone mute key.
Signed-off-by: Martin Pitt <martinpitt@gnome.org>
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
Signed-off-by: Ian Stakenvicius <axs@gentoo.org>
IdeaPad U300s needs mapping 0xf1 to f21 just like Lenovo V480.
Signed-off-by: Martin Pitt <martinpitt@gnome.org>
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
Signed-off-by: Ian Stakenvicius <axs@gentoo.org>
Distros that whish to support old kernels should set
--with-firmware-dirs="/usr/lib/firmware/updates:/usr/lib/firmware"
to retain the old behaviour.
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
Signed-off-by: Ian Stakenvicius <axs@gentoo.org>
Authors include:
Tollef Fog Heen
Kay Sievers
Tom Gundersen
Tony Camuso
Lennart Poettering
Martin Pitt
Harald Hoyer
Michal Schmidt
Matthew Garrett
See http://cgit.freedesktop.org/systemd/systemd/log/rules
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
Signed-off-by: Ian Stakenvicius <axs@gentoo.org>
Currently, keymaps are provided only for the NP90X3A laptop. Samsung
introduced updated models, codenamed 900X3B, 900X3C, 900X4B, 900X4C,
which are currently not matched by udev rules. This patch includes the
newer modules in udev rules and move the samsung-n90x3a file defining
keys to a more generic samsung-series-9 file.
The patch was tested on a 900X4C laptop, and other people reported
that the rules also work for 900X3B and 900X3C ones.
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
Embedded systems may not want to include util-linux when they do
not intend to use blkid functionality
Modified from original author's commit to not install
60-persistent-storage.rules if blkid is disabled
systemd commit f553b3b1074151200187df916427a1468186435e
Original author: Anders Olofsson <Anders.Olofsson@axis.com>
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>