The Linux Kernel
6.4.0-rc5
Quick search
Contents
A guide to the Kernel Development Process
Submitting patches: the essential guide to getting your code into the kernel
Code of conduct
Kernel Maintainer Handbook
All development-process docs
Core API Documentation
Driver implementer's API guide
Kernel subsystem documentation
Driver implementer's API guide
Core API Documentation
Locking
Accounting
Block
CD-ROM
CPUFreq - CPU frequency and voltage scaling code in the Linux(TM) kernel
Frame Buffer
FPGA
Human Interface Devices (HID)
I2C/SMBus Subsystem
Industrial I/O
ISDN
InfiniBand
LEDs
NetLabel
Networking
PCMCIA
Power Management
TCM Virtual Device
Timers
Serial Peripheral Interface (SPI)
1-Wire Subsystem
Watchdog Support
Virtualization Support
Input Documentation
Linux Input Subsystem userspace API
Linux Input Subsystem kernel API
Driver-specific documentation
Hardware Monitoring
GPU Driver Developer's Guide
Compute Accelerators
Security Documentation
Sound Subsystem Documentation
Crypto API
Filesystems in the Linux kernel
Memory Management Documentation
BPF Documentation
USB support
PCI Bus Subsystem
SCSI Subsystem
Assorted Miscellaneous Devices Documentation
Scheduler
MHI
PECI Subsystem
Locking in the kernel
Linux kernel licensing rules
How to write kernel documentation
Development tools for the kernel
Kernel Testing Guide
Kernel Hacking Guides
Linux Tracing Technologies
fault-injection
Kernel Livepatching
Rust
The Linux kernel user's and administrator's guide
The kernel build system
Reporting issues
User-space tools
The Linux kernel user-space API guide
The Linux kernel firmware guide
Open Firmware and Devicetree
CPU Architectures
Unsorted Documentation
Translations
This Page
Show Source
Linux Input Subsystem userspace API
ΒΆ
Table of Contents
1. Introduction
1.1. Architecture
1.2. Simple Usage
1.3. Detailed Description
1.4. Verifying if it works
1.5. Event interface
2. Input event codes
2.1. Event types
2.2. Event codes
2.3. Device properties
2.4. Guidelines
3. Multi-touch (MT) Protocol
3.1. Introduction
3.2. Protocol Usage
3.3. Protocol Example A
3.4. Protocol Example B
3.5. Event Usage
3.6. Event Semantics
3.7. Event Computation
3.8. Finger Tracking
3.9. Gestures
3.10. Notes
4. Linux Gamepad Specification
4.1. Introduction
4.2. Geometry
4.3. Detection
4.4. Events
5. Force feedback for Linux
5.1. Introduction
5.2. Instructions to the user
5.3. Instructions to the developer
6. Linux Joystick support
6.1. Introduction
6.2. Usage
6.3. Hardware-specific driver information
6.4. Troubleshooting
6.5. FAQ
6.6. Programming Interface
7. uinput module
7.1. Introduction
7.2. Interface
7.3. libevdev
7.4. Examples
8. The userio Protocol
8.1. Introduction
8.2. Usage overview
8.3. Command Structure
8.4. Commands
8.5. Userspace tools