chiark / gitweb /
update Debian persistent rules
[elogind.git] / etc / udev / debian / udev.rules
1 # There are a number of modifiers that are allowed to be used in some
2 # of the different fields. They provide the following subsitutions:
3 #
4 # %n the "kernel number" of the device.
5 #    For example, 'sda3' has a "kernel number" of '3'
6 # %e the smallest number for that name which does not matches an existing node
7 # %k the kernel name for the device
8 # %M the kernel major number for the device
9 # %m the kernel minor number for the device
10 # %b the bus id for the device
11 # %c the string returned by the PROGRAM
12 # %s{filename} the content of a sysfs attribute
13 # %% the '%' char itself
14 #
15
16 # workaround for devices which do not report media changes
17 BUS=="ide", KERNEL=="hd[a-z]", SYSFS{removable}=="1", \
18   PROGRAM="/sbin/ata_id --export $tempnode", ENV{ID_MODEL}=="IOMEGA_ZIP*", \
19                                         NAME="%k", OPTIONS+="all_partitions"
20
21 # SCSI devices
22 BUS=="scsi", KERNEL=="sr[0-9]*",        NAME="scd%n", SYMLINK+="sr%n"
23
24 # USB devices
25 BUS=="usb", KERNEL=="auer[0-9]*",       NAME="usb/%k"
26 BUS=="usb", KERNEL=="cpad[0-9]*",       NAME="usb/%k"
27 BUS=="usb", KERNEL=="dabusb*",          NAME="usb/%k"
28 BUS=="usb", KERNEL=="hiddev*",          NAME="usb/%k"
29 BUS=="usb", KERNEL=="legousbtower*",    NAME="usb/%k"
30 BUS=="usb", KERNEL=="lp[0-9]*",         NAME="usb/%k"
31 BUS=="usb", KERNEL=="ttyUSB*", SYSFS{product}=="Palm Handheld*", \
32                                         SYMLINK+="pilot"
33
34 # usbfs-like devices
35 SUBSYSTEM=="usb_device",        PROGRAM="/bin/sh -c 'K=%k K=$${K#usbdev} B=$${K%%%%.*} D=$${K#*.}; echo bus/usb/$$B/$$D'", \
36                                 SYMLINK+="%c"
37
38 # serial devices
39 KERNEL=="capi",                 NAME="capi20", SYMLINK+="isdn/capi20"
40 KERNEL=="capi[0-9]*",           NAME="capi/%n"
41
42 # video devices
43 KERNEL=="dvb*",                 PROGRAM="/bin/sh -c 'K=%k K=$${K#dvb} A=$${K%%%%.*} D=$${K#*.}; echo dvb/adapter$$A/$$D'", \
44                                 NAME="%c"
45 KERNEL=="card[0-9]*",           NAME="dri/%k"
46
47 # misc devices
48 KERNEL=="hw_random",            NAME="hwrng"
49 KERNEL=="tun",                  NAME="net/%k"
50
51 KERNEL=="cdemu[0-9]*",          NAME="cdemu/%n"
52 KERNEL=="pktcdvd[0-9]*",        NAME="pktcdvd/%n"
53 KERNEL=="pktcdvd",              NAME="pktcdvd/control"
54
55 KERNEL=="cpu[0-9]*",            NAME="cpu/%n/cpuid"
56 KERNEL=="msr[0-9]*",            NAME="cpu/%n/msr"
57 KERNEL=="microcode",            NAME="cpu/microcode"
58
59 KERNEL=="umad*",                NAME="infiniband/%k"
60 KERNEL=="issm*",                NAME="infiniband/%k"
61 KERNEL=="uverbs*",              NAME="infiniband/%k"
62 KERNEL=="ucm",                  NAME="infiniband/%k"
63
64 # ALSA devices
65 KERNEL=="controlC[0-9]*",       NAME="snd/%k"
66 KERNEL=="hwC[D0-9]*",           NAME="snd/%k"
67 KERNEL=="pcmC[D0-9cp]*",        NAME="snd/%k"
68 KERNEL=="midiC[D0-9]*",         NAME="snd/%k"
69 KERNEL=="timer",                NAME="snd/%k"
70 KERNEL=="seq",                  NAME="snd/%k"
71
72 # ieee1394 devices       
73 KERNEL=="dv1394*",              NAME="dv1394/%n"
74 KERNEL=="video1394*",           NAME="video1394/%n"
75
76 # input devices
77 KERNEL=="mice",                 NAME="input/%k"
78 KERNEL=="mouse[0-9]*",          NAME="input/%k"
79 KERNEL=="event[0-9]*",          NAME="input/%k"
80 KERNEL=="js[0-9]*",             NAME="input/%k"
81 KERNEL=="ts[0-9]*",             NAME="input/%k"
82 KERNEL=="uinput",               NAME="input/%k"
83
84 # Zaptel
85 KERNEL=="zapctl",               NAME="zap/ctl"
86 KERNEL=="zaptimer",             NAME="zap/timer"
87 KERNEL=="zapchannel",           NAME="zap/channel"
88 KERNEL=="zappseudo",            NAME="zap/pseudo"
89 KERNEL=="zap[0-9]*",            NAME="zap/%n"
90
91 # AOE character devices
92 SUBSYSTEM=="aoe", KERNEL=="discover",   NAME="etherd/%k"
93 SUBSYSTEM=="aoe", KERNEL=="err",        NAME="etherd/%k"
94 SUBSYSTEM=="aoe", KERNEL=="interfaces", NAME="etherd/%k"
95
96 # device mapper creates its own device nodes, so ignore these
97 KERNEL=="dm-[0-9]*",            OPTIONS+="ignore_device"
98 KERNEL=="device-mapper",        NAME="mapper/control"
99