Lines Matching refs:input

54 	struct input_dev *input;  member
119 input_mt_slot(data->input, touch->slot); in icn8318_irq()
120 input_mt_report_slot_state(data->input, MT_TOOL_FINGER, act); in icn8318_irq()
124 touchscreen_report_pos(data->input, &data->prop, in icn8318_irq()
129 input_mt_sync_frame(data->input); in icn8318_irq()
130 input_sync(data->input); in icn8318_irq()
160 mutex_lock(&data->input->mutex); in icn8318_suspend()
161 if (data->input->users) in icn8318_suspend()
162 icn8318_stop(data->input); in icn8318_suspend()
163 mutex_unlock(&data->input->mutex); in icn8318_suspend()
172 mutex_lock(&data->input->mutex); in icn8318_resume()
173 if (data->input->users) in icn8318_resume()
174 icn8318_start(data->input); in icn8318_resume()
175 mutex_unlock(&data->input->mutex); in icn8318_resume()
188 struct input_dev *input; in icn8318_probe() local
208 input = devm_input_allocate_device(dev); in icn8318_probe()
209 if (!input) in icn8318_probe()
212 input->name = client->name; in icn8318_probe()
213 input->id.bustype = BUS_I2C; in icn8318_probe()
214 input->open = icn8318_start; in icn8318_probe()
215 input->close = icn8318_stop; in icn8318_probe()
216 input->dev.parent = dev; in icn8318_probe()
218 input_set_capability(input, EV_ABS, ABS_MT_POSITION_X); in icn8318_probe()
219 input_set_capability(input, EV_ABS, ABS_MT_POSITION_Y); in icn8318_probe()
221 touchscreen_parse_properties(input, true, &data->prop); in icn8318_probe()
222 if (!input_abs_get_max(input, ABS_MT_POSITION_X) || in icn8318_probe()
223 !input_abs_get_max(input, ABS_MT_POSITION_Y)) { in icn8318_probe()
228 error = input_mt_init_slots(input, ICN8318_MAX_TOUCHES, in icn8318_probe()
234 data->input = input; in icn8318_probe()
235 input_set_drvdata(input, data); in icn8318_probe()
245 icn8318_stop(data->input); in icn8318_probe()
247 error = input_register_device(input); in icn8318_probe()