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);
155 mutex_lock(&data->input->mutex);
156 if (input_device_enabled(data->input))
157 icn8318_stop(data->input);
158 mutex_unlock(&data->input->mutex);
167 mutex_lock(&data->input->mutex);
168 if (input_device_enabled(data->input))
169 icn8318_start(data->input);
170 mutex_unlock(&data->input->mutex);
181 struct input_dev *input;
197 input = devm_input_allocate_device(dev);
198 if (!input)
201 input->name = client->name;
202 input->id.bustype = BUS_I2C;
203 input->open = icn8318_start;
204 input->close = icn8318_stop;
205 input->dev.parent = dev;
207 input_set_capability(input, EV_ABS, ABS_MT_POSITION_X);
208 input_set_capability(input, EV_ABS, ABS_MT_POSITION_Y);
210 touchscreen_parse_properties(input, true, &data->prop);
211 if (!input_abs_get_max(input, ABS_MT_POSITION_X) ||
212 !input_abs_get_max(input, ABS_MT_POSITION_Y)) {
217 error = input_mt_init_slots(input, ICN8318_MAX_TOUCHES,
223 data->input = input;
224 input_set_drvdata(input, data);
234 icn8318_stop(data->input);
236 error = input_register_device(input);