Lines Matching refs:ts

134 static int auo_pixcir_collect_data(struct auo_pixcir_ts *ts,  in auo_pixcir_collect_data()  argument
137 struct i2c_client *client = ts->client; in auo_pixcir_collect_data()
138 const struct auo_pixcir_ts_platdata *pdata = ts->pdata; in auo_pixcir_collect_data()
183 struct auo_pixcir_ts *ts = dev_id; in auo_pixcir_interrupt() local
184 const struct auo_pixcir_ts_platdata *pdata = ts->pdata; in auo_pixcir_interrupt()
191 while (!ts->stopped) { in auo_pixcir_interrupt()
194 if (ts->touch_ind_mode) { in auo_pixcir_interrupt()
196 input_mt_sync(ts->input); in auo_pixcir_interrupt()
197 input_report_key(ts->input, BTN_TOUCH, 0); in auo_pixcir_interrupt()
198 input_sync(ts->input); in auo_pixcir_interrupt()
203 ret = auo_pixcir_collect_data(ts, point); in auo_pixcir_interrupt()
206 if (!ts->touch_ind_mode) in auo_pixcir_interrupt()
209 wait_event_timeout(ts->wait, ts->stopped, in auo_pixcir_interrupt()
216 input_report_abs(ts->input, ABS_MT_POSITION_X, in auo_pixcir_interrupt()
218 input_report_abs(ts->input, ABS_MT_POSITION_Y, in auo_pixcir_interrupt()
220 input_report_abs(ts->input, ABS_MT_TOUCH_MAJOR, in auo_pixcir_interrupt()
222 input_report_abs(ts->input, ABS_MT_TOUCH_MINOR, in auo_pixcir_interrupt()
224 input_report_abs(ts->input, ABS_MT_ORIENTATION, in auo_pixcir_interrupt()
226 input_mt_sync(ts->input); in auo_pixcir_interrupt()
239 input_report_key(ts->input, BTN_TOUCH, fingers > 0); in auo_pixcir_interrupt()
242 input_report_abs(ts->input, ABS_X, point[abs].coord_x); in auo_pixcir_interrupt()
243 input_report_abs(ts->input, ABS_Y, point[abs].coord_y); in auo_pixcir_interrupt()
246 input_sync(ts->input); in auo_pixcir_interrupt()
249 if (!ts->touch_ind_mode) in auo_pixcir_interrupt()
252 wait_event_timeout(ts->wait, ts->stopped, in auo_pixcir_interrupt()
266 static int auo_pixcir_power_mode(struct auo_pixcir_ts *ts, int mode) in auo_pixcir_power_mode() argument
268 struct i2c_client *client = ts->client; in auo_pixcir_power_mode()
291 static int auo_pixcir_int_config(struct auo_pixcir_ts *ts, in auo_pixcir_int_config() argument
294 struct i2c_client *client = ts->client; in auo_pixcir_int_config()
295 const struct auo_pixcir_ts_platdata *pdata = ts->pdata; in auo_pixcir_int_config()
317 ts->touch_ind_mode = pdata->int_setting == AUO_PIXCIR_INT_TOUCH_IND; in auo_pixcir_int_config()
323 static int auo_pixcir_int_toggle(struct auo_pixcir_ts *ts, bool enable) in auo_pixcir_int_toggle() argument
325 struct i2c_client *client = ts->client; in auo_pixcir_int_toggle()
351 static int auo_pixcir_start(struct auo_pixcir_ts *ts) in auo_pixcir_start() argument
353 struct i2c_client *client = ts->client; in auo_pixcir_start()
356 ret = auo_pixcir_power_mode(ts, AUO_PIXCIR_POWER_ACTIVE); in auo_pixcir_start()
363 ts->stopped = false; in auo_pixcir_start()
367 ret = auo_pixcir_int_toggle(ts, 1); in auo_pixcir_start()
378 static int auo_pixcir_stop(struct auo_pixcir_ts *ts) in auo_pixcir_stop() argument
380 struct i2c_client *client = ts->client; in auo_pixcir_stop()
383 ret = auo_pixcir_int_toggle(ts, 0); in auo_pixcir_stop()
392 ts->stopped = true; in auo_pixcir_stop()
394 wake_up(&ts->wait); in auo_pixcir_stop()
396 return auo_pixcir_power_mode(ts, AUO_PIXCIR_POWER_DEEP_SLEEP); in auo_pixcir_stop()
401 struct auo_pixcir_ts *ts = input_get_drvdata(dev); in auo_pixcir_input_open() local
404 ret = auo_pixcir_start(ts); in auo_pixcir_input_open()
413 struct auo_pixcir_ts *ts = input_get_drvdata(dev); in auo_pixcir_input_close() local
415 auo_pixcir_stop(ts); in auo_pixcir_input_close()
423 struct auo_pixcir_ts *ts = i2c_get_clientdata(client); in auo_pixcir_suspend() local
424 struct input_dev *input = ts->input; in auo_pixcir_suspend()
435 ret = auo_pixcir_start(ts); in auo_pixcir_suspend()
441 ret = auo_pixcir_power_mode(ts, AUO_PIXCIR_POWER_SLEEP); in auo_pixcir_suspend()
443 ret = auo_pixcir_stop(ts); in auo_pixcir_suspend()
455 struct auo_pixcir_ts *ts = i2c_get_clientdata(client); in auo_pixcir_resume() local
456 struct input_dev *input = ts->input; in auo_pixcir_resume()
466 ret = auo_pixcir_stop(ts); in auo_pixcir_resume()
473 ret = auo_pixcir_start(ts); in auo_pixcir_resume()
536 struct auo_pixcir_ts *ts = data; in auo_pixcir_reset() local
538 gpio_set_value(ts->pdata->gpio_rst, 0); in auo_pixcir_reset()
545 struct auo_pixcir_ts *ts; in auo_pixcir_probe() local
557 ts = devm_kzalloc(&client->dev, in auo_pixcir_probe()
559 if (!ts) in auo_pixcir_probe()
568 ts->pdata = pdata; in auo_pixcir_probe()
569 ts->client = client; in auo_pixcir_probe()
570 ts->input = input_dev; in auo_pixcir_probe()
571 ts->touch_ind_mode = 0; in auo_pixcir_probe()
572 ts->stopped = true; in auo_pixcir_probe()
573 init_waitqueue_head(&ts->wait); in auo_pixcir_probe()
575 snprintf(ts->phys, sizeof(ts->phys), in auo_pixcir_probe()
579 input_dev->phys = ts->phys; in auo_pixcir_probe()
605 input_set_drvdata(ts->input, ts); in auo_pixcir_probe()
624 error = devm_add_action(&client->dev, auo_pixcir_reset, ts); in auo_pixcir_probe()
626 auo_pixcir_reset(ts); in auo_pixcir_probe()
642 error = auo_pixcir_int_config(ts, pdata->int_setting); in auo_pixcir_probe()
649 input_dev->name, ts); in auo_pixcir_probe()
657 error = auo_pixcir_stop(ts); in auo_pixcir_probe()
668 i2c_set_clientdata(client, ts); in auo_pixcir_probe()