Annotation of /trunk/udev/config-udev-088-r2/udev.rules.magellan
Parent Directory | Revision Log
Revision 89 -
(hide annotations)
(download)
Tue Dec 26 12:34:36 2006 UTC (17 years, 9 months ago) by niro
File size: 12237 byte(s)
Tue Dec 26 12:34:36 2006 UTC (17 years, 9 months ago) by niro
File size: 12237 byte(s)
import
1 | niro | 89 | # /etc/udev/rules/50-udev.rules: device naming rules for udev |
2 | # $Header: /root/magellan-cvs/src/udev/config-udev-088-r2/udev.rules.magellan,v 1.1 2006-12-26 12:34:30 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 | |||
22 | # console | ||
23 | KERNEL=="pty[pqrstuvwxyzabcdef][0123456789abcdef]", NAME="%k", GROUP="tty", OPTIONS="last_rule" | ||
24 | KERNEL=="tty[pqrstuvwxyzabcdef][0123456789abcdef]", NAME="%k", GROUP="tty", OPTIONS="last_rule" | ||
25 | KERNEL=="vcs*", NAME="%k", GROUP="tty", OPTIONS="last_rule" | ||
26 | KERNEL=="vcsa*", NAME="%k", GROUP="tty", OPTIONS="last_rule" | ||
27 | KERNEL=="tty", NAME="%k", GROUP="tty", MODE="0666", OPTIONS="last_rule" | ||
28 | KERNEL=="tty[0-9]", NAME="%k", GROUP="tty", OPTIONS="last_rule" | ||
29 | KERNEL=="tty[0-9][0-9]", NAME="%k", GROUP="tty", OPTIONS="last_rule" | ||
30 | KERNEL=="console", NAME="%k", GROUP="tty", MODE="0600" | ||
31 | KERNEL=="ptmx", NAME="%k", GROUP="tty", MODE="0666" | ||
32 | |||
33 | # tty devices | ||
34 | KERNEL=="ttyS[0-9]*", NAME="%k", SYMLINK="tts/%n", GROUP="tty" | ||
35 | KERNEL=="ttyUSB[0-9]*", NAME="%k", SYMLINK="tts/USB%n", GROUP="tty", MODE="0660" | ||
36 | KERNEL=="ippp0", NAME="%k", GROUP="tty" | ||
37 | KERNEL=="isdn*" NAME="%k", GROUP="tty" | ||
38 | KERNEL=="dcbri*", NAME="%k", GROUP="tty" | ||
39 | KERNEL=="ircomm*", NAME="%k", GROUP="tty" | ||
40 | |||
41 | # all block devices | ||
42 | SUBSYSTEM=="block", GROUP="disk" | ||
43 | |||
44 | # cdrom symlinks and other good cdrom naming | ||
45 | BUS=="ide", KERNEL=="hd[a-z]", ACTION=="add", IMPORT="/sbin/cdrom_id --export $tempnode" | ||
46 | BUS=="scsi", KERNEL="sr[0-9]*", ACTION=="add", IMPORT="/sbin/cdrom_id --export $tempnode" | ||
47 | BUS=="scsi", KERNEL="scd[a-z]", ACTION=="add", IMPORT="/sbin/cdrom_id --export $tempnode" | ||
48 | BUS=="scsi", KERNEL="sg[0-9]*", ACTION=="add", DRIVER=="sr", GROUP="cdrom" | ||
49 | ENV{ID_CDROM}=="?*", SYMLINK+="cdrom%e", GROUP="cdrom" | ||
50 | ENV{ID_CDROM_CD_RW}=="?*", SYMLINK+="cdrw%e" | ||
51 | ENV{ID_CDROM_DVD}=="?*", SYMLINK+="dvd%e" | ||
52 | ENV{ID_CDROM_DVD_R}=="?*", SYMLINK+="dvdrw%e" | ||
53 | |||
54 | # disk devices | ||
55 | KERNEL=="sd*", NAME="%k", GROUP="disk" | ||
56 | KERNEL=="dasd*", NAME="%k", GROUP="disk" | ||
57 | KERNEL=="ataraid*", NAME="%k", GROUP="disk" | ||
58 | |||
59 | # compaq smart array | ||
60 | KERNEL=="cciss*", PROGRAM="raid-devfs.sh %k", NAME="%c{1}", SYMLINK+="%k" | ||
61 | KERNEL=="ida*", PROGRAM="raid-devfs.sh %k", NAME="%c{1}", SYMLINK+="%k" | ||
62 | |||
63 | # mylex | ||
64 | KERNEL=="rd*", PROGRAM="raid-devfs.sh %k", NAME="%c{1}", SYMLINK+="%k" | ||
65 | |||
66 | # dri devices | ||
67 | KERNEL=="card*", NAME="dri/card%n", GROUP="video" | ||
68 | KERNEL=="nvidia*", NAME="%k", GROUP="video" | ||
69 | KERNEL=="3dfx*", NAME="%k", GROUP="video" | ||
70 | |||
71 | # alsa devices | ||
72 | SUBSYSTEM=="sound", GROUP="audio" | ||
73 | KERNEL=="controlC[0-9]*", NAME="snd/%k" | ||
74 | KERNEL=="hw[CD0-9]*", NAME="snd/%k" | ||
75 | KERNEL=="pcm[CD0-9cp]*", NAME="snd/%k" | ||
76 | KERNEL=="midiC[D0-9]*", NAME="snd/%k" | ||
77 | KERNEL=="timer", NAME="snd/%k" | ||
78 | KERNEL=="seq", NAME="snd/%k" | ||
79 | |||
80 | # capi devices | ||
81 | KERNEL=="capi", NAME="capi20", SYMLINK+="isdn/capi20", GROUP="dialout" | ||
82 | KERNEL=="capi*", NAME="capi/%n", GROUP="dialout" | ||
83 | |||
84 | # cpu devices | ||
85 | KERNEL=="cpu[0-9]*", NAME="cpu/%n/cpuid" | ||
86 | KERNEL=="msr[0-9]*", NAME="cpu/%n/msr" | ||
87 | KERNEL=="microcode", NAME="cpu/microcode" | ||
88 | |||
89 | # dm devices (ignore them) | ||
90 | KERNEL=="dm-[0-9]*", OPTIONS="ignore_device" | ||
91 | # create a symlink named after the device map name | ||
92 | # note devmap_name comes with extras/multipath | ||
93 | #KERNEL=="dm-[0-9]*", PROGRAM="/sbin/devmap_name %M %m", NAME="%k", SYMLINK+="%c" | ||
94 | KERNEL=="device-mapper", NAME="mapper/control" | ||
95 | |||
96 | # fb devices | ||
97 | KERNEL=="fb[0-9]*", NAME="fb/%n", SYMLINK+="%k", GROUP="video" | ||
98 | |||
99 | # floppy devices | ||
100 | KERNEL=="fd[0-9]*", NAME="floppy/%n", SYMLINK+="%k", GROUP="floppy" | ||
101 | |||
102 | # i2c devices | ||
103 | KERNEL=="i2c-[0-9]*", NAME="i2c/%n", SYMLINK+="%k" | ||
104 | |||
105 | # input devices | ||
106 | KERNEL=="mice", NAME="input/%k", MODE="0644" | ||
107 | KERNEL=="mouse*", NAME="input/%k", MODE="0644" | ||
108 | KERNEL=="event*", NAME="input/%k", MODE="0600" | ||
109 | KERNEL=="js*", NAME="input/%k", MODE="664" | ||
110 | KERNEL=="ts*", NAME="input/%k", MODE="0600" | ||
111 | |||
112 | # loop devices | ||
113 | KERNEL=="loop[0-9]*", NAME="loop/%n", SYMLINK+="%k", GROUP="disk" | ||
114 | |||
115 | # md block devices | ||
116 | KERNEL=="md[0-9]*", NAME="md/%n", SYMLINK+="%k", GROUP="disk" | ||
117 | |||
118 | # aoe char devices, | ||
119 | SUBSYSTEM=="aoe", KERNEL=="discover", NAME="etherd/%k", GROUP="disk", MODE="0220" | ||
120 | SUBSYSTEM=="aoe", KERNEL=="err", NAME="etherd/%k", GROUP="disk", MODE="0440" | ||
121 | SUBSYSTEM=="aoe", KERNEL=="interfaces", NAME="etherd/%k", GROUP="disk", MODE="0220" | ||
122 | |||
123 | # misc devices | ||
124 | KERNEL=="agpgart", NAME="misc/%k", SYMLINK+="%k" | ||
125 | KERNEL=="psaux", NAME="misc/%k", SYMLINK+="%k" | ||
126 | KERNEL=="rtc", NAME="misc/%k", SYMLINK+="%k", MODE="0664" | ||
127 | KERNEL=="uinput", NAME="misc/%k", SYMLINK+="%k" | ||
128 | KERNEL=="inotify", NAME="misc/%k", SYMLINK+="%k", MODE="0666" | ||
129 | |||
130 | # netlink devices | ||
131 | KERNEL=="route", NAME="netlink/%k" | ||
132 | KERNEL=="skip", NAME="netlink/%k" | ||
133 | KERNEL=="usersock", NAME="netlink/%k" | ||
134 | KERNEL=="fwmonitor", NAME="netlink/%k" | ||
135 | KERNEL=="tcpdiag", NAME="netlink/%k" | ||
136 | KERNEL=="nflog", NAME="netlink/%k" | ||
137 | KERNEL=="xfrm", NAME="netlink/%k" | ||
138 | KERNEL=="arpd", NAME="netlink/%k" | ||
139 | KERNEL=="route6", NAME="netlink/%k" | ||
140 | KERNEL=="ip6_fw", NAME="netlink/%k" | ||
141 | KERNEL=="dnrtmsg", NAME="netlink/%k" | ||
142 | KERNEL=="tap*", NAME="netlink/%k" | ||
143 | |||
144 | # network devices | ||
145 | KERNEL=="tun", NAME="net/%k", MODE="0600" | ||
146 | |||
147 | # ramdisk devices | ||
148 | KERNEL=="ram[0-9]*", NAME="rd/%n", SYMLINK+="%k" | ||
149 | |||
150 | # IEEE1394 (firewire) devices (must be before raw devices below) | ||
151 | KERNEL=="raw1394", NAME="%k", GROUP="video" | ||
152 | KERNEL=="dv1394*", NAME="dv1394/%n", GROUP="video" | ||
153 | KERNEL=="video1394*", NAME="video1394/%n", GROUP="video" | ||
154 | |||
155 | # raw devices | ||
156 | KERNEL=="raw[0-9]*", NAME="raw/%k", GROUP="disk" | ||
157 | KERNEL=="ram*", NAME="%k", GROUP="disk" | ||
158 | |||
159 | # sound devices | ||
160 | KERNEL=="adsp", NAME="sound/%k", SYMLINK+="%k", GROUP="audio" | ||
161 | KERNEL=="adsp[0-9]*", NAME="sound/%k", SYMLINK+="%k", GROUP="audio" | ||
162 | KERNEL=="audio", NAME="sound/%k", SYMLINK+="%k", GROUP="audio" | ||
163 | KERNEL=="audio[0-9]*", NAME="sound/%k", SYMLINK+="%k", GROUP="audio" | ||
164 | KERNEL=="dsp", NAME="sound/%k", SYMLINK+="%k", GROUP="audio" | ||
165 | KERNEL=="dsp[0-9]*", NAME="sound/%k", SYMLINK+="%k", GROUP="audio" | ||
166 | KERNEL=="mixer", NAME="sound/%k", SYMLINK+="%k", GROUP="audio" | ||
167 | KERNEL=="mixer[0-9]*", NAME="sound/%k", SYMLINK+="%k", GROUP="audio" | ||
168 | KERNEL=="sequencer", NAME="sound/%k", SYMLINK+="%k", GROUP="audio" | ||
169 | KERNEL=="sequencer[0-9]*", NAME="sound/%k", SYMLINK+="%k", GROUP="audio" | ||
170 | |||
171 | # memory devices | ||
172 | KERNEL=="random", NAME="%k", MODE="0666" | ||
173 | KERNEL=="urandom", NAME="%k", MODE="0444" | ||
174 | KERNEL=="mem", NAME="%k", MODE="0640" | ||
175 | KERNEL=="kmem", NAME="%k", MODE="0640" | ||
176 | KERNEL=="port", NAME="%k", MODE="0640" | ||
177 | KERNEL=="full", NAME="%k", MODE="0666" | ||
178 | KERNEL=="null", NAME="%k", MODE="0666" | ||
179 | KERNEL=="zero", NAME="%k", MODE="0666" | ||
180 | |||
181 | # usb devices | ||
182 | KERNEL=="hiddev*", NAME="usb/%k" | ||
183 | KERNEL=="auer*", NAME="usb/%k" | ||
184 | KERNEL=="legousbtower*", NAME="usb/%k", GROUP="usb" | ||
185 | KERNEL=="dabusb*", NAME="usb/%k" | ||
186 | BUS=="usb", KERNEL=="lp[0-9]*", NAME="usb/%k", GROUP="lp" | ||
187 | |||
188 | # v4l devices | ||
189 | KERNEL=="video[0-9]*", NAME="v4l/video%n", SYMLINK+="video%n", GROUP="video" | ||
190 | KERNEL=="radio[0-9]*", NAME="v4l/radio%n", SYMLINK+="radio%n", GROUP="video" | ||
191 | KERNEL=="vbi[0-9]*", NAME="v4l/vbi%n", SYMLINK+="vbi%n", GROUP="video" | ||
192 | KERNEL=="vtx[0-9]*", NAME="v4l/vtx%n", GROUP="video" | ||
193 | |||
194 | # dvb devices | ||
195 | SUBSYSTEM=="dvb", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="video" | ||
196 | |||
197 | # Asterisk Zaptel devices | ||
198 | KERNEL=="zapctl", NAME="zap/ctl" | ||
199 | KERNEL=="zaptimer", NAME="zap/timer" | ||
200 | KERNEL=="zapchannel", NAME="zap/channel" | ||
201 | KERNEL=="zappseudo", NAME="zap/pseudo" | ||
202 | KERNEL=="zap[0-9]*", NAME="zap/%n" | ||
203 | |||
204 | # pilot/palm devices | ||
205 | KERNEL=="pilot", NAME="%k", GROUP="uucp" | ||
206 | |||
207 | # jaz devices | ||
208 | KERNEL=="jaz*", NAME="%k", GROUP="disk" | ||
209 | |||
210 | # zip devices | ||
211 | KERNEL=="pocketzip*", NAME="%k", GROUP="disk" | ||
212 | KERNEL=="zip*", NAME="%k", GROUP="disk" | ||
213 | |||
214 | # ls120 devices | ||
215 | KERNEL=="ls120", NAME="%k", GROUP="disk" | ||
216 | |||
217 | # lp devices | ||
218 | KERNEL=="lp*", NAME="%k", GROUP="lp" | ||
219 | KERNEL=="irlpt", NAME="%k", GROUP="lp" | ||
220 | KERNEL=="usblp", NAME="%k", GROUP="lp" | ||
221 | KERNEL=="lp*", NAME="%k", GROUP="lp" | ||
222 | KERNEL=="parport*", NAME="%k", GROUP="lp" | ||
223 | |||
224 | # tape devices | ||
225 | KERNEL=="ht*", NAME="%k", GROUP="tape" | ||
226 | KERNEL=="nht*", NAME="%k", GROUP="tape" | ||
227 | KERNEL=="pt*", NAME="%k", GROUP="tape" | ||
228 | KERNEL=="npt*", NAME="%k", GROUP="tape" | ||
229 | KERNEL=="st*", NAME="%k", GROUP="tape" | ||
230 | KERNEL=="nst*", NAME="%k", GROUP="tape" | ||
231 | KERNEL=="osst*", NAME="%k", GROUP="tape" | ||
232 | KERNEL=="nosst*", NAME="%k", GROUP="tape" | ||
233 | |||
234 | # diskonkey devices | ||
235 | KERNEL=="diskonkey*", NAME="%k", GROUP="disk" | ||
236 | |||
237 | # rem_ide devices | ||
238 | KERNEL=="microdrive*", NAME="%k", GROUP="disk" | ||
239 | |||
240 | # kbd devices | ||
241 | KERNEL=="kbd", NAME="%k", MODE="0664" | ||
242 | |||
243 | # Sony Vaio Jogdial sonypi device | ||
244 | KERNEL=="sonypi", NAME="%k", MODE="0666" | ||
245 | |||
246 | # packet devices | ||
247 | KERNEL=="pktcdvd", NAME="pktcdvd/control", GROUP="cdrw", MODE="0660" | ||
248 | KERNEL=="pktcdvd[0-9]*", NAME="pktcdvd/pktcdvd%n", GROUP="cdrw", MODE="0660" | ||
249 | |||
250 | # infiniband devices | ||
251 | KERNEL=="umad*", NAME="infiniband/%k" | ||
252 | KERNEL=="issm*", NAME="infiniband/%k" | ||
253 | |||
254 | # tpm devices | ||
255 | #KERNEL=="tpm*", NAME="%k", OWNER="tss", GROUP="tss", MODE="0600" | ||
256 | |||
257 | ####################################### | ||
258 | # Persistant block device stuff - begin | ||
259 | ####################################### | ||
260 | |||
261 | # Skip all of this if we are not adding a block device | ||
262 | ACTION!="add", GOTO="persistent_end" | ||
263 | SUBSYSTEM!="block", GOTO="persistent_end" | ||
264 | KERNEL=="ram*|loop*|fd*|nbd*", GOTO="persistent_end" | ||
265 | |||
266 | # skip accessing removable ide devices, cause the ide drivers are horrible broken | ||
267 | BUS=="ide", SYSFS{removable}="1", GOTO="no_volume_id" | ||
268 | BUS=="ide", SYSFS{../removable}="1", GOTO="no_volume_id" | ||
269 | |||
270 | # persistent disk device links /dev/disk/ | ||
271 | KERNEL=="hd*[!0-9]", IMPORT="/sbin/ata_id --export $tempnode" | ||
272 | KERNEL=="hd*[!0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/ata-$env{ID_MODEL}_$env{ID_SERIAL}" | ||
273 | KERNEL=="hd*[0-9]", IMPORT{parent}=="ID_*", SYMLINK+="disk/by-id/ata-$env{ID_MODEL}_$env{ID_SERIAL}-part%n" | ||
274 | |||
275 | KERNEL=="sd*[!0-9]", SYSFS{ieee1394_id}=="*", IMPORT="/bin/echo -e 'ID_SERIAL=$sysfs{ieee1394_id}\nID_BUS=ieee1394'" | ||
276 | KERNEL=="sd*[!0-9]", ENV{ID_SERIAL}=="", IMPORT="/sbin/usb_id -x" | ||
277 | KERNEL=="sd*[!0-9]", ENV{ID_SERIAL}=="", IMPORT="/sbin/scsi_id -g -x -s %p -d %N" | ||
278 | KERNEL=="sd*[!0-9]", ENV{ID_SERIAL}=="", IMPORT="/sbin/scsi_id -g -x -a -s %p -d %N" | ||
279 | KERNEL=="sd*[!0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}" | ||
280 | KERNEL=="sd*[0-9]", IMPORT{parent}=="ID_*" | ||
281 | KERNEL=="sd*[0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}-part%n" | ||
282 | |||
283 | # Skip id for ram / loop / fd | ||
284 | KERNEL=="ram*", GOTO="no_volume_id" | ||
285 | KERNEL=="loop*", GOTO="no_volume_id" | ||
286 | KERNEL=="fd*", GOTO="no_volume_id" | ||
287 | |||
288 | KERNEL=="*[!0-9]", ENV{ID_TYPE}=="?*", IMPORT="/sbin/path_id %p", SYMLINK+="disk/by-path/$env{ID_PATH}" | ||
289 | KERNEL=="*[0-9]", IMPORT{parent}=="ID_*" | ||
290 | KERNEL=="*[0-9]", ENV{ID_PATH}=="?*", SYMLINK+="disk/by-path/$env{ID_PATH}-part%n" | ||
291 | |||
292 | # volume-label/uuid | ||
293 | KERNEL=="*[!0-9]", SYSFS{removable}=="1", GOTO="no_volume_id" | ||
294 | KERNEL=="sr*", GOTO="no_volume_id" | ||
295 | KERNEL=="*[0-9]", IMPORT="/sbin/vol_id --export $tempnode" | ||
296 | KERNEL=="*[0-9]", ENV{ID_FS_UUID}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID}" | ||
297 | KERNEL=="*[0-9]", ENV{ID_FS_LABEL_SAFE}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_SAFE}" | ||
298 | LABEL="no_volume_id" | ||
299 | |||
300 | LABEL="persistent_end" | ||
301 | |||
302 | ##################################### | ||
303 | # Persistant block device stuff - end | ||
304 | ##################################### | ||
305 | |||
306 | # usbfs-like device nodes | ||
307 | SUBSYSTEM=="usb_device", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", NAME="%c", MODE="0644" | ||
308 | |||
309 | # be backward compatible for a while with the /etc/dev.d and /etc/hotplug.d/ systems | ||
310 | # run /etc/hotplug.d/ stuff only if we came from a hotplug event, not for udevstart | ||
311 | ENV{UDEVD_EVENT}=="1", RUN+="/sbin/udev_run_hotplugd $env{SUBSYSTEM}" | ||
312 | |||
313 | # always run /etc/dev.d/ stuff for now. | ||
314 | RUN+="/sbin/udev_run_devd $env{SUBSYSTEM}" | ||
315 | |||
316 | # debugging monitor | ||
317 | RUN+="socket:/org/kernel/udev/monitor" |