Dates and Events:
|
OSADL Articles:
2021-02-09 12:00
Open Source OPC UA PubSub over TSN project phase #3 launched![]() Letter of Intent with call for participation is now available
2017-09-12 12:00
OSADL project to create Open Source license checklists![]() Facilitate Open Source software delivery
2016-09-17 12:00
Preemption latency of real-time Linux systems![]() How to measure it – and how to fix it, if it's too high? |
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.
Code
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_cif.c | UIO Hilscher CIF card driver |
uio_sercos3.c | UIO driver for the Automata Sercos III PCI card |
Library
The most recent version of the UIO library libUIO can be obtained from OSADL member Linutronix via git:
git clone git://git.linutronix.de/projects/libUIO