ACTION=="remove", GOTO="permissions_end"

# default permissions for block devices
SUBSYSTEM=="block",				GROUP="disk"
SUBSYSTEM=="block", ATTRS{removable}=="1",	GROUP="floppy"
# the aacraid driver is broken and reports the disks as removable (see #404927)
SUBSYSTEM=="block", DRIVERS=="aacraid",		GROUP="disk"
# all block devices on these buses are "removable"
SUBSYSTEM=="block", SUBSYSTEMS=="usb|ieee1394|mmc|pcmcia", GROUP="floppy"

KERNEL=="cbm",					GROUP="floppy"

# IDE devices
ENV{ID_CDROM}=="?*",				GROUP="cdrom"
KERNEL=="ht[0-9]*", 				GROUP="tape"
KERNEL=="nht[0-9]*", 				GROUP="tape"

# SCSI devices
SUBSYSTEM=="scsi_generic|scsi_tape", \
SUBSYSTEMS=="scsi", ATTRS{type}=="1|8",		GROUP="tape"
SUBSYSTEM=="scsi_generic", \
SUBSYSTEMS=="scsi", ATTRS{type}=="4|5",		GROUP="cdrom"

# USB devices
KERNEL=="legousbtower*",	MODE="0666"
KERNEL=="lp[0-9]*", SUBSYSTEMS=="usb",		GROUP="lp"
# hplip and cups 1.4+ use raw USB devices, so permissions should be similar to
# the ones from the old usblp kernel module
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", \
	ENV{ID_USB_INTERFACES}=="", IMPORT{program}="usb_id --export %p"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", \
	ENV{ID_USB_INTERFACES}=="*:0701*:",	GROUP="lp"

# usbfs-like devices
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", \
				MODE="0664"

# serial devices
SUBSYSTEM=="tty",				GROUP="dialout"
SUBSYSTEM=="capi",				GROUP="dialout"
SUBSYSTEM=="slamr",				GROUP="dialout"
SUBSYSTEM=="zaptel",				GROUP="dialout"
KERNEL=="mISDNtimer",				GROUP="dialout"
KERNEL=="mwave",				GROUP="dialout"
KERNEL=="hvc*|hvsi*",				GROUP="dialout"

# vc devices (all members of the tty subsystem)
KERNEL=="ptmx",			MODE="0666",	GROUP="root"
KERNEL=="console",		MODE="0600",	GROUP="root"
KERNEL=="tty",			MODE="0666",	GROUP="root"
KERNEL=="tty[0-9]*",				GROUP="root"
KERNEL=="pty*",			MODE="0666",	GROUP="tty"

# video devices
SUBSYSTEM=="video4linux",			GROUP="video"
SUBSYSTEM=="drm",				GROUP="video"
SUBSYSTEM=="dvb",				GROUP="video"
SUBSYSTEM=="em8300",				GROUP="video"
SUBSYSTEM=="graphics",				GROUP="video"
SUBSYSTEM=="nvidia",				GROUP="video"

# misc devices
KERNEL=="random",		MODE="0666"
KERNEL=="urandom",		MODE="0666"
KERNEL=="mem",			MODE="0640",	GROUP="kmem"
KERNEL=="kmem",			MODE="0640",	GROUP="kmem"
KERNEL=="port",			MODE="0640",	GROUP="kmem"
KERNEL=="nvram",		MODE="0640",	GROUP="kmem"
KERNEL=="full",			MODE="0666"
KERNEL=="null",			MODE="0666"
KERNEL=="zero",			MODE="0666"
KERNEL=="inotify",		MODE="0666"
KERNEL=="sonypi",		MODE="0666"
KERNEL=="cpu[0-9]*",		MODE="0444"
KERNEL=="agpgart",				GROUP="video"
KERNEL=="pmu",					GROUP="video"
KERNEL=="kqemu",		MODE="0666"
KERNEL=="tun",			MODE="0666",	OPTIONS+="static_node=net/tun"
KERNEL=="rfkill",		MODE="0644"

KERNEL=="cdemu[0-9]*",				GROUP="cdrom"
KERNEL=="pktcdvd[0-9]*",			GROUP="cdrom"
KERNEL=="pktcdvd",		MODE="0644"

# printers and parallel devices
SUBSYSTEM=="printer",				GROUP="lp"
SUBSYSTEM=="ppdev",				GROUP="lp"
KERNEL=="irlpt[0-9]*",				GROUP="lp"
KERNEL=="pt[0-9]*",				GROUP="tape"
KERNEL=="pht[0-9]*",				GROUP="tape"

# sound devices
SUBSYSTEM=="sound",				GROUP="audio"

# ieee1394 devices
SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x00010*",  GROUP="video"
SUBSYSTEM=="firewire", ATTR{units}=="*0x00b09d:0x00010*",  GROUP="video"
SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x010001*", GROUP="video"
SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x014001*", GROUP="video"
KERNEL=="raw1394",				GROUP="disk"
KERNEL=="dv1394-[0-9]*",			GROUP="video"
KERNEL=="video1394-[0-9]*",			GROUP="video"

# input devices
KERNEL=="event[0-9]*", ATTRS{name}=="*dvb*|*DVB*|* IR *" \
				MODE="0664",	GROUP="video"
KERNEL=="js[0-9]*",		MODE="0664"
KERNEL=="event[0-9]*", ENV{ID_CLASS}=="joystick", \
				MODE="0664",	GROUP="audio"
KERNEL=="lirc[0-9]*",				GROUP="video"

KERNEL=="sgi_*",		MODE="0666"
KERNEL=="z90crypt",		MODE="0666"
KERNEL=="iseries/ibmsis*",			GROUP="disk"
KERNEL=="iseries/nvt*",				GROUP="disk"
KERNEL=="iseries/vt*",				GROUP="disk"
KERNEL=="iseries/vtty*",			GROUP="dialout"

# AOE character devices
SUBSYSTEM=="aoe",		MODE="0220",	GROUP="disk"
SUBSYSTEM=="aoe", KERNEL=="err", MODE="0440",	GROUP="disk"

LABEL="permissions_end"

