Merge branch 'next' into for-linus
This commit is contained in:
@ -378,7 +378,7 @@ struct input_absinfo {
|
||||
#define KEY_WIMAX 246
|
||||
#define KEY_RFKILL 247 /* Key that controls all radios */
|
||||
|
||||
/* Range 248 - 255 is reserved for special needs of AT keyboard driver */
|
||||
/* Code 255 is reserved for special needs of AT keyboard driver */
|
||||
|
||||
#define BTN_MISC 0x100
|
||||
#define BTN_0 0x100
|
||||
@ -597,6 +597,7 @@ struct input_absinfo {
|
||||
#define KEY_NUMERIC_POUND 0x20b
|
||||
|
||||
#define KEY_CAMERA_FOCUS 0x210
|
||||
#define KEY_WPS_BUTTON 0x211 /* WiFi Protected Setup key */
|
||||
|
||||
/* We avoid low common keys in module aliases so they don't get huge. */
|
||||
#define KEY_MIN_INTERESTING KEY_MUTE
|
||||
@ -1200,6 +1201,10 @@ struct input_handle;
|
||||
* @event: 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
|
||||
* @filter: similar to @event; separates normal event handlers from
|
||||
* "filters".
|
||||
* @match: called after comparing device's id with handler's id_table
|
||||
* to perform fine-grained matching between device and handler
|
||||
* @connect: called when attaching a handler to an input device
|
||||
* @disconnect: disconnects a handler from input device
|
||||
* @start: starts handler for given handle. This function is called by
|
||||
@ -1211,8 +1216,6 @@ struct input_handle;
|
||||
* @name: name of the handler, to be shown in /proc/bus/input/handlers
|
||||
* @id_table: pointer to a table of input_device_ids this driver can
|
||||
* handle
|
||||
* @blacklist: pointer to a table of input_device_ids this driver should
|
||||
* ignore even if they match @id_table
|
||||
* @h_list: list of input handles associated with the handler
|
||||
* @node: for placing the driver onto input_handler_list
|
||||
*
|
||||
@ -1221,6 +1224,11 @@ struct input_handle;
|
||||
* 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.
|
||||
*/
|
||||
@ -1229,6 +1237,8 @@ struct input_handler {
|
||||
void *private;
|
||||
|
||||
void (*event)(struct input_handle *handle, unsigned int type, unsigned int code, int value);
|
||||
bool (*filter)(struct input_handle *handle, unsigned int type, unsigned int code, int value);
|
||||
bool (*match)(struct input_handler *handler, struct input_dev *dev);
|
||||
int (*connect)(struct input_handler *handler, struct input_dev *dev, const struct input_device_id *id);
|
||||
void (*disconnect)(struct input_handle *handle);
|
||||
void (*start)(struct input_handle *handle);
|
||||
@ -1238,7 +1248,6 @@ struct input_handler {
|
||||
const char *name;
|
||||
|
||||
const struct input_device_id *id_table;
|
||||
const struct input_device_id *blacklist;
|
||||
|
||||
struct list_head h_list;
|
||||
struct list_head node;
|
||||
|
Reference in New Issue
Block a user