Hubbry Logo
search button
Sign in
Evdev
Evdev
Comunity Hub
arrow-down
History
arrow-down
starMore
arrow-down
bob

Bob

Have a question related to this hub?

bob

Alice

Got something to say related to this hub?
Share it here.

#general is a chat channel to discuss anything related to the hub.
Hubbry Logo
search button
Sign in
Evdev
Community hub for the Wikipedia article
logoWikipedian hub
Welcome to the community hub built on top of the Evdev Wikipedia article. Here, you can discuss, collect, and organize anything related to Evdev. The purpose of the hub is to connect people, foster deeper...
Add your contribution
Evdev
Evdev and libevdev form a prominent part of the Linux API.

evdev (short for 'event device') is a generic input event interface in the Linux kernel and FreeBSD.[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 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.

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

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

kernel → libevdev → libinputWayland compositor → Wayland client

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

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, as well as by games and console emulators making use of USB and Bluetooth controllers.

See also

[edit]

References

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