Lines Matching refs:handler
547 if (handle->open && handle->handler->start) in __input_release_device()
548 handle->handler->start(handle); in __input_release_device()
588 if (handle->handler->passive_observer) in input_open_device()
649 if (!handle->handler->passive_observer) { in input_close_device()
969 static const struct input_device_id *input_match_device(struct input_handler *handler, in input_match_device() argument
974 for (id = handler->id_table; id->flags; id++) { in input_match_device()
976 (!handler->match || handler->match(handler, dev))) { in input_match_device()
984 static int input_attach_handler(struct input_dev *dev, struct input_handler *handler) in input_attach_handler() argument
989 id = input_match_device(handler, dev); in input_attach_handler()
993 error = handler->connect(handler, dev, id); in input_attach_handler()
996 handler->name, kobject_name(&dev->dev.kobj), error); in input_attach_handler()
1216 struct input_handler *handler = container_of(v, struct input_handler, node); in input_handlers_seq_show() local
1219 seq_printf(seq, "N: Number=%u Name=%s", state->pos, handler->name); in input_handlers_seq_show()
1220 if (handler->filter) in input_handlers_seq_show()
1222 if (handler->legacy_minors) in input_handlers_seq_show()
1223 seq_printf(seq, " Minor=%d", handler->minor); in input_handlers_seq_show()
2223 handle->handler->disconnect(handle); in __input_unregister_device()
2349 struct input_handler *handler; in input_register_device() local
2411 list_for_each_entry(handler, &input_handler_list, node) in input_register_device()
2412 input_attach_handler(dev, handler); in input_register_device()
2458 static int input_handler_check_methods(const struct input_handler *handler) in input_handler_check_methods() argument
2462 if (handler->filter) in input_handler_check_methods()
2464 if (handler->events) in input_handler_check_methods()
2466 if (handler->event) in input_handler_check_methods()
2471 __func__, handler->name); in input_handler_check_methods()
2486 int input_register_handler(struct input_handler *handler) in input_register_handler() argument
2491 error = input_handler_check_methods(handler); in input_register_handler()
2496 INIT_LIST_HEAD(&handler->h_list); in input_register_handler()
2498 list_add_tail(&handler->node, &input_handler_list); in input_register_handler()
2501 input_attach_handler(dev, handler); in input_register_handler()
2517 void input_unregister_handler(struct input_handler *handler) in input_unregister_handler() argument
2523 list_for_each_entry_safe(handle, next, &handler->h_list, h_node) in input_unregister_handler()
2524 handler->disconnect(handle); in input_unregister_handler()
2525 WARN_ON(!list_empty(&handler->h_list)); in input_unregister_handler()
2527 list_del_init(&handler->node); in input_unregister_handler()
2545 int input_handler_for_each_handle(struct input_handler *handler, void *data, in input_handler_for_each_handle() argument
2553 list_for_each_entry_rcu(handle, &handler->h_list, h_node) { in input_handler_for_each_handle()
2571 struct input_handler *handler = handle->handler; in input_handle_events_default() local
2575 handler->event(handle, v->type, v->code, v->value); in input_handle_events_default()
2589 struct input_handler *handler = handle->handler; in input_handle_events_filter() local
2594 if (handler->filter(handle, v->type, v->code, v->value)) in input_handle_events_filter()
2620 struct input_handler *handler = handle->handler; in input_handle_setup_event_handler() local
2622 if (handler->filter) in input_handle_setup_event_handler()
2624 else if (handler->event) in input_handle_setup_event_handler()
2626 else if (handler->events) in input_handle_setup_event_handler()
2627 handle->handle_events = handler->events; in input_handle_setup_event_handler()
2645 struct input_handler *handler = handle->handler; in input_register_handle() local
2658 if (handler->filter) in input_register_handle()
2670 list_add_tail_rcu(&handle->h_node, &handler->h_list); in input_register_handle()
2672 if (handler->start) in input_register_handle()
2673 handler->start(handle); in input_register_handle()