struct_input_handler - implements one of interfaces for input devices
2. SYNOPSIS ▲
intcount); bool (
intvalue); bool (
*handle); bool legacy_minors;
3. MEMBERS ▲
event handler. This method is being called by input core with interrupts disabled and dev->event_lock spinlock held and so it may not sleep
event sequence handler. This method is being called by input core with interrupts disabled and dev->event_lock spinlock held and so it may not sleep
similar to event; separates normal event handlers from « filters ».
called after comparing deviceAqs id with handlerAqs id_table to perform fine-grained matching between device and handler
called when attaching a handler to an input device
disconnects a handler from input device
starts handler for given handle. This function is called by input core right after connect method and also when a process that « grabbed » a device releases it
set to true by drivers using legacy minor ranges
beginning of range of 32 legacy minors for devices this driver can provide
name of the handler, to be shown in /proc/bus/input/handlers
pointer to a table of input_device_ids this driver can handle
list of input handles associated with the handler
for placing the driver onto input_handler_list
4. DESCRIPTION ▲
Input handlers attach to input devices and create input handles. There are likely several handlers attached to any given input device at the same time. All of them will get their copy of input event generated by the device.
The very same structure is used to implement input filters. Input core allows filters to run first and will not pass event to regular handlers if any of the filters indicate that the event should be filtered (by returning true from their filter method).
Note that input core serializes calls to connect and disconnect methods.
5. COPYRIGHT ▲