# There are a number of modifiers that are allowed to be used in some
# of the different fields. They provide the following subsitutions:
# %n - the "kernel number" of the device.
#      For example, 'sda3' has a "kernel number" of '3'
# %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. (Note, this doesn't work within
#      the PROGRAM field for the obvious reason.)
# %s{filename} - the content of a sysfs attribute.  
# %% - the '%' char itself.
#

# IDE block devices
BUS="ide", KERNEL="hd*", PROGRAM="/etc/udev/scripts/ide-devfs.sh %k %b %n", NAME="%c{1}", SYMLINK="%k %c{2}"

# permissions for CD sg 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}"

# 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"

# 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"

# 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"

# misc devices
KERNEL="apm_bios",	NAME="misc/apm_bios",
KERNEL="agpgart",	NAME="misc/agpgart",
#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"

# sound devices
KERNEL="controlC[0-9]*", NAME="snd/%k"
KERNEL="hw[CD0-9]*",	NAME="snd/%k"
KERNEL="pcm[CD0-9cp]*",	NAME="snd/%k"
KERNEL="midi[CD0-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"

# 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="tap*",		NAME="net/%k"
KERNEL="tun",		NAME="net/%k"

# CAPI devices
KERNEL="capi",		NAME="capi20", SYMLINK="isdn/capi20"
KERNEL="capi*",		NAME="capi/%n"

# device mapper creates its own device nodes, so ignore these
KERNEL="dm-[0-9]*",	NAME=""
KERNEL="device-mapper",	NAME="mapper/control"