# The use of these rules is not recommended or supported.
# In a world where devices can come and go at any time, the devfs scheme
# of simple device enumeration does not help _anything_. Just forget about
# it. Use custom rules to name your device or look at the persistent device
# naming scheme, which is implemented for disks and add your subsystem.

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

# md block devices
KERNEL="md[0-9]*", NAME="md/%n"

# floppy devices
KERNEL="fd[0-9]*", NAME="floppy/%n"

# tty devices
KERNEL="tty[0-9]*",    NAME="vc/%n", SYMLINK="%k"
KERNEL="ttyS[0-9]*",   NAME="tts/%n", SYMLINK="%k"
KERNEL="ttyUSB[0-9]*", NAME="tts/USB%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"

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

# dm devices (ignore them)
KERNEL="dm-[0-9]*", NAME=""

# i2c devices
KERNEL="i2c-[0-9]*", NAME="i2c/%n", SYMLINK="%k"

# loop devices
KERNEL="loop[0-9]*", NAME="loop/%n", SYMLINK="%k"

# ramdisks
KERNEL="ram[0-9]*", NAME="rd/%n", SYMLINK="%k"

# framebuffer devices
KERNEL="fb[0-9]*", NAME="fb/%n", SYMLINK="%k"

# misc
KERNEL="rtc",     NAME="misc/%k", SYMLINK="%k"
KERNEL="psaux",   NAME="misc/%k", SYMLINK="%k"
KERNEL="agpgart", NAME="misc/%k", SYMLINK="%k"
KERNEL="rtc",     NAME="misc/%k", SYMLINK="%k"
KERNEL="psaux",   NAME="misc/%k", SYMLINK="%k"
KERNEL="uinput",  NAME="misc/%k", SYMLINK="%k"

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

# oss devices
KERNEL="audio*",     NAME="sound/%k", SYMLINK="%k"
KERNEL="dmmidi",     NAME="sound/%k", SYMLINK="%k"
KERNEL="dsp*",       NAME="sound/%k", SYMLINK="%k"
KERNEL="midi*",      NAME="sound/%k", SYMLINK="%k"
KERNEL="mixer*",     NAME="sound/%k", SYMLINK="%k"
KERNEL="sequencer*", NAME="sound/%k", SYMLINK="%k"

# input devices
KERNEL="mice",   NAME="input/%k"
KERNEL="mouse*", NAME="input/%k"
KERNEL="event*", NAME="input/%k"
KERNEL="js*",    NAME="input/%k"
KERNEL="ts*",	 NAME="input/%k"

# USB devices
KERNEL="hiddev*",	NAME="usb/%k"
KERNEL="auer*",		NAME="usb/%k"
KERNEL="legousbtower*",	NAME="usb/%k"
KERNEL="dabusb*",	NAME="usb/%k"
BUS="usb", KERNEL="lp[0-9]*",	NAME="usb/%k"

# netlink devices
KERNEL="route",		NAME="netlink/%k"
KERNEL="skip",		NAME="netlink/%k"
KERNEL="usersock",	NAME="netlink/%k"
KERNEL="fwmonitor",	NAME="netlink/%k"
KERNEL="tcpdiag",	NAME="netlink/%k"
KERNEL="nflog",		NAME="netlink/%k"
KERNEL="xfrm",		NAME="netlink/%k"
KERNEL="arpd",		NAME="netlink/%k"
KERNEL="route6",	NAME="netlink/%k"
KERNEL="ip6_fw",	NAME="netlink/%k"
KERNEL="dnrtmsg",	NAME="netlink/%k"
KERNEL="tap*",		NAME="netlink/%k"

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

# Network devices
KERNEL="tun",		NAME="net/%k"

# raw devices
KERNEL="raw[0-9]*",     NAME="raw/%k" 
