chiark / gitweb /
allow programs in /lib/udev called without the path
[elogind.git] / etc / udev / suse / 50-udev.rules
1 # ignore these events until someone needs them
2 SUBSYSTEM=="drivers",           OPTIONS="last_rule"
3 SUBSYSTEM=="module",            OPTIONS="last_rule"
4
5 # console
6 KERNEL=="pty[pqrstuvwxyzabcdef][0123456789abcdef]", NAME="%k", GROUP="tty", MODE="666", OPTIONS="last_rule"
7 KERNEL=="tty[pqrstuvwxyzabcdef][0123456789abcdef]", NAME="%k", GROUP="tty", MODE="666", OPTIONS="last_rule"
8 KERNEL=="vcs*",                 NAME="%k", GROUP="tty", MODE="620", OPTIONS="last_rule"
9 KERNEL=="vcsa*",                NAME="%k", GROUP="tty", MODE="620", OPTIONS="last_rule"
10 KERNEL=="tty",                  NAME="%k", GROUP="tty", MODE="666", OPTIONS="last_rule"
11 KERNEL=="tty[0-9]*",            NAME="%k", GROUP="tty", MODE="620", OPTIONS="last_rule"
12 KERNEL=="console",              NAME="%k", MODE="600", OPTIONS="last_rule"
13 KERNEL=="ptmx",                 NAME="%k", GROUP="tty", MODE="666", OPTIONS="last_rule"
14
15 # serial devices
16 KERNEL=="tty[A-Z]*",            NAME="%k", GROUP="uucp"
17 KERNEL=="pppox*",               NAME="%k", GROUP="uucp"
18 KERNEL=="ircomm*",              NAME="%k", GROUP="uucp"
19 KERNEL=="modems/mwave*",        NAME="%k", GROUP="uucp"
20 KERNEL=="hvc*",                 NAME="%k", GROUP="uucp"
21 KERNEL=="hvsi*",                NAME="%k", GROUP="uucp"
22 KERNEL=="iseries/vtty*",        NAME="%k", GROUP="uucp"
23 KERNEL=="ttyUSB*", SYSFS{product}=="Palm Handheld*", SYMLINK+="pilot"
24
25 # video/graphics
26 SUBSYSTEM=="video4linux",       GROUP="video"
27 SUBSYSTEM=="graphics"           GROUP="video"
28 KERNEL=="vtx*",                 NAME="%k", GROUP="video"
29 KERNEL=="vbi*",                 NAME="%k", GROUP="video"
30 KERNEL=="winradio*",            NAME="%k", GROUP="video"
31 KERNEL=="vttuner*",             NAME="%k", GROUP="video"
32 KERNEL=="nvidia*",              NAME="%k", GROUP="video"
33 KERNEL=="nvidiactl*",           NAME="%k", GROUP="video"
34 KERNEL=="video0",               SYMLINK+="video"
35 KERNEL=="radio0",               SYMLINK+="radio"
36 KERNEL=="vbi0",                 SYMLINK+="vbi"
37 KERNEL=="pmu",                  GROUP="video"
38
39 # dvb
40 SUBSYSTEM="dvb", PROGRAM="/bin/sh -c 'X=%k; X=$${X#dvb}; A=$${X%%%%.*}; D=$${X#*.}; echo dvb/adapter$$A/$$D'", NAME="%c", GROUP="video"
41
42 # Kino jogshuttle support
43 SUBSYSTEM=="usb", ACTION=="add", ENV{PRODUCT}=="b33/10/*", RUN+="/usr/bin/killall --quiet -USR2 kino"
44 SUBSYSTEM=="usb", ACTION=="add", ENV{PRODUCT}=="5f3/240/*", RUN+="/usr/bin/killall --quiet -USR2 kino"
45
46 # input devices
47 KERNEL=="mice",                 NAME="input/%k", MODE="0640"
48 KERNEL=="mouse*",               NAME="input/%k", MODE="0640"
49 KERNEL=="event*",               NAME="input/%k", MODE="0640"
50 KERNEL=="js*",                  NAME="input/%k", MODE="0644"
51 KERNEL=="ts*",                  NAME="input/%k", MODE="0600"
52 KERNEL=="uinput",               NAME="input/%k", MODE="0600"
53 KERNEL=="lirc0",                NAME="%k", SYMLINK+="lirc"
54 KERNEL=="input[0-9]*",          RUN+="/lib/udev/input_device.sh"
55 KERNEL=="input[0-9]*",          ACTION=="add", ENV{ABS}=="[1-9]*", RUN+="/sbin/modprobe joydev"
56
57 # printer
58 SUBSYSTEM=="usb",               KERNEL=="lp*", NAME="usb/%k", SYMLINK+="usb%k", GROUP="lp"
59 SUBSYSTEM=="printer",           KERNEL=="lp*", NAME="%k", GROUP="lp"
60 KERNEL=="irlpt*",               NAME="%k", GROUP="lp"
61
62 # cpu devices
63 KERNEL=="cpu[0-9]*",            NAME="cpu/%n/cpuid"
64 KERNEL=="msr[0-9]*",            NAME="cpu/%n/msr"
65 KERNEL=="microcode",            NAME="cpu/microcode", MODE="0600"
66
67 # IEEE1394 devices
68 KERNEL=="raw1394*",             NAME="%k", GROUP="video"
69 KERNEL=="dv1394*",              NAME="%k", SYMLINK+="dv1394/%n", GROUP="video"
70 KERNEL=="video1394*",           NAME="%k", SYMLINK+="video1394/%n", GROUP="video"
71
72 # 183 = /dev/hwrng        Generic random number generator
73 KERNEL=="hw_random",            NAME="hwrng", SYMLINK+="%k"
74 # 219 /dev/modems/mwave MWave modem firmware upload
75 KERNEL=="mwave",                NAME="modems/%k"
76 # 169 /dev/specialix_rioctl Specialix RIO serial control
77 KERNEL=="rioctl",               NAME="specialix_rioctl", SYMLINK+="%k"
78 # 167 /dev/specialix_sxctl Specialix serial control
79 KERNEL=="sxctl",                NAME="specialix_sxctl", SYMLINK+="%k"
80
81 # misc devices
82 KERNEL=="mem",                  NAME="%k", GROUP="kmem", MODE="640"
83 KERNEL=="kmem",                 NAME="%k", GROUP="kmem", MODE="640"
84 KERNEL=="port",                 NAME="%k", GROUP="kmem", MODE="640"
85 KERNEL=="nvram",                NAME="%k", GROUP="kmem", MODE="600"
86 KERNEL=="null",                 NAME="%k", MODE="666"
87 KERNEL=="zero",                 NAME="%k", MODE="666"
88 KERNEL=="full",                 NAME="%k", MODE="622"
89 KERNEL=="random",               NAME="%k", MODE="666"
90 KERNEL=="urandom",              NAME="%k", MODE="644"
91 KERNEL=="rtc",                  GROUP="audio"
92 KERNEL=="sonypi",               MODE="0666"
93 KERNEL=="agpgart",              MODE="0600", GROUP="video"
94 KERNEL=="djs*",                 NAME="%k", MODE="644"
95 KERNEL=="sgi_*",                NAME="%k", MODE="666"
96 KERNEL=="rrom*",                NAME="%k", MODE="400"
97 KERNEL=="rflash*",              NAME="%k", MODE="400"
98 KERNEL=="usbscanner*",          NAME="%k", MODE="644"
99 KERNEL=="3270/ttycons*",        NAME="%k", MODE="600"
100 KERNEL=="3270/tub*",            NAME="%k", MODE="666"
101 KERNEL=="3270/tubcons*",        NAME="%k", MODE="600"
102 KERNEL=="ica",                  NAME="%k", MODE="666"
103 KERNEL=="z90crypt",             NAME="%k", MODE="666"
104 KERNEL=="mmtimer",              NAME="%k", MODE="444"
105 KERNEL=="auer[0-9]*"            NAME="usb/%k"
106
107 KERNEL=="pktcdvd",              NAME="pktcdvd/control"
108 KERNEL=="pktcdvd[0-9]*",        NAME="pktcdvd/%k"
109
110 # fix floppy devices
111 KERNEL=="nvram", ACTION=="add", RUN+="/lib/udev/load_floppy_module.sh"
112 KERNEL=="fd*", ACTION=="add", SYSFS{device/cmos}=="*", RUN+="/lib/udev/create_floppy_devices -c -t $sysfs{device/cmos} -m %M /dev/%k"
113 KERNEL=="fd*", ACTION=="remove", RUN+="/lib/udev/remove_floppy_devices.sh %k"
114
115 # block devices
116 SUBSYSTEM=="block", GROUP="disk", MODE="0640"
117
118 # sd:           0 TYPE_DISK, 7 TYPE_MOD, 14 TYPE_RBC
119 # sr:           4 TYPE_WORM, 5 TYPE_ROM
120 # st/osst:      1 TYPE_TAPE
121 ACTION=="add", SUBSYSTEM="scsi" , SYSFS{type}=="0|7|14", RUN+="/bin/sh -c 'echo 60 > /sys/$DEVPATH/timeout'"
122 ACTION=="add", SUBSYSTEM="scsi" , SYSFS{type}=="1", RUN+="/bin/sh -c 'echo 900 > /sys/$DEVPATH/timeout'"
123 SUBSYSTEM=="scsi_device", ACTION=="add", SYSFS{device/type}=="0|7|14", RUN+="/sbin/modprobe sd_mod"
124 # Treat osst as a unique case, that is, osst will load more often than
125 SUBSYSTEM=="scsi_device", ACTION=="add", SYSFS{device/type}=="1", SYSFS{device/vendor}=="OnStream", RUN+="/sbin/modprobe osst"
126 SUBSYSTEM=="scsi_device", ACTION=="add", SYSFS{device/type}=="1", RUN+="/sbin/modprobe st"
127 SUBSYSTEM=="scsi_device", ACTION=="add", SYSFS{device/type}=="[45]", RUN+="/sbin/modprobe sr_mod"
128 SUBSYSTEM=="scsi_device", ACTION=="add", RUN+="/sbin/modprobe sg"
129
130 # IDE/ATAPI handling
131 SUBSYSTEM=="ide", ACTION=="add", RUN+="/lib/udev/load_ide_modules.sh"
132
133 # device mapper
134 KERNEL=="device-mapper", ACTION=="add", NAME="%k", SYMLINK+="mapper/control"
135
136 # check fstab and possibly mount
137 SUBSYSTEM=="block", KERNEL=="sd*[0-9]|hd*[0-9]", ACTION=="add", RUN+="/lib/udev/mount.sh"
138
139 # misc storage devices (non-block)
140 KERNEL=="sg*",                  NAME="%k", GROUP="disk", MODE="640"
141 KERNEL=="st*",                  NAME="%k", GROUP="disk"
142 KERNEL=="nst*",                 NAME="%k", GROUP="disk"
143 KERNEL=="initrd",               NAME="%k", GROUP="disk"
144 KERNEL=="qft*",                 NAME="%k", GROUP="disk"
145 KERNEL=="nqft*",                NAME="%k", GROUP="disk"
146 KERNEL=="zqft*",                NAME="%k", GROUP="disk"
147 KERNEL=="nzqft*",               NAME="%k", GROUP="disk"
148 KERNEL=="rawqft*",              NAME="%k", GROUP="disk"
149 KERNEL=="nrawqft*",             NAME="%k", GROUP="disk"
150 KERNEL=="pf*",                  NAME="%k", GROUP="disk"
151 KERNEL=="sch*",                 NAME="%k", GROUP="disk"
152 KERNEL=="pt*",                  NAME="%k", GROUP="disk"
153 KERNEL=="npt*",                 NAME="%k", GROUP="disk"
154 KERNEL=="pg*",                  NAME="%k", GROUP="disk"
155 KERNEL=="evms/block_device*",   NAME="%k", GROUP="disk"
156 KERNEL=="rawctl*",              NAME="%k", GROUP="disk"
157 KERNEL=="osst*",                NAME="%k", GROUP="disk"
158 KERNEL=="nosst*",               NAME="%k", GROUP="disk"
159 KERNEL=="iseries/vt*",          NAME="%k", GROUP="disk"
160 KERNEL=="iseries/nvt*",         NAME="%k", GROUP="disk"
161 KERNEL=="iseries/ibmsis*",      NAME="%k", GROUP="disk"
162
163 # libusb device access
164 SUBSYSTEM="usb_device", PROGRAM="/bin/sh -c 'X=%k X=$${X#usbdev}; B=$${X%%%%.*}; D=$${X#*.}; echo bus/usb/$$B/$$D'", SYMLINK+="%c"
165
166 # firmware loader
167 SUBSYSTEM=="firmware", ACTION=="add", RUN+="/lib/udev/firmware.sh"
168