Lines Matching refs:input
7 #include <linux/input.h>
35 static void handle_buttons(struct input_dev *input)
37 struct buttons_dev *bdev = input_get_drvdata(input);
46 input_event(input, EV_MSC, MSC_SCAN, i);
47 input_report_key(input, bdev->keymap[i], 1);
48 input_sync(input);
52 input_event(input, EV_MSC, MSC_SCAN, i);
53 input_report_key(input, bdev->keymap[i], 0);
54 input_sync(input);
64 struct input_dev *input;
82 input = devm_input_allocate_device(&pdev->dev);
83 if (!input)
86 input_set_drvdata(input, bdev);
88 input->name = "Cobalt buttons";
89 input->phys = "cobalt/input0";
90 input->id.bustype = BUS_HOST;
92 input->keycode = bdev->keymap;
93 input->keycodemax = ARRAY_SIZE(bdev->keymap);
94 input->keycodesize = sizeof(unsigned short);
96 input_set_capability(input, EV_MSC, MSC_SCAN);
97 __set_bit(EV_KEY, input->evbit);
99 __set_bit(bdev->keymap[i], input->keybit);
100 __clear_bit(KEY_RESERVED, input->keybit);
103 error = input_setup_polling(input, handle_buttons);
107 input_set_poll_interval(input, BUTTONS_POLL_INTERVAL);
109 error = input_register_device(input);