Contents of /trunk/udev/udev-persistent-input.rules.magellan
Parent Directory | Revision Log
Revision 1016 -
(show annotations)
(download)
Tue Apr 6 23:46:22 2010 UTC (14 years, 6 months ago) by niro
File size: 2864 byte(s)
Tue Apr 6 23:46:22 2010 UTC (14 years, 6 months ago) by niro
File size: 2864 byte(s)
-merged with upstream udev-151 rules
1 | # /etc/udev/rules/60-persistent-input.rules: device naming rules for udev |
2 | # $Header: /root/magellan-cvs/src/udev/udev-persistent-input.rules.magellan,v 1.9 2010-04-06 23:46:22 niro Exp $ |
3 | # |
4 | # There are a number of modifiers that are allowed to be used in some |
5 | # of the different fields. They provide the following subsitutions: |
6 | # %n - the "kernel number" of the device. |
7 | # For example, 'sda3' has a "kernel number" of '3' |
8 | # %k - the kernel name for the device. |
9 | # %M - the kernel major number for the device |
10 | # %m - the kernel minor number for the device |
11 | # %b - the bus id for the device |
12 | # %c - the string returned by the PROGRAM. (Note, this doesn't work within |
13 | # the PROGRAM field for the obvious reason.) |
14 | # %s{filename} - the content of a sysfs attribute. |
15 | # %% - the '%' char itself. |
16 | # |
17 | # Try not to modify this file, if you wish to change things, create a new rule |
18 | # file that can be run before this one. |
19 | # |
20 | |
21 | ACTION!="add|change", GOTO="persistent_input_end" |
22 | SUBSYSTEM!="input", GOTO="persistent_input_end" |
23 | KERNEL=="input[0-9]*", GOTO="persistent_input_end" |
24 | |
25 | ENV{ID_INPUT}=="", IMPORT{program}="input_id %p" |
26 | SUBSYSTEMS=="usb", ENV{ID_BUS}=="", IMPORT{program}="usb_id --export %p" |
27 | |
28 | # determine class name for persistent symlinks |
29 | ENV{ID_INPUT_KEYBOARD}=="?*", ENV{.INPUT_CLASS}="kbd" |
30 | ENV{ID_INPUT_MOUSE}=="?*", ENV{.INPUT_CLASS}="mouse" |
31 | ENV{ID_INPUT_TOUCHPAD}=="?*", ENV{.INPUT_CLASS}="mouse" |
32 | ENV{ID_INPUT_TABLET}=="?*", ENV{.INPUT_CLASS}="mouse" |
33 | ENV{ID_INPUT_JOYSTICK}=="?*", ENV{.INPUT_CLASS}="joystick" |
34 | DRIVERS=="pcspkr", ENV{.INPUT_CLASS}="spkr" |
35 | ATTRS{name}=="*dvb*|*DVB*|* IR *", ENV{.INPUT_CLASS}="ir" |
36 | |
37 | # fill empty serial number |
38 | ENV{.INPUT_CLASS}=="?*", ENV{ID_SERIAL}=="", ENV{ID_SERIAL}="noserial" |
39 | |
40 | # by-id links |
41 | KERNEL=="mouse*|js*", ENV{ID_BUS}=="?*", ENV{.INPUT_CLASS}=="?*", SYMLINK+="input/by-id/$env{ID_BUS}-$env{ID_SERIAL}-$env{.INPUT_CLASS}" |
42 | KERNEL=="event*", ENV{ID_BUS}=="?*", ENV{.INPUT_CLASS}=="?*", SYMLINK+="input/by-id/$env{ID_BUS}-$env{ID_SERIAL}-event-$env{.INPUT_CLASS}" |
43 | # allow empty class for USB devices, by appending the interface number |
44 | SUBSYSTEMS=="usb", ENV{ID_BUS}=="?*", KERNEL=="event*", ENV{.INPUT_CLASS}=="", ATTRS{bInterfaceNumber}=="?*", \ |
45 | SYMLINK+="input/by-id/$env{ID_BUS}-$env{ID_SERIAL}-event-if$attr{bInterfaceNumber}" |
46 | |
47 | # by-path |
48 | SUBSYSTEMS=="usb|platform", IMPORT{program}="path_id %p" |
49 | ENV{ID_PATH}=="?*", KERNEL=="mouse*|js*", ENV{.INPUT_CLASS}=="?*", SYMLINK+="input/by-path/$env{ID_PATH}-$env{.INPUT_CLASS}" |
50 | ENV{ID_PATH}=="?*", KERNEL=="event*", ENV{.INPUT_CLASS}=="?*", SYMLINK+="input/by-path/$env{ID_PATH}-event-$env{.INPUT_CLASS}" |
51 | # allow empty class for platform and usb devices; platform supports only a single interface that way |
52 | SUBSYSTEMS=="usb|platform", ENV{ID_PATH}=="?*", KERNEL=="event*", ENV{.INPUT_CLASS}=="", \ |
53 | SYMLINK+="input/by-path/$env{ID_PATH}-event" |
54 | |
55 | LABEL="persistent_input_end" |