# This file lists modules which will not be loaded by udev,
# not at coldplugging and not on hotplug events.

# Add your own entries to this file
# in the format "blacklist <name of module>"

# Some examples:
# evbug is a debug tool and should be loaded explicitly
blacklist evbug

# Autoloading eth1394 most of the time re-orders your network
# interfaces, and with buggy kernel 2.6.21, udev persistent-net
# is not able to rename these devices, so you get eth?_rename devices
# plus an exceeded 30sec boot timeout
blacklist eth1394

# You probably want this to not get the console beep loud on every tab :)
#blacklist pcspkr

# these drivers are very simple, the HID drivers are usually preferred
#blacklist usbmouse
#blacklist usbkbd

# Sometimes loading a framebuffer driver at boot gets the console black
#install pci:v*d*sv*sd*bc03sc*i* /bin/true

# hplip and cups 1.4+ use raw USB devices, so it requires usblp not be loaded
#blacklist usblp

