mirror of
https://github.com/systemd/systemd-stable.git
synced 2024-12-22 13:33:56 +03:00
rules: Add extended evdev/input match rules for event nodes with the same name
Sometimes a system may have 2 input event nodes with the same name where we only want to apply keyboard hwdb rules to 1 of the 2 devices. This problem happens e.g. on devices where the soc_button_array driver is used (e.g. intel atom based tablets) which registers 2 event nodes with the name "gpio-keys". This commit adds a new extended match rule which extends the match to also check $attr{phys} and $attr{capabilities/ev}, allowing to differentiate between devices with an identical name. Suggested-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
This commit is contained in:
parent
6818c54ca6
commit
57bb707d48
@ -32,6 +32,15 @@
|
||||
# driver, <vendor> is the firmware-provided string exported
|
||||
# by the kernel DMI modalias, see /sys/class/dmi/id/modalias
|
||||
#
|
||||
# - Extended input driver device name, properties and DMI data match:
|
||||
# evdev:name:<input device name>:phys:<phys>:ev:<ev>:dmi:bvn*:bvr*:bd*:svn<vendor>:pn*
|
||||
# <input device name> is the name device specified by the
|
||||
# driver, <phys> is the physical-device-path, "cat
|
||||
# /sys/class/input/input?/phys", <ev> is the event bitmask, "cat
|
||||
# /sys/class/input/input?/capabilities/ev" and <vendor> is the
|
||||
# firmware-provided string exported by the kernel DMI modalias,
|
||||
# see /sys/class/dmi/id/modalias
|
||||
#
|
||||
# Scan codes are specified as:
|
||||
# KEYBOARD_KEY_<hex scan code>=<key code identifier>
|
||||
# The scan code should be expressed in hex lowercase. The key codes
|
||||
|
@ -12,6 +12,10 @@ ENV{ID_INPUT_KEY}=="?*", DRIVERS=="atkbd", \
|
||||
IMPORT{builtin}="hwdb 'evdev:atkbd:$attr{[dmi/id]modalias}'", \
|
||||
RUN{builtin}+="keyboard", GOTO="evdev_end"
|
||||
|
||||
# device matching the input device name + properties + the machine's DMI data
|
||||
KERNELS=="input*", IMPORT{builtin}="hwdb 'evdev:name:$attr{name}:phys:$attr{phys}:ev:$attr{capabilities/ev}:$attr{[dmi/id]modalias}'", \
|
||||
RUN{builtin}+="keyboard", GOTO="evdev_end"
|
||||
|
||||
# device matching the input device name and the machine's DMI data
|
||||
KERNELS=="input*", IMPORT{builtin}="hwdb 'evdev:name:$attr{name}:$attr{[dmi/id]modalias}'", \
|
||||
RUN{builtin}+="keyboard", GOTO="evdev_end"
|
||||
|
Loading…
Reference in New Issue
Block a user