git: kernel - Bring in evdev from FreeBSD
Peeter Must
peeterm at crater.dragonflybsd.org
Fri Dec 8 03:10:31 PST 2017
commit d3d1dd3e4513b2ab753f8ba52f144dc916420ba6
Author: Peeter Must <karu.pruun at gmail.com>
Date: Fri Dec 8 12:43:27 2017 +0200
kernel - Bring in evdev from FreeBSD
* This is a port of evdev, the generic input event interface, from
FreeBSD. Wikipedia: "Evdev generalizes raw input events from device
drivers and makes them available through character devices in the
/dev/input/ directory."
* It is currently considered experimental since in rare cases it may cause
kernel crash when a device, e.g. usb mouse or keyboard, is detached
while a userland program reading from the corresponding input/eventX
device.
* In order to enable evdev, kernel needs to be rebuilt with 'device evdev'
and 'options EVDEV_SUPPORT'. For debugging, add 'options EVDEV_DEBUG'.
* At present, only ums, kbd and kbdmux can send events to their respective
input/eventX devices. More drivers will be added in due course. The sysctl
kern.evdev.rcpt_mask determines which drivers send events to evdev.
Summary of changes:
sys/conf/files | 4 +
sys/conf/options | 4 +
sys/config/LINT64 | 5 +
sys/dev/misc/evdev/Makefile | 6 +
sys/dev/misc/evdev/cdev.c | 887 ++++++++++++++++++++++++++++++
sys/dev/misc/evdev/evdev.c | 978 +++++++++++++++++++++++++++++++++
sys/dev/misc/evdev/evdev.h | 210 +++++++
sys/dev/misc/evdev/evdev_mt.c | 285 ++++++++++
sys/dev/misc/evdev/evdev_private.h | 221 ++++++++
sys/dev/misc/evdev/evdev_utils.c | 331 +++++++++++
sys/dev/misc/evdev/freebsd-bitstring.h | 358 ++++++++++++
sys/dev/misc/evdev/input-event-codes.h | 819 +++++++++++++++++++++++++++
sys/dev/misc/evdev/input.h | 271 +++++++++
13 files changed, 4379 insertions(+)
create mode 100755 sys/dev/misc/evdev/Makefile
create mode 100644 sys/dev/misc/evdev/cdev.c
create mode 100644 sys/dev/misc/evdev/evdev.c
create mode 100644 sys/dev/misc/evdev/evdev.h
create mode 100644 sys/dev/misc/evdev/evdev_mt.c
create mode 100644 sys/dev/misc/evdev/evdev_private.h
create mode 100644 sys/dev/misc/evdev/evdev_utils.c
create mode 100644 sys/dev/misc/evdev/freebsd-bitstring.h
create mode 100644 sys/dev/misc/evdev/input-event-codes.h
create mode 100644 sys/dev/misc/evdev/input.h
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/d3d1dd3e4513b2ab753f8ba52f144dc916420ba6
--
DragonFly BSD source repository
More information about the Commits
mailing list