update Gentoo rules
authorMatthias Schwarzott <zzam@gentoo.org>
Thu, 12 Apr 2007 08:15:40 +0000 (10:15 +0200)
committerKay Sievers <kay.sievers@vrfy.org>
Thu, 12 Apr 2007 08:15:40 +0000 (10:15 +0200)
etc/udev/gentoo/05-udev-early.rules
etc/udev/gentoo/50-udev.rules [new file with mode: 0644]
etc/udev/gentoo/udev.rules [deleted file]

index ecf079c05765376bb26a265f69471bc416d66667..ee349dc9816dee0c2ec64200824aec112bc2787e 100644 (file)
@@ -7,7 +7,3 @@ ACTION=="add", DEVPATH=="/devices/*", ENV{PHYSDEVBUS}=="?*", WAIT_FOR_SYSFS="bus
 ACTION=="add", KERNEL=="[0-9]*:[0-9]*", SUBSYSTEM=="scsi", WAIT_FOR_SYSFS="ioerr_cnt"
 ACTION=="add", SUBSYSTEM=="net", WAIT_FOR_SYSFS="address"
 ACTION=="add", SUBSYSTEM=="net", ENV{PHYSDEVDRIVER}=="?*", WAIT_FOR_SYSFS="device/driver"
-
-# Set IN_HOTPLUG for compatibility with init-scripts called from udev
-ENV{IN_HOTPLUG}="1"
-
diff --git a/etc/udev/gentoo/50-udev.rules b/etc/udev/gentoo/50-udev.rules
new file mode 100644 (file)
index 0000000..2887553
--- /dev/null
@@ -0,0 +1,302 @@
+# /etc/udev/rules/50-udev.rules:  device naming rules for udev
+#
+# Gentoo specific rules
+#
+# 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.
+#
+# Try not to modify this file, if you wish to change things, create a new rule
+# file that can be run before this one.
+#
+
+# Net devices can have arbitrary names, even
+# ones set by the user. Not try to match normal
+# rules on net devices (Bug #166652)
+SUBSYSTEM=="net", GOTO="gentoo_device_rules_end"
+
+# console
+KERNEL=="pty[pqrstuvwxyzabcdef][0123456789abcdef]", NAME="%k", GROUP="tty",    OPTIONS="last_rule"
+KERNEL=="tty[pqrstuvwxyzabcdef][0123456789abcdef]", NAME="%k", GROUP="tty",    OPTIONS="last_rule"
+KERNEL=="vcs*",                 NAME="%k", GROUP="tty",                        OPTIONS="last_rule"
+KERNEL=="vcsa*",                NAME="%k", GROUP="tty",                        OPTIONS="last_rule"
+KERNEL=="tty",                  NAME="%k", GROUP="tty", MODE="0666",   OPTIONS="last_rule"
+KERNEL=="tty[0-9]",             NAME="%k", GROUP="tty",                        OPTIONS="last_rule"
+KERNEL=="tty[0-9][0-9]",        NAME="%k", GROUP="tty",                        OPTIONS="last_rule"
+KERNEL=="console",             NAME="%k", GROUP="tty", MODE="0600"
+KERNEL=="ptmx",                        NAME="%k", GROUP="tty", MODE="0666"
+
+# tty devices
+KERNEL=="ttyS[0-9]*",  NAME="%k", SYMLINK="tts/%n", GROUP="uucp", MODE="0660"
+KERNEL=="ttyUSB[0-9]*",        NAME="%k", SYMLINK="tts/USB%n", GROUP="uucp", MODE="0660"
+KERNEL=="ippp0",       NAME="%k", GROUP="uucp", MODE="0660"
+KERNEL=="isdn*"                NAME="%k", GROUP="uucp", MODE="0660"
+KERNEL=="dcbri*",      NAME="%k", GROUP="uucp", MODE="0660"
+KERNEL=="ircomm*",     NAME="%k", GROUP="uucp", MODE="0660"
+
+# all block devices
+SUBSYSTEM=="block", GROUP="disk"
+
+# cdrom symlinks and other good cdrom naming
+KERNEL=="sr[0-9]*|hd[a-z]|pcd[0-9]*", ACTION=="add", IMPORT{program}="cdrom_id --export $tempnode"
+ENV{ID_CDROM}=="?*", GROUP="cdrom"
+
+# assign cdrom-permission also to associated generic device (for cd-burning ...)
+KERNEL=="sg[0-9]*", ACTION=="add", ATTRS{type}=="4|5", GROUP="cdrom"
+
+# disk devices
+KERNEL=="sd*",         NAME="%k", GROUP="disk"
+KERNEL=="dasd*",       NAME="%k", GROUP="disk"
+KERNEL=="ataraid*",    NAME="%k", GROUP="disk"
+
+# compaq smart array
+KERNEL=="cciss*",      NAME="%k"
+KERNEL=="ida*",                NAME="%k"
+
+# mylex
+KERNEL=="rd*",         NAME="%k"
+
+# dri devices
+KERNEL=="card*",       NAME="dri/card%n", GROUP="video"
+KERNEL=="nvidia*",     NAME="%k", GROUP="video"
+KERNEL=="3dfx*",       NAME="%k", GROUP="video"
+
+# alsa devices
+SUBSYSTEM=="sound", GROUP="audio"
+KERNEL=="controlC[0-9]*",      NAME="snd/%k"
+KERNEL=="hw[CD0-9]*",          NAME="snd/%k"
+KERNEL=="pcm[CD0-9cp]*",       NAME="snd/%k"
+KERNEL=="midiC[D0-9]*",                NAME="snd/%k"
+KERNEL=="timer",               NAME="snd/%k"
+KERNEL=="seq",                 NAME="snd/%k"
+
+# capi devices
+KERNEL=="capi",                NAME="capi20", SYMLINK+="isdn/capi20", GROUP="uucp", MODE="0660"
+KERNEL=="capi*",       NAME="capi/%n", GROUP="uucp", MODE="0660"
+
+# cpu devices
+KERNEL=="cpu[0-9]*",   NAME="cpu/%n/cpuid"
+KERNEL=="msr[0-9]*",   NAME="cpu/%n/msr"
+KERNEL=="microcode",   NAME="cpu/microcode"
+
+# fb devices
+KERNEL=="fb[0-9]*",    NAME="fb/%n", SYMLINK+="%k", GROUP="video"
+
+# floppy devices
+KERNEL=="fd[0-9]*",    NAME="floppy/%k", SYMLINK+="%k", GROUP="floppy"
+KERNEL=="fd[0-9]*", ACTION=="add", ATTRS{cmos}=="*", RUN+="create_floppy_devices -c -t $attr{cmos} -m %M -M 0660 -G floppy $root/floppy/%k"
+KERNEL=="fd[0-9]*", ACTION=="remove", RUN+="/bin/sh -c 'rm -f $root/floppy/%k?*'"
+
+# i2c devices
+KERNEL=="i2c-[0-9]*",  NAME="i2c/%n", SYMLINK+="%k"
+
+# input devices
+KERNEL=="mice",                NAME="input/%k", MODE="0644"
+KERNEL=="mouse*",      NAME="input/%k", MODE="0644"
+KERNEL=="event*",      NAME="input/%k", MODE="0600"
+KERNEL=="js*",         NAME="input/%k", MODE="0664"
+KERNEL=="ts*",         NAME="input/%k", MODE="0600"
+
+# loop devices
+KERNEL=="loop[0-9]*",  NAME="loop/%n", SYMLINK+="%k", GROUP="disk"
+
+# md block devices
+KERNEL=="md[0-9]*",    NAME="md/%n", SYMLINK+="%k", GROUP="disk"
+
+# aoe char devices,
+SUBSYSTEM=="aoe", KERNEL=="discover",  NAME="etherd/%k", GROUP="disk", MODE="0220"
+SUBSYSTEM=="aoe", KERNEL=="err",       NAME="etherd/%k", GROUP="disk", MODE="0440"
+SUBSYSTEM=="aoe", KERNEL=="interfaces",        NAME="etherd/%k", GROUP="disk", MODE="0220"
+
+# misc devices
+KERNEL=="agpgart",     NAME="misc/%k", SYMLINK+="%k"
+KERNEL=="psaux",       NAME="misc/%k", SYMLINK+="%k"
+KERNEL=="rtc",         NAME="misc/%k", SYMLINK+="%k", MODE="0664"
+KERNEL=="uinput",      NAME="misc/%k", SYMLINK+="%k"
+KERNEL=="inotify",     NAME="misc/%k", SYMLINK+="%k", MODE="0666"
+
+# 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"
+
+# network devices
+KERNEL=="tun",         NAME="net/%k",  MODE="0600"
+
+# ramdisk devices
+KERNEL=="ram[0-9]*",   NAME="rd/%n", SYMLINK+="%k"
+
+# IEEE1394 (firewire) devices (must be before raw devices below)
+KERNEL=="raw1394",     NAME="%k",              GROUP="video"
+KERNEL=="dv1394*",     NAME="dv1394/%n",       GROUP="video"
+KERNEL=="video1394*",  NAME="video1394/%n",    GROUP="video"
+
+# raw devices
+SUBSYSTEM=="raw",      KERNEL=="raw[0-9]*",    NAME="raw/%k", GROUP="disk"
+KERNEL=="ram*",                NAME="%k", GROUP="disk"
+
+# sound devices
+KERNEL=="adsp",                        NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
+KERNEL=="adsp[0-9]*",          NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
+KERNEL=="audio",               NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
+KERNEL=="audio[0-9]*",         NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
+KERNEL=="dsp",                 NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
+KERNEL=="dsp[0-9]*",           NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
+KERNEL=="mixer",               NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
+KERNEL=="mixer[0-9]*",         NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
+KERNEL=="sequencer",           NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
+KERNEL=="sequencer[0-9]*",     NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
+
+# memory devices
+KERNEL=="random",      NAME="%k", MODE="0666"
+KERNEL=="urandom",     NAME="%k", MODE="0444"
+KERNEL=="mem",         NAME="%k", MODE="0640"
+KERNEL=="kmem",                NAME="%k", MODE="0640"
+KERNEL=="port",                NAME="%k", MODE="0640"
+KERNEL=="full",                NAME="%k", MODE="0666"
+KERNEL=="null",                NAME="%k", MODE="0666"
+KERNEL=="zero",                NAME="%k", MODE="0666"
+
+# usb devices
+KERNEL=="hiddev*",             NAME="usb/%k"
+KERNEL=="auer*",               NAME="usb/%k"
+KERNEL=="legousbtower*",       NAME="usb/%k", GROUP="usb"
+KERNEL=="dabusb*",             NAME="usb/%k"
+BUS=="usb", KERNEL=="lp[0-9]*",        NAME="usb/%k", GROUP="lp"
+
+# v4l devices
+KERNEL=="video[0-9]*", NAME="v4l/video%n", SYMLINK+="video%n", GROUP="video"
+KERNEL=="radio[0-9]*", NAME="v4l/radio%n", SYMLINK+="radio%n", GROUP="video"
+KERNEL=="vbi[0-9]*",   NAME="v4l/vbi%n", SYMLINK+="vbi%n", GROUP="video"
+KERNEL=="vtx[0-9]*",   NAME="v4l/vtx%n", GROUP="video"
+
+# dvb devices
+SUBSYSTEM=="dvb", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="video"
+
+# Asterisk Zaptel devices
+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"
+
+# pilot/palm devices
+KERNEL=="pilot",       NAME="%k", GROUP="uucp"
+
+# jaz devices
+KERNEL=="jaz*",                NAME="%k", GROUP="disk"
+
+# zip devices
+KERNEL=="pocketzip*",  NAME="%k", GROUP="disk"
+KERNEL=="zip*",                NAME="%k", GROUP="disk"
+
+# ls120 devices
+KERNEL=="ls120",       NAME="%k", GROUP="disk"
+
+# lp devices
+KERNEL=="lp*",         NAME="%k", GROUP="lp"
+KERNEL=="irlpt",       NAME="%k", GROUP="lp"
+KERNEL=="usblp",       NAME="%k", GROUP="lp"
+KERNEL=="lp*",         NAME="%k", GROUP="lp"
+KERNEL=="parport*",    NAME="%k", GROUP="lp"
+
+# tape devices
+KERNEL=="ht*",         NAME="%k", GROUP="tape"
+KERNEL=="nht*",                NAME="%k", GROUP="tape"
+KERNEL=="pt*",         NAME="%k", GROUP="tape"
+KERNEL=="npt*",                NAME="%k", GROUP="tape"
+KERNEL=="st*",         NAME="%k", GROUP="tape"
+KERNEL=="nst*",                NAME="%k", GROUP="tape"
+KERNEL=="osst*",       NAME="%k", GROUP="tape"
+KERNEL=="nosst*",      NAME="%k", GROUP="tape"
+
+# diskonkey devices
+KERNEL=="diskonkey*",  NAME="%k", GROUP="disk"
+
+# rem_ide devices
+KERNEL=="microdrive*", NAME="%k", GROUP="disk"
+
+# kbd devices
+KERNEL=="kbd",         NAME="%k", MODE="0664"
+
+# Sony Vaio Jogdial sonypi device
+KERNEL=="sonypi",      NAME="%k", MODE="0666"
+
+# packet devices
+KERNEL=="pktcdvd",             NAME="pktcdvd/control", GROUP="cdrw", MODE="0660"
+KERNEL=="pktcdvd[0-9]*",       NAME="pktcdvd/pktcdvd%n", GROUP="cdrw", MODE="0660"
+
+# infiniband devices
+KERNEL=="umad*",       NAME="infiniband/%k"
+KERNEL=="issm*",       NAME="infiniband/%k"
+
+
+# usbfs-like device nodes
+SUBSYSTEM=="usb_device", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="usb", MODE="0664"
+
+
+# Setting timeout for tape-devices to 900 seconds
+# if you need timeouts for other devices add a similar rule
+# with correct type-value, or open a bug on bugs.gentoo.org.
+ACTION=="add", SUBSYSTEM=="scsi" , ATTRS{type}=="1", \
+       RUN+="/bin/sh -c 'echo 900 > /sys$$DEVPATH/timeout'"
+
+
+# Module autoloading
+ACTION!="add", GOTO="hotplug_no_add_event"
+
+# check if the device has already been claimed by a driver
+ENV{DRIVER}=="?*", SUBSYSTEM!="input", GOTO="hotplug_load_end"
+
+# this driver is broken and should not be loaded automatically
+SUBSYSTEM=="platform", ENV{MODALIAS}=="i82365", GOTO="hotplug_load_end"
+
+# Autoload modules that lack aliases but have them defined inutoload modules
+ENV{MODALIAS}=="?*", RUN+="modprobe.sh $env{MODALIAS}"
+
+# /etc/modprobe.conf.
+SUBSYSTEM=="pnp", ENV{MODALIAS}!="?*", RUN+="/bin/sh -c 'while read id; do /lib/udev/modprobe.sh pnp:d$$id; done < /sys$devpath/id'"
+# needed aliases are defined in /etc/modprobe.d/pnp-aliases
+
+
+SUBSYSTEM=="i2o", RUN+="modprobe.sh i2o_block"
+SUBSYSTEM=="mmc", RUN+="modprobe.sh mmc_block"
+
+# Parts taken from redhat-rules
+# sd:           0 TYPE_DISK, 7 TYPE_MOD, 14 TYPE_RBC
+# sr:           4 TYPE_WORM, 5 TYPE_ROM
+# st/osst:      1 TYPE_TAPE
+
+# Load driver for scsi-device
+SUBSYSTEM!="scsi_device", GOTO="hotplug_scsi_end"
+ATTRS{type}=="?*",     RUN+="modprobe.sh sg"
+ATTRS{type}=="0|7|14", RUN+="modprobe.sh sd_mod"
+ATTRS{type}=="4|5",    RUN+="modprobe.sh sr_mod"
+ATTRS{type}=="8",      RUN+="modprobe.sh ch"
+
+ATTRS{type}=="1", ENV{ID_SCSI_TAPE_DRIVER}="st"
+ATTRS{type}=="1", ATTRS{vendor}=="On[sS]tream", \
+       ATTRS{model}!="ADR*", ENV{ID_SCSI_TAPE_DRIVER}="osst"
+ENV{ID_SCSI_TAPE_DRIVER}=="?*", RUN+="modprobe.sh $env{ID_SCSI_TAPE_DRIVER}"
+LABEL="hotplug_scsi_end"
+
+
+SUBSYSTEM=="ide", ATTR{media}=="tape", RUN+="modprobe.sh ide-scsi"
+
+LABEL="hotplug_load_end"
+
+
+# Load firmware
+SUBSYSTEM=="firmware", RUN+="firmware.sh"
+
+LABEL="hotplug_no_add_event"
+
+LABEL="gentoo_device_rules_end"
diff --git a/etc/udev/gentoo/udev.rules b/etc/udev/gentoo/udev.rules
deleted file mode 100644 (file)
index 2887553..0000000
+++ /dev/null
@@ -1,302 +0,0 @@
-# /etc/udev/rules/50-udev.rules:  device naming rules for udev
-#
-# Gentoo specific rules
-#
-# 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.
-#
-# Try not to modify this file, if you wish to change things, create a new rule
-# file that can be run before this one.
-#
-
-# Net devices can have arbitrary names, even
-# ones set by the user. Not try to match normal
-# rules on net devices (Bug #166652)
-SUBSYSTEM=="net", GOTO="gentoo_device_rules_end"
-
-# console
-KERNEL=="pty[pqrstuvwxyzabcdef][0123456789abcdef]", NAME="%k", GROUP="tty",    OPTIONS="last_rule"
-KERNEL=="tty[pqrstuvwxyzabcdef][0123456789abcdef]", NAME="%k", GROUP="tty",    OPTIONS="last_rule"
-KERNEL=="vcs*",                 NAME="%k", GROUP="tty",                        OPTIONS="last_rule"
-KERNEL=="vcsa*",                NAME="%k", GROUP="tty",                        OPTIONS="last_rule"
-KERNEL=="tty",                  NAME="%k", GROUP="tty", MODE="0666",   OPTIONS="last_rule"
-KERNEL=="tty[0-9]",             NAME="%k", GROUP="tty",                        OPTIONS="last_rule"
-KERNEL=="tty[0-9][0-9]",        NAME="%k", GROUP="tty",                        OPTIONS="last_rule"
-KERNEL=="console",             NAME="%k", GROUP="tty", MODE="0600"
-KERNEL=="ptmx",                        NAME="%k", GROUP="tty", MODE="0666"
-
-# tty devices
-KERNEL=="ttyS[0-9]*",  NAME="%k", SYMLINK="tts/%n", GROUP="uucp", MODE="0660"
-KERNEL=="ttyUSB[0-9]*",        NAME="%k", SYMLINK="tts/USB%n", GROUP="uucp", MODE="0660"
-KERNEL=="ippp0",       NAME="%k", GROUP="uucp", MODE="0660"
-KERNEL=="isdn*"                NAME="%k", GROUP="uucp", MODE="0660"
-KERNEL=="dcbri*",      NAME="%k", GROUP="uucp", MODE="0660"
-KERNEL=="ircomm*",     NAME="%k", GROUP="uucp", MODE="0660"
-
-# all block devices
-SUBSYSTEM=="block", GROUP="disk"
-
-# cdrom symlinks and other good cdrom naming
-KERNEL=="sr[0-9]*|hd[a-z]|pcd[0-9]*", ACTION=="add", IMPORT{program}="cdrom_id --export $tempnode"
-ENV{ID_CDROM}=="?*", GROUP="cdrom"
-
-# assign cdrom-permission also to associated generic device (for cd-burning ...)
-KERNEL=="sg[0-9]*", ACTION=="add", ATTRS{type}=="4|5", GROUP="cdrom"
-
-# disk devices
-KERNEL=="sd*",         NAME="%k", GROUP="disk"
-KERNEL=="dasd*",       NAME="%k", GROUP="disk"
-KERNEL=="ataraid*",    NAME="%k", GROUP="disk"
-
-# compaq smart array
-KERNEL=="cciss*",      NAME="%k"
-KERNEL=="ida*",                NAME="%k"
-
-# mylex
-KERNEL=="rd*",         NAME="%k"
-
-# dri devices
-KERNEL=="card*",       NAME="dri/card%n", GROUP="video"
-KERNEL=="nvidia*",     NAME="%k", GROUP="video"
-KERNEL=="3dfx*",       NAME="%k", GROUP="video"
-
-# alsa devices
-SUBSYSTEM=="sound", GROUP="audio"
-KERNEL=="controlC[0-9]*",      NAME="snd/%k"
-KERNEL=="hw[CD0-9]*",          NAME="snd/%k"
-KERNEL=="pcm[CD0-9cp]*",       NAME="snd/%k"
-KERNEL=="midiC[D0-9]*",                NAME="snd/%k"
-KERNEL=="timer",               NAME="snd/%k"
-KERNEL=="seq",                 NAME="snd/%k"
-
-# capi devices
-KERNEL=="capi",                NAME="capi20", SYMLINK+="isdn/capi20", GROUP="uucp", MODE="0660"
-KERNEL=="capi*",       NAME="capi/%n", GROUP="uucp", MODE="0660"
-
-# cpu devices
-KERNEL=="cpu[0-9]*",   NAME="cpu/%n/cpuid"
-KERNEL=="msr[0-9]*",   NAME="cpu/%n/msr"
-KERNEL=="microcode",   NAME="cpu/microcode"
-
-# fb devices
-KERNEL=="fb[0-9]*",    NAME="fb/%n", SYMLINK+="%k", GROUP="video"
-
-# floppy devices
-KERNEL=="fd[0-9]*",    NAME="floppy/%k", SYMLINK+="%k", GROUP="floppy"
-KERNEL=="fd[0-9]*", ACTION=="add", ATTRS{cmos}=="*", RUN+="create_floppy_devices -c -t $attr{cmos} -m %M -M 0660 -G floppy $root/floppy/%k"
-KERNEL=="fd[0-9]*", ACTION=="remove", RUN+="/bin/sh -c 'rm -f $root/floppy/%k?*'"
-
-# i2c devices
-KERNEL=="i2c-[0-9]*",  NAME="i2c/%n", SYMLINK+="%k"
-
-# input devices
-KERNEL=="mice",                NAME="input/%k", MODE="0644"
-KERNEL=="mouse*",      NAME="input/%k", MODE="0644"
-KERNEL=="event*",      NAME="input/%k", MODE="0600"
-KERNEL=="js*",         NAME="input/%k", MODE="0664"
-KERNEL=="ts*",         NAME="input/%k", MODE="0600"
-
-# loop devices
-KERNEL=="loop[0-9]*",  NAME="loop/%n", SYMLINK+="%k", GROUP="disk"
-
-# md block devices
-KERNEL=="md[0-9]*",    NAME="md/%n", SYMLINK+="%k", GROUP="disk"
-
-# aoe char devices,
-SUBSYSTEM=="aoe", KERNEL=="discover",  NAME="etherd/%k", GROUP="disk", MODE="0220"
-SUBSYSTEM=="aoe", KERNEL=="err",       NAME="etherd/%k", GROUP="disk", MODE="0440"
-SUBSYSTEM=="aoe", KERNEL=="interfaces",        NAME="etherd/%k", GROUP="disk", MODE="0220"
-
-# misc devices
-KERNEL=="agpgart",     NAME="misc/%k", SYMLINK+="%k"
-KERNEL=="psaux",       NAME="misc/%k", SYMLINK+="%k"
-KERNEL=="rtc",         NAME="misc/%k", SYMLINK+="%k", MODE="0664"
-KERNEL=="uinput",      NAME="misc/%k", SYMLINK+="%k"
-KERNEL=="inotify",     NAME="misc/%k", SYMLINK+="%k", MODE="0666"
-
-# 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"
-
-# network devices
-KERNEL=="tun",         NAME="net/%k",  MODE="0600"
-
-# ramdisk devices
-KERNEL=="ram[0-9]*",   NAME="rd/%n", SYMLINK+="%k"
-
-# IEEE1394 (firewire) devices (must be before raw devices below)
-KERNEL=="raw1394",     NAME="%k",              GROUP="video"
-KERNEL=="dv1394*",     NAME="dv1394/%n",       GROUP="video"
-KERNEL=="video1394*",  NAME="video1394/%n",    GROUP="video"
-
-# raw devices
-SUBSYSTEM=="raw",      KERNEL=="raw[0-9]*",    NAME="raw/%k", GROUP="disk"
-KERNEL=="ram*",                NAME="%k", GROUP="disk"
-
-# sound devices
-KERNEL=="adsp",                        NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
-KERNEL=="adsp[0-9]*",          NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
-KERNEL=="audio",               NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
-KERNEL=="audio[0-9]*",         NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
-KERNEL=="dsp",                 NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
-KERNEL=="dsp[0-9]*",           NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
-KERNEL=="mixer",               NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
-KERNEL=="mixer[0-9]*",         NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
-KERNEL=="sequencer",           NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
-KERNEL=="sequencer[0-9]*",     NAME="sound/%k", SYMLINK+="%k", GROUP="audio"
-
-# memory devices
-KERNEL=="random",      NAME="%k", MODE="0666"
-KERNEL=="urandom",     NAME="%k", MODE="0444"
-KERNEL=="mem",         NAME="%k", MODE="0640"
-KERNEL=="kmem",                NAME="%k", MODE="0640"
-KERNEL=="port",                NAME="%k", MODE="0640"
-KERNEL=="full",                NAME="%k", MODE="0666"
-KERNEL=="null",                NAME="%k", MODE="0666"
-KERNEL=="zero",                NAME="%k", MODE="0666"
-
-# usb devices
-KERNEL=="hiddev*",             NAME="usb/%k"
-KERNEL=="auer*",               NAME="usb/%k"
-KERNEL=="legousbtower*",       NAME="usb/%k", GROUP="usb"
-KERNEL=="dabusb*",             NAME="usb/%k"
-BUS=="usb", KERNEL=="lp[0-9]*",        NAME="usb/%k", GROUP="lp"
-
-# v4l devices
-KERNEL=="video[0-9]*", NAME="v4l/video%n", SYMLINK+="video%n", GROUP="video"
-KERNEL=="radio[0-9]*", NAME="v4l/radio%n", SYMLINK+="radio%n", GROUP="video"
-KERNEL=="vbi[0-9]*",   NAME="v4l/vbi%n", SYMLINK+="vbi%n", GROUP="video"
-KERNEL=="vtx[0-9]*",   NAME="v4l/vtx%n", GROUP="video"
-
-# dvb devices
-SUBSYSTEM=="dvb", PROGRAM="/bin/sh -c 'K=%k; K=$${K#dvb}; printf dvb/adapter%%i/%%s $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="video"
-
-# Asterisk Zaptel devices
-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"
-
-# pilot/palm devices
-KERNEL=="pilot",       NAME="%k", GROUP="uucp"
-
-# jaz devices
-KERNEL=="jaz*",                NAME="%k", GROUP="disk"
-
-# zip devices
-KERNEL=="pocketzip*",  NAME="%k", GROUP="disk"
-KERNEL=="zip*",                NAME="%k", GROUP="disk"
-
-# ls120 devices
-KERNEL=="ls120",       NAME="%k", GROUP="disk"
-
-# lp devices
-KERNEL=="lp*",         NAME="%k", GROUP="lp"
-KERNEL=="irlpt",       NAME="%k", GROUP="lp"
-KERNEL=="usblp",       NAME="%k", GROUP="lp"
-KERNEL=="lp*",         NAME="%k", GROUP="lp"
-KERNEL=="parport*",    NAME="%k", GROUP="lp"
-
-# tape devices
-KERNEL=="ht*",         NAME="%k", GROUP="tape"
-KERNEL=="nht*",                NAME="%k", GROUP="tape"
-KERNEL=="pt*",         NAME="%k", GROUP="tape"
-KERNEL=="npt*",                NAME="%k", GROUP="tape"
-KERNEL=="st*",         NAME="%k", GROUP="tape"
-KERNEL=="nst*",                NAME="%k", GROUP="tape"
-KERNEL=="osst*",       NAME="%k", GROUP="tape"
-KERNEL=="nosst*",      NAME="%k", GROUP="tape"
-
-# diskonkey devices
-KERNEL=="diskonkey*",  NAME="%k", GROUP="disk"
-
-# rem_ide devices
-KERNEL=="microdrive*", NAME="%k", GROUP="disk"
-
-# kbd devices
-KERNEL=="kbd",         NAME="%k", MODE="0664"
-
-# Sony Vaio Jogdial sonypi device
-KERNEL=="sonypi",      NAME="%k", MODE="0666"
-
-# packet devices
-KERNEL=="pktcdvd",             NAME="pktcdvd/control", GROUP="cdrw", MODE="0660"
-KERNEL=="pktcdvd[0-9]*",       NAME="pktcdvd/pktcdvd%n", GROUP="cdrw", MODE="0660"
-
-# infiniband devices
-KERNEL=="umad*",       NAME="infiniband/%k"
-KERNEL=="issm*",       NAME="infiniband/%k"
-
-
-# usbfs-like device nodes
-SUBSYSTEM=="usb_device", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", NAME="%c", GROUP="usb", MODE="0664"
-
-
-# Setting timeout for tape-devices to 900 seconds
-# if you need timeouts for other devices add a similar rule
-# with correct type-value, or open a bug on bugs.gentoo.org.
-ACTION=="add", SUBSYSTEM=="scsi" , ATTRS{type}=="1", \
-       RUN+="/bin/sh -c 'echo 900 > /sys$$DEVPATH/timeout'"
-
-
-# Module autoloading
-ACTION!="add", GOTO="hotplug_no_add_event"
-
-# check if the device has already been claimed by a driver
-ENV{DRIVER}=="?*", SUBSYSTEM!="input", GOTO="hotplug_load_end"
-
-# this driver is broken and should not be loaded automatically
-SUBSYSTEM=="platform", ENV{MODALIAS}=="i82365", GOTO="hotplug_load_end"
-
-# Autoload modules that lack aliases but have them defined inutoload modules
-ENV{MODALIAS}=="?*", RUN+="modprobe.sh $env{MODALIAS}"
-
-# /etc/modprobe.conf.
-SUBSYSTEM=="pnp", ENV{MODALIAS}!="?*", RUN+="/bin/sh -c 'while read id; do /lib/udev/modprobe.sh pnp:d$$id; done < /sys$devpath/id'"
-# needed aliases are defined in /etc/modprobe.d/pnp-aliases
-
-
-SUBSYSTEM=="i2o", RUN+="modprobe.sh i2o_block"
-SUBSYSTEM=="mmc", RUN+="modprobe.sh mmc_block"
-
-# Parts taken from redhat-rules
-# sd:           0 TYPE_DISK, 7 TYPE_MOD, 14 TYPE_RBC
-# sr:           4 TYPE_WORM, 5 TYPE_ROM
-# st/osst:      1 TYPE_TAPE
-
-# Load driver for scsi-device
-SUBSYSTEM!="scsi_device", GOTO="hotplug_scsi_end"
-ATTRS{type}=="?*",     RUN+="modprobe.sh sg"
-ATTRS{type}=="0|7|14", RUN+="modprobe.sh sd_mod"
-ATTRS{type}=="4|5",    RUN+="modprobe.sh sr_mod"
-ATTRS{type}=="8",      RUN+="modprobe.sh ch"
-
-ATTRS{type}=="1", ENV{ID_SCSI_TAPE_DRIVER}="st"
-ATTRS{type}=="1", ATTRS{vendor}=="On[sS]tream", \
-       ATTRS{model}!="ADR*", ENV{ID_SCSI_TAPE_DRIVER}="osst"
-ENV{ID_SCSI_TAPE_DRIVER}=="?*", RUN+="modprobe.sh $env{ID_SCSI_TAPE_DRIVER}"
-LABEL="hotplug_scsi_end"
-
-
-SUBSYSTEM=="ide", ATTR{media}=="tape", RUN+="modprobe.sh ide-scsi"
-
-LABEL="hotplug_load_end"
-
-
-# Load firmware
-SUBSYSTEM=="firmware", RUN+="firmware.sh"
-
-LABEL="hotplug_no_add_event"
-
-LABEL="gentoo_device_rules_end"