KERNEL=="ptmx", GROUP="tty", MODE="666", OPTIONS="last_rule"
# serial devices
-KERNEL=="tty[A-Z]*", GROUP="uucp"
-KERNEL=="pppox*", GROUP="uucp"
-KERNEL=="ircomm*", GROUP="uucp"
-KERNEL=="modems/mwave*", GROUP="uucp"
+KERNEL=="tty[A-Z]*|pppox*|ircomm*|noz*", GROUP="uucp"
KERNEL=="hvc*|hvsi*", GROUP="uucp"
KERNEL=="iseries/vtty*", GROUP="uucp"
+KERNEL=="mwave", NAME="modems/%k", GROUP="uucp"
KERNEL=="ttyUSB*", ATTRS{product}=="[Pp]alm*Handheld*", SYMLINK+="pilot"
KERNEL=="ttyUSB*", ATTRS{product}=="[Hh]andspring*Treo*|[Hh]andspring*Visor*", SYMLINK+="pilot"
KERNEL=="video1394*", SYMLINK+="video1394/%n", GROUP="video"
KERNEL=="hw_random", NAME="hwrng", SYMLINK+="%k"
-KERNEL=="mwave", NAME="modems/%k"
KERNEL=="rioctl", NAME="specialix_rioctl", SYMLINK+="%k"
KERNEL=="sxctl", NAME="specialix_sxctl", SYMLINK+="%k"
# network
-KERNEL=="tun", NAME="net/%k", MODE="0600"
+KERNEL=="tun", NAME="net/%k", MODE="0666"
# misc devices
KERNEL=="mem|kmem", GROUP="kmem", MODE="640"
# st/osst: 1 TYPE_TAPE
SUBSYSTEM=="scsi", ACTION=="add", ATTR{type}=="0|7|14", ATTR{timeout}="60"
SUBSYSTEM=="scsi", ACTION=="add", ATTR{type}=="1", ATTR{timeout}="900"
-SUBSYSTEM=="scsi_device", ACTION=="add", ATTR{type}=="0|7|14", RUN+="/sbin/modprobe sd_mod"
-SUBSYSTEM=="scsi_device", ACTION=="add", ATTR{type}=="1", ATTR{vendor}=="On[sS]tream", RUN+="/sbin/modprobe osst"
-SUBSYSTEM=="scsi_device", ACTION=="add", ATTR{type}=="1", RUN+="/sbin/modprobe st"
-SUBSYSTEM=="scsi_device", ACTION=="add", ATTR{type}=="[45]", RUN+="/sbin/modprobe sr_mod"
+SUBSYSTEM=="scsi_device", ACTION=="add", ATTRS{type}=="0|7|14", RUN+="/sbin/modprobe sd_mod"
+SUBSYSTEM=="scsi_device", ACTION=="add", ATTRS{type}=="1", ATTR{vendor}=="On[sS]tream", RUN+="/sbin/modprobe osst"
+SUBSYSTEM=="scsi_device", ACTION=="add", ATTRS{type}=="1", RUN+="/sbin/modprobe st"
+SUBSYSTEM=="scsi_device", ACTION=="add", ATTRS{type}=="[45]", RUN+="/sbin/modprobe sr_mod"
SUBSYSTEM=="scsi_device", ACTION=="add", RUN+="/sbin/modprobe sg"
KERNEL=="hd*", SUBSYSTEMS=="ide", ATTRS{media}=="floppy", OPTIONS+="all_partitions"
SUBSYSTEM=="ide", ACTION=="add", ATTR{media}=="tape", RUN+="/sbin/modprobe ide-scsi"
+SUBSYSTEM=="mmc", ACTION=="add", RUN+="/sbin/modprobe mmc_block"
# misc storage devices (non-block)
KERNEL=="sg*", GROUP="disk", MODE="640"
KERNEL=="pt*|npt*", GROUP="disk"
KERNEL=="pg*", GROUP="disk"
KERNEL=="evms/block_device*", GROUP="disk"
-KERNEL=="rawctl*|raw[0-9]*", NAME="raw/%k", GROUP="disk"
+KERNEL=="rawctl*", NAME="raw/%k", GROUP="disk"
+SUBSYSTEM=="block", KERNEL=="raw[0-9]*", NAME="raw/%k", GROUP="disk"
KERNEL=="osst*|nosst*", NAME="%k", GROUP="disk"
KERNEL=="iseries/vt*", NAME="%k", GROUP="disk"
KERNEL=="iseries/nvt*", NAME="%k", GROUP="disk"
KERNEL=="iseries/ibmsis*", NAME="%k", GROUP="disk"
# libusb device access
-SUBSYSTEM=="usb_device", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", NAME="%c", MODE="0644"
+SUBSYSTEM=="usb_device", ACTION=="add", PROGRAM="/bin/sh -c 'K=%k; K=$${K#usbdev}; printf bus/usb/%%03i/%%03i $${K%%%%.*} $${K#*.}'", NAME="%c", MODE="0644"
# kernel firmware loader
SUBSYSTEM=="firmware", ACTION=="add", RUN+="firmware.sh"