Jump to content

evdev

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Johndela1 (talk | contribs) at 04:11, 5 September 2016 (External links). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Evdev and libevdev form a prominent part of the Linux API.
Ergonomy requires the response time to be below a certain threshold.

evdev is a generic input event interface in the Linux kernel.[1] It generalizes raw input events from device drivers and makes them available through character devices in the /dev/input/ directory.

The user-space library for the Linux kernel component evdev is called libevdev. Libevdev abstracts the evdev ioctls through type-safe interfaces and provides functions to change the appearance of the device. Libevdev shares similarities with the read system call.[2]

It sits below the process that handles input events, in between the kernel and that process.

Linux kernel → libevdev → xf86-input-evdev → X server → X client

For Weston/Wayland, the stack would look like this:

Linux kernel → libevdev → libinput → Weston → Wayland client

Since version 1.16 the xorg-xserver obtained support for libinput:

Linux kernel → libevdev → libinput → xf86-input-libinput → X server → X client

evdev is primarily used by display servers like X.org (via xf86-input-evdev driver and libevdev) and Weston.

See also

References

  1. ^ "Linux Input drivers v1.0"
  2. ^ "freedesktop.org/../libevdev".