2 KERNEL=="pty[pqrstuvwxyzabcdef][0123456789abcdef]", GROUP="tty", MODE="666", OPTIONS="last_rule"
3 KERNEL=="tty[pqrstuvwxyzabcdef][0123456789abcdef]", GROUP="tty", MODE="666", OPTIONS="last_rule"
4 KERNEL=="vcs*", GROUP="tty", MODE="620", OPTIONS="last_rule"
5 KERNEL=="vcsa*", GROUP="tty", MODE="620", OPTIONS="last_rule"
6 KERNEL=="tty", GROUP="tty", MODE="666", OPTIONS="last_rule"
7 KERNEL=="tty[0-9]*", GROUP="tty", MODE="620", OPTIONS="last_rule"
8 KERNEL=="console", MODE="600", OPTIONS="last_rule"
9 KERNEL=="ptmx", GROUP="tty", MODE="666", OPTIONS="last_rule"
12 KERNEL=="tty[A-Z]*", GROUP="uucp"
13 KERNEL=="pppox*", GROUP="uucp"
14 KERNEL=="ircomm*", GROUP="uucp"
15 KERNEL=="modems/mwave*", GROUP="uucp"
16 KERNEL=="hvc*|hvsi*", GROUP="uucp"
17 KERNEL=="iseries/vtty*", GROUP="uucp"
18 KERNEL=="ttyUSB*", ATTRS{product}=="[Pp]alm*Handheld*", SYMLINK+="pilot"
19 KERNEL=="ttyUSB*", ATTRS{product}=="[Hh]andspring*Treo*|[Hh]andspring*Visor*", SYMLINK+="pilot"
22 SUBSYSTEM=="video4linux", GROUP="video"
23 SUBSYSTEM=="graphics" GROUP="video"
24 KERNEL=="vtx*|vbi*", GROUP="video"
25 KERNEL=="winradio*", GROUP="video"
26 KERNEL=="vttuner*", GROUP="video"
27 KERNEL=="nvidia*|nvidiactl*", GROUP="video"
28 KERNEL=="video0", SYMLINK+="video"
29 KERNEL=="radio0", SYMLINK+="radio"
30 KERNEL=="vbi0", SYMLINK+="vbi"
31 KERNEL=="pmu", GROUP="video"
34 SUBSYSTEM=="dvb", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="video"
37 KERNEL=="mouse*|mice", NAME="input/%k", MODE="0640"
38 KERNEL=="event*", NAME="input/%k", MODE="0640"
39 KERNEL=="js*", NAME="input/%k", MODE="0644"
40 KERNEL=="ts*", NAME="input/%k", MODE="0600"
41 KERNEL=="uinput", NAME="input/%k", MODE="0600"
42 KERNEL=="lirc0", SYMLINK+="lirc"
45 SUBSYSTEM=="usb", KERNEL=="lp*", NAME="usb/%k", SYMLINK+="usb%k", GROUP="lp"
46 SUBSYSTEM=="printer", KERNEL=="lp*", GROUP="lp"
47 KERNEL=="irlpt*", GROUP="lp"
50 KERNEL=="cpu[0-9]*", NAME="cpu/%n/cpuid"
51 KERNEL=="msr[0-9]*", NAME="cpu/%n/msr"
52 KERNEL=="microcode", NAME="cpu/microcode", MODE="0600"
55 KERNEL=="raw1394*", GROUP="video"
56 KERNEL=="dv1394*", SYMLINK+="dv1394/%n", GROUP="video"
57 KERNEL=="video1394*", SYMLINK+="video1394/%n", GROUP="video"
59 KERNEL=="hw_random", NAME="hwrng", SYMLINK+="%k"
60 KERNEL=="mwave", NAME="modems/%k"
61 KERNEL=="rioctl", NAME="specialix_rioctl", SYMLINK+="%k"
62 KERNEL=="sxctl", NAME="specialix_sxctl", SYMLINK+="%k"
65 KERNEL=="tun", NAME="net/%k", MODE="0666"
68 KERNEL=="mem|kmem", GROUP="kmem", MODE="640"
69 KERNEL=="port", GROUP="kmem", MODE="640"
70 KERNEL=="nvram", GROUP="kmem", MODE="600"
71 KERNEL=="null", MODE="666"
72 KERNEL=="zero", MODE="666"
73 KERNEL=="full", MODE="622"
74 KERNEL=="random", MODE="666"
75 KERNEL=="urandom", MODE="644"
76 KERNEL=="rtc", MODE="600"
77 KERNEL=="sonypi", MODE="0666"
78 KERNEL=="agpgart", MODE="0600", GROUP="video"
79 KERNEL=="djs*", MODE="644"
80 KERNEL=="sgi_*", MODE="666"
81 KERNEL=="rrom*", MODE="400"
82 KERNEL=="rflash*", MODE="400"
83 KERNEL=="usbscanner*", MODE="644"
84 KERNEL=="3270/ttycons*", MODE="600"
85 KERNEL=="3270/tub*", MODE="666"
86 KERNEL=="3270/tubcons*", MODE="600"
87 KERNEL=="ica", MODE="666"
88 KERNEL=="z90crypt", MODE="666"
89 KERNEL=="mmtimer", MODE="644"
90 KERNEL=="auer[0-9]*" NAME="usb/%k"
92 # packet writing interface
93 KERNEL=="pktcdvd", NAME="pktcdvd/control"
94 KERNEL=="pktcdvd[0-9]*", NAME="pktcdvd/%k"
97 KERNEL=="nvram", ACTION=="add", RUN+="load_floppy_module.sh"
98 KERNEL=="fd[0-9]*", ACTION=="add", ATTRS{cmos}=="*", RUN+="create_floppy_devices -c -t $attr{cmos} -m %M $root/%k"
99 KERNEL=="fd[0-9]*", ACTION=="remove", RUN+="/bin/rm -f $root/%k*"
102 SUBSYSTEM=="block", GROUP="disk", MODE="0640"
104 # sd: 0 TYPE_DISK, 7 TYPE_MOD, 14 TYPE_RBC
105 # sr: 4 TYPE_WORM, 5 TYPE_ROM
106 # st/osst: 1 TYPE_TAPE
107 SUBSYSTEM=="scsi", ACTION=="add", ATTR{type}=="0|7|14", ATTR{timeout}="60"
108 SUBSYSTEM=="scsi", ACTION=="add", ATTR{type}=="1", ATTR{timeout}="900"
109 SUBSYSTEM=="scsi_device", ACTION=="add", ATTRS{type}=="0|7|14", RUN+="/sbin/modprobe sd_mod"
110 SUBSYSTEM=="scsi_device", ACTION=="add", ATTRS{type}=="1", ATTR{vendor}=="On[sS]tream", RUN+="/sbin/modprobe osst"
111 SUBSYSTEM=="scsi_device", ACTION=="add", ATTRS{type}=="1", RUN+="/sbin/modprobe st"
112 SUBSYSTEM=="scsi_device", ACTION=="add", ATTRS{type}=="[45]", RUN+="/sbin/modprobe sr_mod"
113 SUBSYSTEM=="scsi_device", ACTION=="add", RUN+="/sbin/modprobe sg"
114 KERNEL=="hd*", SUBSYSTEMS=="ide", ATTRS{media}=="floppy", OPTIONS+="all_partitions"
115 SUBSYSTEM=="ide", ACTION=="add", ATTR{media}=="tape", RUN+="/sbin/modprobe ide-scsi"
117 SUBSYSTEM=="mmc", RUN+="/sbin/modprobe mmc_block"
119 # misc storage devices (non-block)
120 KERNEL=="sg*", GROUP="disk", MODE="640"
121 KERNEL=="st*|nst*", GROUP="disk"
122 KERNEL=="qft*|nqft*|zqft*|nzqft*|rawqft*|nrawqft", GROUP="disk"
123 KERNEL=="ht*|nht*", GROUP="disk"
124 KERNEL=="pf*", GROUP="disk"
125 KERNEL=="sch*", GROUP="disk"
126 KERNEL=="pt*|npt*", GROUP="disk"
127 KERNEL=="pg*", GROUP="disk"
128 KERNEL=="evms/block_device*", GROUP="disk"
129 KERNEL=="rawctl*|raw[0-9]*", NAME="raw/%k", GROUP="disk"
130 KERNEL=="osst*|nosst*", NAME="%k", GROUP="disk"
131 KERNEL=="iseries/vt*", NAME="%k", GROUP="disk"
132 KERNEL=="iseries/nvt*", NAME="%k", GROUP="disk"
133 KERNEL=="iseries/ibmsis*", NAME="%k", GROUP="disk"
135 # libusb device access
136 SUBSYSTEM=="usb_device", ACTION=="add", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", NAME="%c", MODE="0644"
138 # kernel firmware loader
139 SUBSYSTEM=="firmware", ACTION=="add", RUN+="firmware.sh"