You are here: Home / Projects / Other / 
2021-03-06 - 15:55
OSADL Projects

OSADL Project: Userspace Driver

Project Goal

Provide a generic framework for handling devices in userspace. The device driver is split into a small kernel part, which contains the device setup and the primary interrupt handling, and a user space part, which handles the device functionality.

UIO was originally part of the OSADL project "Universal Fieldbus and Industrial I/O Framework" and represents one of its kernel interfaces.

This HOWTO is part of the Linux kernel documentation.


Since kernel version 2.6.23 (commit), UIO kernel component is part of the mainline Linux Kernel. This LWN article gives some more details on it.

The mainline Linux kernel contains a number of UIO user-space drivers that can be used as a template when writing such drivers, e.g.


UIO Hilscher CIF card driver


UIO driver for the Automata Sercos III PCI card


The most recent version of the UIO library libUIO can be obtained from OSADL member Linutronix via git:

git clone git://