No Linux Driver Needed

From Linux Driver Project

Revision as of 00:01, 30 March 2015 by Tomasz Grzegurzko (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

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 devices

Most of these should not need in-kernel drivers beyond those that already exist. Userspace can access USB devices via libusb, or soon via usbfs2.

USB Scanners

These devices use libusb and the xsane project to access the device properly. Please contact that project if you need new devices supported.

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

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.


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 [1] through libusb.

Generic serial interfaces

Supported by kernel drivers.

Windows Mobile RNDIS interface

Supported via rndis_host driver. Check this and this.


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.

Video Cards

A number of video cards are directly supported by the 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

Fingerprint Readers

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.

Winmodem devices

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.

Personal tools