Lines Matching refs:input
14 #include <linux/input.h>
15 #include <linux/input/mt.h>
16 #include <linux/input/touchscreen.h>
50 struct input_dev *input;
115 input_mt_slot(data->input, touch->slot);
116 input_mt_report_slot_state(data->input, MT_TOOL_FINGER, act);
120 touchscreen_report_pos(data->input, &data->prop,
125 input_mt_sync_frame(data->input);
126 input_sync(data->input);
156 mutex_lock(&data->input->mutex);
157 if (data->input->users)
158 icn8318_stop(data->input);
159 mutex_unlock(&data->input->mutex);
168 mutex_lock(&data->input->mutex);
169 if (data->input->users)
170 icn8318_start(data->input);
171 mutex_unlock(&data->input->mutex);
184 struct input_dev *input;
204 input = devm_input_allocate_device(dev);
205 if (!input)
208 input->name = client->name;
209 input->id.bustype = BUS_I2C;
210 input->open = icn8318_start;
211 input->close = icn8318_stop;
212 input->dev.parent = dev;
214 input_set_capability(input, EV_ABS, ABS_MT_POSITION_X);
215 input_set_capability(input, EV_ABS, ABS_MT_POSITION_Y);
217 touchscreen_parse_properties(input, true, &data->prop);
218 if (!input_abs_get_max(input, ABS_MT_POSITION_X) ||
219 !input_abs_get_max(input, ABS_MT_POSITION_Y)) {
224 error = input_mt_init_slots(input, ICN8318_MAX_TOUCHES,
230 data->input = input;
231 input_set_drvdata(input, data);
241 icn8318_stop(data->input);
243 error = input_register_device(input);