Lines Matching refs:handler
99 struct input_handler *handler = handle->handler; in input_to_handler() local
103 if (handler->filter) { in input_to_handler()
105 if (handler->filter(handle, v->type, v->code, v->value)) in input_to_handler()
117 if (handler->events) in input_to_handler()
118 handler->events(handle, vals, count); in input_to_handler()
119 else if (handler->event) in input_to_handler()
121 handler->event(handle, v->type, v->code, v->value); in input_to_handler()
556 if (handle->open && handle->handler->start) in __input_release_device()
557 handle->handler->start(handle); in __input_release_device()
934 static const struct input_device_id *input_match_device(struct input_handler *handler, in input_match_device() argument
939 for (id = handler->id_table; id->flags || id->driver_info; id++) { in input_match_device()
984 if (!handler->match || handler->match(handler, dev)) in input_match_device()
991 static int input_attach_handler(struct input_dev *dev, struct input_handler *handler) in input_attach_handler() argument
996 id = input_match_device(handler, dev); in input_attach_handler()
1000 error = handler->connect(handler, dev, id); in input_attach_handler()
1003 handler->name, kobject_name(&dev->dev.kobj), error); in input_attach_handler()
1228 struct input_handler *handler = container_of(v, struct input_handler, node); in input_handlers_seq_show() local
1231 seq_printf(seq, "N: Number=%u Name=%s", state->pos, handler->name); in input_handlers_seq_show()
1232 if (handler->filter) in input_handlers_seq_show()
1234 if (handler->legacy_minors) in input_handlers_seq_show()
1235 seq_printf(seq, " Minor=%d", handler->minor); in input_handlers_seq_show()
2034 handle->handler->disconnect(handle); in __input_unregister_device()
2083 struct input_handler *handler; in input_register_device() local
2150 list_for_each_entry(handler, &input_handler_list, node) in input_register_device()
2151 input_attach_handler(dev, handler); in input_register_device()
2209 int input_register_handler(struct input_handler *handler) in input_register_handler() argument
2218 INIT_LIST_HEAD(&handler->h_list); in input_register_handler()
2220 list_add_tail(&handler->node, &input_handler_list); in input_register_handler()
2223 input_attach_handler(dev, handler); in input_register_handler()
2239 void input_unregister_handler(struct input_handler *handler) in input_unregister_handler() argument
2245 list_for_each_entry_safe(handle, next, &handler->h_list, h_node) in input_unregister_handler()
2246 handler->disconnect(handle); in input_unregister_handler()
2247 WARN_ON(!list_empty(&handler->h_list)); in input_unregister_handler()
2249 list_del_init(&handler->node); in input_unregister_handler()
2269 int input_handler_for_each_handle(struct input_handler *handler, void *data, in input_handler_for_each_handle() argument
2277 list_for_each_entry_rcu(handle, &handler->h_list, h_node) { in input_handler_for_each_handle()
2302 struct input_handler *handler = handle->handler; in input_register_handle() local
2318 if (handler->filter) in input_register_handle()
2331 list_add_tail_rcu(&handle->h_node, &handler->h_list); in input_register_handle()
2333 if (handler->start) in input_register_handle()
2334 handler->start(handle); in input_register_handle()