# /etc/udev/udev.rules: device naming rules for udev
-# $Header: /home/cvsroot/gentoo-x86/sys-fs/udev/files/udev.rules.post_012,v 1.5 2004/02/08 16:59:29 azarah Exp $
+#
+# Gentoo specific rules, based a bit on devfs rules, but much simpler.
#
# There are a number of modifiers that are allowed to be used in some of the
# fields. See the udev man page for a full description of them.
-###########################################################
-#
-# Add your own rules here (examples are commented)
-#
-###########################################################
-
-# Looking for scsi bus id 42:0:0:1
-#BUS="scsi", PROGRAM="/bin/echo -n test-%b", RESULT="test-42:0:0:1", NAME="%c"
-
-# A usb camera.
-#BUS="usb", SYSFS_vendor="FUJIFILM", SYSFS_model="M100", NAME="camera%n"
-
-# USB Epson printer to be called lp_epson
-#BUS="usb", SYSFS_serial="HXOLL0012202323480", NAME="lp_epson"
-
-# USB HP printer to be called lp_hp
-#BUS="usb", SYSFS_serial="W09090207101241330", NAME="lp_hp"
-
-# sound card with PCI bus id 00:0b.0 to be the first sound card
-#BUS="pci", ID="00:0b.0", NAME="dsp"
-
-# sound card with PCI bus id 00:07.1 to be the second sound card
-#BUS="pci", ID="00:07.1", NAME="dsp1"
-
-# USB mouse plugged into the third port of the first hub to be called mouse0
-#BUS="usb", PLACE="1.3", NAME="mouse0"
-
-# USB tablet plugged into the third port of the second hub to be called mouse1
-#BUS="usb", PLACE="2.3", NAME="mouse1"
-#BUS="usb", PLACE="2.4", NAME="mouse2"
-
-# ttyUSB1 should always be called visor
-#KERNEL="ttyUSB1", NAME="visor"
-#KERNEL="ttyUSB0", NAME="pl2303"
-
###########################################################
#
# /dev/ide/.../{disc,cd} and /dev/{cdroms,discs}/* type names
BUS="ide", KERNEL="hd*", PROGRAM="/etc/udev/scripts/ide-devfs.sh %k %b %n", NAME="%k", SYMLINK="%c{1} %c{2}"
+# DRI devices
+KERNEL="card*", NAME="dri/card%n"
+
# 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="midiC[D0-9]*", NAME="snd/%k"
KERNEL="timer", NAME="snd/%k"
KERNEL="seq", NAME="snd/%k"
# dm devices (ignore them)
KERNEL="dm-[0-9]*", NAME=""
+# create a symlink named after the device map name
+# note devmap_name comes with extras/multipath
+#KERNEL="dm-[0-9]*", PROGRAM="/sbin/devmap_name %M %m", NAME="%k", SYMLINK="%c"
KERNEL="device-mapper", NAME="mapper/control"
# fb devices
KERNEL="i2c-[0-9]*", NAME="i2c/%n", SYMLINK="%k"
# input devices
-KERNEL="mice", NAME="input/mice"
-KERNEL="mouse[0-9]*", NAME="input/mouse%n"
-KERNEL="event[0-9]*", NAME="input/event%n"
-KERNEL="js*", NAME="input/%k"
-KERNEL="ts*", NAME="input/%k"
+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"
# loop devices
KERNEL="loop[0-9]*", NAME="loop/%n", SYMLINK="%k"
KERNEL="md[0-9]*", NAME="md/%n", SYMLINK="%k"
# misc devices
-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"
+KERNEL="agpgart", NAME="misc/%k", SYMLINK="%k"
+KERNEL="microcode", NAME="misc/%k", SYMLINK="%k"
+KERNEL="psaux", NAME="misc/%k", SYMLINK="%k"
+KERNEL="rtc", NAME="misc/%k", SYMLINK="%k"
+KERNEL="uinput", NAME="misc/%k", SYMLINK="%k"
# pty devices
KERNEL="pty[p-za-e][0-9a-f]*", NAME="pty/m%n", SYMLINK="%k"
-KERNEL="tty[p-za-e][0-9a-f]*", NAME="tty/s%n", SYMLINK="%k"
+KERNEL="tty[p-za-e][0-9a-f]*", NAME="pty/s%n", SYMLINK="%k"
# ramdisk devices
KERNEL="ram[0-9]*", NAME="rd/%n", SYMLINK="%k"
# sound devices
-KERNEL="adsp", NAME="sound/adsp" SYMLINK="%k"
-KERNEL="audio", NAME="sound/audio", SYMLINK="%k"
-KERNEL="dsp", NAME="sound/dsp", SYMLINK="%k"
-KERNEL="mixer", NAME="sound/mixer", SYMLINK="%k"
-KERNEL="sequencer", NAME="sound/sequencer", SYMLINK="%k"
-KERNEL="sequencer2", NAME="sound/sequencer2", SYMLINK="%k"
+KERNEL="adsp", NAME="sound/%k", SYMLINK="%k"
+KERNEL="adsp[0-9]*", NAME="sound/%k", SYMLINK="%k"
+KERNEL="audio", NAME="sound/%k", SYMLINK="%k"
+KERNEL="audio[0-9]*", NAME="sound/%k", SYMLINK="%k"
+KERNEL="dsp", NAME="sound/%k", SYMLINK="%k"
+KERNEL="dsp[0-9]*", NAME="sound/%k", SYMLINK="%k"
+KERNEL="mixer", NAME="sound/%k", SYMLINK="%k"
+KERNEL="mixer[0-9]*", NAME="sound/%k", SYMLINK="%k"
+KERNEL="sequencer", NAME="sound/%k", SYMLINK="%k"
+KERNEL="sequencer[0-9]*", NAME="sound/%k", SYMLINK="%k"
# tty devices
KERNEL="tty[0-9]*", NAME="vc/%n", SYMLINK="%k"
KERNEL="vcsa[0-9]*", NAME="vcc/a%n", SYMLINK="%k"
# v4l devices
-KERNEL="video[0-9]*", NAME="v4l/video%n"
+KERNEL="video[0-9]*", NAME="v4l/video%n", SYMLINK="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"
+# 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"
+
+# cpu devices
+KERNEL="cpu[0-9]*", NAME="cpu/%n/cpuid"
+KERNEL="msr[0-9]*", NAME="cpu/%n/cpuid"
+KERNEL="microcode", NAME="cpu/microcode"