No Linux Driver Needed
Revision as of 04:02, 7 May 2012 by Tomasz Grzegurzko
Not all devices need a Linux kernel driver in order to work properly. The following is a list of some of these types of devices.
USB Digital Cameras
For digital cameras, first check if the camera shows up as a mass storage device; if not, see gphoto.
USB Media Players (music, video)
If the device shows up as a mass storage device, then either it finds media automatically (no driver needed) or it needs a magic media index built (userspace support needed only). If the device does not show up as a mass storage device, it can have a driver written in userspace (no kernel driver needed, often using libusb). Such userspace drivers exist for e.g MTP devices (see libmtp), NOMAD devices (libnjb).
Mobile phones can typically present several types of interfaces, sometimes all at once. They are all already supported through kernel drivers or userspace libraries.
Mass storage interface
Kernel driver available, but occasionally device quirks need to be specified for new phones.
CDC ACM Modem
Supported by cdc_acm kernel driver.
OBEX filetransfer interface
Supported through libopenobex (which is using libusb) and various frontends to that library.
OBEX SyncML interface
Supported through OpenSync and libsyncml library that it includes (that in turn is using libopenobex).
Nokia FBUS interface also known as DKU2 interface
Supported by  through libusb.
Generic serial interfaces
Supported by kernel drivers.
Windows Mobile RNDIS interface
All Linux printer drivers are done in userspace. Contact the Linux Printing Project if you have a printer that you wish to get properly supported under Linux.
A number of video cards are directly supported by the x.org project and do not need a kernel driver. However, for some newer devices, to get properly 3d graphics support, a kernel driver is needed to help out the X side. We will be glad to help out with the kernel driver for projects like this if needed.
For GPS devices, see gpsd
These are the same as scanners mentioned above, kernel drivers are not needed. The fprint project supports a lot of fingerprint scanners found in consumer devices.
Spectrometers and Colorimeters
These devices are used for colour calibration and profiling. A number of them are supported via the Argyll CMS project and don't need a kernel driver.
The large majority of these devices are already supported by the ALSA modem drivers, and should work just fine in the latest version of your favorite Linux distribution.
FireWire Audio devices
FireWire Audio devices are handled in userspace; see the FFADO project.
Uninterruptible Power Supplies (UPS)
These devices, whatever the bus used (serial, USB, network), use Network UPS Tools project to access the device properly. Please contact that project if you need new devices supported.