chiark / gitweb /
fix cdrom symlink problem in gentoo rules
[elogind.git] / etc / udev / debian / devfs.rules
index 8d305cd657ddd262c0ba668eb380315075c33212..89e0db2aace799b7e234b844957c15eb1bb4d3a0 100644 (file)
 # %n the "kernel number" of the device.
 #    For example, 'sda3' has a "kernel number" of '3'
 # %e the smallest number for that name which does not matches an existing node
-# %k the kernel name for the device.
+# %k the kernel name for the device
 # %M the kernel major number for the device
 # %m the kernel minor number for the device
 # %b the bus id for the device
 # %c the string returned by the PROGRAM
-# %s{filename} the content of a sysfs attribute.
-# %% the '%' char itself.
+# %s{filename} the content of a sysfs attribute
+# %% the '%' char itself
 #
 
-# IDE block devices
-BUS="ide", KERNEL="hd[a-z]*", PROGRAM="/etc/udev/scripts/ide-devfs.sh %k %b %n", NAME="%c{1}", SYMLINK="%k %c{2}"
-
-# permissions for SCSI CD devices
-BUS="scsi", KERNEL="s[grt][0-9]*", SYSFS{type}="5", PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", NAME="%c{1}", SYMLINK="%k %c{2}", MODE="0660", GROUP="cdrom"
-
-# SCSI block devices
-BUS="scsi", KERNEL="sd[a-z]",          PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", NAME="%c{1}", SYMLINK="%k %c{2}"
-BUS="scsi", KERNEL="sd[a-z][0-9]*",    PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", NAME="%c{1}", SYMLINK="%k %c{2}"
-BUS="scsi", KERNEL="sd[a-i][a-z]",     PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", NAME="%c{1}", SYMLINK="%k %c{2}"
-BUS="scsi", KERNEL="sd[a-i][a-z][0-9]*", PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", NAME="%c{1}", SYMLINK="%k %c{2}"
-BUS="scsi", KERNEL="s[grt][0-9]*",     PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", NAME="%c{1}", SYMLINK="%k %c{2}"
-BUS="scsi", KERNEL="scd[0-9]*",                PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", NAME="%c{1}", SYMLINK="%k %c{2}"
-BUS="scsi", KERNEL="st[0-9]*",         PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", NAME="%c{1}", SYMLINK="%k %c{2}"
-BUS="scsi", KERNEL="nst[0-9]*",                PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", NAME="%c{1}", SYMLINK="%k %c{2}"
+# workaround for devices which do not report media changes
+BUS=="ide", KERNEL=="hd[a-z]", SYSFS{removable}=="1", \
+  PROGRAM="/etc/udev/scripts/ide-model.sh %k", RESULT=="IOMEGA ZIP *", \
+                               NAME="%k", OPTIONS+="all_partitions"
+
+# IDE devices
+BUS=="ide", KERNEL=="hd[a-z]*", \
+  PROGRAM="/etc/udev/scripts/ide-devfs.sh %k %b %n", \
+                               NAME="%c{1}", SYMLINK+="%k %c{2}"
+
+# SCSI devices
+BUS=="scsi",           PROGRAM="/etc/udev/scripts/scsi-devfs.sh %k %b %n", \
+                               NAME="%c{1}", SYMLINK+="%k %c{2}"
+
+# RAID controllers
+KERNEL=="cciss!*",     PROGRAM="/etc/udev/scripts/raid-devfs.sh %k", \
+                               NAME="%c{1}", SYMLINK+="%k"
+KERNEL=="ida!*",       PROGRAM="/etc/udev/scripts/raid-devfs.sh %k", \
+                               NAME="%c{1}", SYMLINK+="%k"
+KERNEL=="rd!*",                PROGRAM="/etc/udev/scripts/raid-devfs.sh %k", \
+                               NAME="%c{1}", SYMLINK+="%k"
+
+# other block devices
+KERNEL=="md[0-9]*",            NAME="md/%n",
+KERNEL=="loop[0-9]*",          NAME="loop/%n"
+KERNEL=="ram[0-9]*",           NAME="rd/%n"
 
 # USB devices
-BUS="usb", KERNEL="hiddev*",   NAME="usb/%k"
-BUS="usb", KERNEL="auer*",     NAME="usb/%k"
-BUS="usb", KERNEL="legousbtower*", NAME="usb/%k"
-BUS="usb", KERNEL="dabusb*",   NAME="usb/%k"
-BUS="usb", KERNEL="lp[0-9]*",  NAME="usb/%k"
-BUS="usb", KERNEL="cpad[0-9]*",        NAME="usb/%k"
-
-# block devices
-KERNEL="md[0-9]*",     NAME="md/%n",
-KERNEL="loop[0-9]*",   NAME="loop/%n"
-
-# tty devices
-KERNEL="tty[0-9]*",    NAME="vc/%n"
-KERNEL="ttyS[0-9]*",   NAME="tts/%n"
-KERNEL="ttyUSB[0-9]*", NAME="tts/USB%n"
-KERNEL="rfcomm[0-9]*", NAME="bluetooth/rfcomm/%n"
+BUS=="usb", KERNEL=="auer[0-9]*",      NAME="usb/%k"
+BUS=="usb", KERNEL=="cpad[0-9]*",      NAME="usb/%k"
+BUS=="usb", KERNEL=="dabusb*",         NAME="usb/%k"
+BUS=="usb", KERNEL=="hiddev*",         NAME="usb/%k"
+BUS=="usb", KERNEL=="legousbtower*",   NAME="usb/%k"
+BUS=="usb", KERNEL=="lp[0-9]*",                NAME="usb/%k"
+BUS=="usb", KERNEL=="ttyUSB*", SYSFS{product}=="Palm Handheld*", \
+                                       SYMLINK+="pilot"
+
+# serial devices
+KERNEL=="ttyS[0-9]*",          NAME="tts/%n"
+KERNEL=="ttyUSB[0-9]*",                NAME="tts/USB%n"
+KERNEL=="rfcomm[0-9]*",                NAME="bluetooth/rfcomm/%n",
+KERNEL=="capi",                        NAME="capi20", SYMLINK+="isdn/capi20"
+KERNEL=="capi[0-9]*",          NAME="capi/%n"
 
 # vc devices
-KERNEL="vcs",          NAME="vcc/0"
-KERNEL="vcs[0-9]*",    NAME="vcc/%n"
-KERNEL="vcsa",         NAME="vcc/a0"
-KERNEL="vcsa[0-9]*",   NAME="vcc/a%n"
-KERNEL="fb[0-9]*",     NAME="fb/%n",
-
-# v4l devices
-KERNEL="video[0-9]*",  NAME="v4l/video%n"
-KERNEL="radio[0-9]*",  NAME="v4l/radio%n"
-KERNEL="vbi[0-9]*",    NAME="v4l/vbi%n"
-KERNEL="vtx[0-9]*",    NAME="v4l/vtx%n"
-KERNEL="dvb*",         PROGRAM="/etc/udev/scripts/dvb.sh %k", NAME="%c"
+KERNEL=="tty[0-9]*",           NAME="vc/%n"
+KERNEL=="vcs",                 NAME="vcc/0"
+KERNEL=="vcs[0-9]*",           NAME="vcc/%n"
+KERNEL=="vcsa",                        NAME="vcc/a0"
+KERNEL=="vcsa[0-9]*",          NAME="vcc/a%n"
+
+# video devices
+KERNEL=="video[0-9]*",         NAME="v4l/%k"
+KERNEL=="radio[0-9]*",         NAME="v4l/%k"
+KERNEL=="vbi[0-9]*",           NAME="v4l/%k"
+KERNEL=="vtx[0-9]*",           NAME="v4l/%k"
+KERNEL=="dvb*",                        PROGRAM="/etc/udev/scripts/dvb.sh %k", \
+                               NAME="%c"
+KERNEL=="fb[0-9]*",            NAME="fb/%n"
+KERNEL=="card[0-9]*",          NAME="dri/%k"
 
 # misc devices
-KERNEL="apm_bios",     NAME="misc/apm_bios",
-KERNEL="agpgart",      NAME="misc/agpgart",
-KERNEL="nvram",                NAME="misc/nvram"
-KERNEL="psaux",                NAME="misc/psaux"
-KERNEL="rtc",          NAME="misc/rtc"
-
-KERNEL="card[0-9]*",   NAME="dri/card%n"
-KERNEL="i2c-[0-9]*",   NAME="i2c/%n"
-KERNEL="ram[0-9]*",    NAME="rd/%n"
-KERNEL="lp[0-9]*",     NAME="printers/%n"
-KERNEL="fd[0-9]*",     NAME="floppy/%n",
-KERNEL="cdemu[0-9]*",  NAME="cdemu/%n"
-KERNEL="pktcdvd[0-9]*",        NAME="pktcdvd/%n"
-KERNEL="pktcdvd",      NAME="pktcdvd/control"
-KERNEL="cpu[0-9]*",    NAME="cpu/%n/cpuid"
-KERNEL="msr[0-9]*",    NAME="cpu/%n/msr"
-KERNEL="microcode",    NAME="cpu/microcode"
+KERNEL=="apm_bios",            NAME="misc/%k",
+KERNEL=="agpgart",             NAME="misc/%k"
+KERNEL=="hw_random",           NAME="hwrng"
+KERNEL=="nvram",               NAME="misc/%k"
+KERNEL=="psaux",               NAME="misc/%k"
+KERNEL=="rtc",                 NAME="misc/%k"
+KERNEL=="tun",                 NAME="net/%k"
 
-# sound devices
-KERNEL="controlC[0-9]*", NAME="snd/%k"
-KERNEL="hwC[D0-9]*",   NAME="snd/%k"
-KERNEL="pcmC[D0-9cp]*",        NAME="snd/%k"
-KERNEL="midiC[D0-9]*", NAME="snd/%k"
-KERNEL="timer",                NAME="snd/%k"
-KERNEL="seq",          NAME="snd/%k"
-KERNEL="audio*",       NAME="sound/%k"
-KERNEL="dsp*",         NAME="sound/%k"
-KERNEL="adsp*",                NAME="sound/%k"
-KERNEL="midi*",                NAME="sound/%k"
-KERNEL="mixer*",       NAME="sound/%k"
-KERNEL="sequencer*",   NAME="sound/%k"
-KERNEL="amidi*",       NAME="sound/%k"
-KERNEL="dmmidi*",      NAME="sound/%k"
-KERNEL="admmidi*",     NAME="sound/%k"
+# printers and parallel devices
+KERNEL=="lp[0-9]*",            NAME="printers/%n"
+KERNEL=="parport[0-9]*",       NAME="parports/%n"
 
-# input devices
-KERNEL="mice",         NAME="input/%k"
-KERNEL="mouse[0-9]*",  NAME="input/%k"
-KERNEL="event[0-9]*",   NAME="input/%k", PROGRAM="/etc/udev/scripts/inputdev.sh %k", RESULT="inputdev", MODE="0664", GROUP="video"
-KERNEL="event[0-9]*",  NAME="input/%k"
-KERNEL="js[0-9]*",     NAME="input/%k"
-KERNEL="ts[0-9]*",     NAME="input/%k"
-KERNEL="uinput",       NAME="input/%k"
+KERNEL=="i2c-[0-9]*",          NAME="i2c/%n"
+KERNEL=="fd[0-9]*",            NAME="floppy/%n"
+
+KERNEL=="cdemu[0-9]*",         NAME="cdemu/%n"
+KERNEL=="pktcdvd[0-9]*",       NAME="pktcdvd/%n"
+KERNEL=="pktcdvd",             NAME="pktcdvd/control"
 
-KERNEL="tap[0-9]*",    NAME="net/%k"
-KERNEL="tun",          NAME="net/%k"
+KERNEL=="cpu[0-9]*",           NAME="cpu/%n/cpuid"
+KERNEL=="msr[0-9]*",           NAME="cpu/%n/msr"
+KERNEL=="microcode",           NAME="cpu/microcode"
 
-# CAPI devices
-KERNEL="capi",         NAME="capi20", SYMLINK="isdn/capi20"
-KERNEL="capi[0-9]*",   NAME="capi/%n"
+KERNEL=="umad*",               NAME="infiniband/%k"
+KERNEL=="issm*",               NAME="infiniband/%k"
+
+# sound devices
+KERNEL=="controlC[0-9]*",      NAME="snd/%k"
+KERNEL=="hwC[D0-9]*",          NAME="snd/%k"
+KERNEL=="pcmC[D0-9cp]*",       NAME="snd/%k"
+KERNEL=="midiC[D0-9]*",                NAME="snd/%k"
+KERNEL=="timer",               NAME="snd/%k"
+KERNEL=="seq",                 NAME="snd/%k"
+KERNEL=="audio*",              NAME="sound/%k"
+KERNEL=="dsp*",                        NAME="sound/%k"
+KERNEL=="adsp*",               NAME="sound/%k"
+KERNEL=="midi*",               NAME="sound/%k"
+KERNEL=="mixer*",              NAME="sound/%k"
+KERNEL=="sequencer*",          NAME="sound/%k"
+KERNEL=="amidi*",              NAME="sound/%k"
+KERNEL=="dmmidi*",             NAME="sound/%k"
+KERNEL=="admmidi*",            NAME="sound/%k"
+
+# ieee1394 devices       
+KERNEL=="dv1394*",             NAME="dv1394/%n"
+KERNEL=="video1394*",          NAME="video1394/%n"
+
+# input devices
+KERNEL=="mice",                        NAME="input/%k"
+KERNEL=="mouse[0-9]*",         NAME="input/%k"
+KERNEL=="event[0-9]*",         NAME="input/%k"
+KERNEL=="js[0-9]*",            NAME="input/%k"
+KERNEL=="ts[0-9]*",            NAME="input/%k"
+KERNEL=="uinput",              NAME="input/%k"
 
 # Zaptel
-KERNEL="zapctl",       NAME="zap/ctl"
-KERNEL="zaptimer",     NAME="zap/timer"
-KERNEL="zapchannel",   NAME="zap/channel"
-KERNEL="zappseudo",    NAME="zap/pseudo"
-KERNEL="zap[0-9]*",    NAME="zap/%n"
+KERNEL=="zapctl",              NAME="zap/ctl"
+KERNEL=="zaptimer",            NAME="zap/timer"
+KERNEL=="zapchannel",          NAME="zap/channel"
+KERNEL=="zappseudo",           NAME="zap/pseudo"
+KERNEL=="zap[0-9]*",           NAME="zap/%n"
+
+# AOE character devices
+SUBSYSTEM=="aoe", KERNEL=="discover",  NAME="etherd/%k"
+SUBSYSTEM=="aoe", KERNEL=="err",       NAME="etherd/%k"
+SUBSYSTEM=="aoe", KERNEL=="interfaces",        NAME="etherd/%k"
 
 # device mapper creates its own device nodes, so ignore these
-KERNEL="dm-[0-9]*",    NAME=""
-KERNEL="device-mapper",        NAME="mapper/control"
+KERNEL=="dm-[0-9]*",           OPTIONS+="ignore_device"
+KERNEL=="device-mapper",       NAME="mapper/control"