Lines Matching refs:client

89 	struct i2c_client *client;  member
117 static int edt_ft5x06_ts_readwrite(struct i2c_client *client, in edt_ft5x06_ts_readwrite() argument
126 wrmsg[i].addr = client->addr; in edt_ft5x06_ts_readwrite()
133 wrmsg[i].addr = client->addr; in edt_ft5x06_ts_readwrite()
140 ret = i2c_transfer(client->adapter, wrmsg, i); in edt_ft5x06_ts_readwrite()
159 dev_err_ratelimited(&tsdata->client->dev, in edt_ft5x06_ts_check_crc()
171 struct device *dev = &tsdata->client->dev; in edt_ft5x06_ts_isr()
199 error = edt_ft5x06_ts_readwrite(tsdata->client, in edt_ft5x06_ts_isr()
268 return edt_ft5x06_ts_readwrite(tsdata->client, 4, in edt_ft5x06_register_write()
274 return edt_ft5x06_ts_readwrite(tsdata->client, 2, in edt_ft5x06_register_write()
294 error = edt_ft5x06_ts_readwrite(tsdata->client, 2, wrbuf, 2, in edt_ft5x06_register_read()
300 dev_err(&tsdata->client->dev, in edt_ft5x06_register_read()
310 error = edt_ft5x06_ts_readwrite(tsdata->client, 1, in edt_ft5x06_register_read()
349 struct i2c_client *client = to_i2c_client(dev); in edt_ft5x06_setting_show() local
350 struct edt_ft5x06_ts_data *tsdata = i2c_get_clientdata(client); in edt_ft5x06_setting_show()
384 dev_err(&tsdata->client->dev, in edt_ft5x06_setting_show()
394 dev_warn(&tsdata->client->dev, in edt_ft5x06_setting_show()
410 struct i2c_client *client = to_i2c_client(dev); in edt_ft5x06_setting_store() local
411 struct edt_ft5x06_ts_data *tsdata = i2c_get_clientdata(client); in edt_ft5x06_setting_store()
452 dev_err(&tsdata->client->dev, in edt_ft5x06_setting_store()
489 struct i2c_client *client = tsdata->client; in edt_ft5x06_factory_mode() local
494 disable_irq(client->irq); in edt_ft5x06_factory_mode()
512 dev_err(&client->dev, in edt_ft5x06_factory_mode()
527 dev_err(&client->dev, "not in factory mode after %dms.\n", in edt_ft5x06_factory_mode()
539 enable_irq(client->irq); in edt_ft5x06_factory_mode()
544 dev_err(&client->dev, "No factory mode support for M09\n"); in edt_ft5x06_factory_mode()
551 struct i2c_client *client = tsdata->client; in edt_ft5x06_work_mode() local
560 dev_err(&client->dev, in edt_ft5x06_work_mode()
576 dev_err(&client->dev, "not in work mode after %dms.\n", in edt_ft5x06_work_mode()
596 enable_irq(client->irq); in edt_ft5x06_work_mode()
637 struct i2c_client *client = tsdata->client; in edt_ft5x06_debugfs_raw_data_read() local
657 dev_dbg(&client->dev, in edt_ft5x06_debugfs_raw_data_read()
671 dev_dbg(&client->dev, in edt_ft5x06_debugfs_raw_data_read()
677 dev_dbg(&client->dev, in edt_ft5x06_debugfs_raw_data_read()
690 error = edt_ft5x06_ts_readwrite(tsdata->client, in edt_ft5x06_debugfs_raw_data_read()
755 static int edt_ft5x06_ts_reset(struct i2c_client *client, in edt_ft5x06_ts_reset() argument
761 error = devm_gpio_request_one(&client->dev, in edt_ft5x06_ts_reset()
765 dev_err(&client->dev, in edt_ft5x06_ts_reset()
776 error = devm_gpio_request_one(&client->dev, in edt_ft5x06_ts_reset()
780 dev_err(&client->dev, in edt_ft5x06_ts_reset()
794 static int edt_ft5x06_ts_identify(struct i2c_client *client, in edt_ft5x06_ts_identify() argument
808 error = edt_ft5x06_ts_readwrite(client, 1, "\xbb", in edt_ft5x06_ts_identify()
834 error = edt_ft5x06_ts_readwrite(client, 1, "\xA6", in edt_ft5x06_ts_identify()
841 error = edt_ft5x06_ts_readwrite(client, 1, "\xA8", in edt_ft5x06_ts_identify()
958 static int edt_ft5x06_ts_probe(struct i2c_client *client, in edt_ft5x06_ts_probe() argument
962 dev_get_platdata(&client->dev); in edt_ft5x06_ts_probe()
968 dev_dbg(&client->dev, "probing for EDT FT5x06 I2C\n"); in edt_ft5x06_ts_probe()
970 tsdata = devm_kzalloc(&client->dev, sizeof(*tsdata), GFP_KERNEL); in edt_ft5x06_ts_probe()
972 dev_err(&client->dev, "failed to allocate driver data.\n"); in edt_ft5x06_ts_probe()
977 error = edt_ft5x06_i2c_ts_probe_dt(&client->dev, tsdata); in edt_ft5x06_ts_probe()
979 dev_err(&client->dev, in edt_ft5x06_ts_probe()
989 error = edt_ft5x06_ts_reset(client, tsdata); in edt_ft5x06_ts_probe()
994 error = devm_gpio_request_one(&client->dev, tsdata->irq_pin, in edt_ft5x06_ts_probe()
997 dev_err(&client->dev, in edt_ft5x06_ts_probe()
1004 input = devm_input_allocate_device(&client->dev); in edt_ft5x06_ts_probe()
1006 dev_err(&client->dev, "failed to allocate input device.\n"); in edt_ft5x06_ts_probe()
1011 tsdata->client = client; in edt_ft5x06_ts_probe()
1015 error = edt_ft5x06_ts_identify(client, tsdata, fw_version); in edt_ft5x06_ts_probe()
1017 dev_err(&client->dev, "touchscreen probe failed\n"); in edt_ft5x06_ts_probe()
1024 edt_ft5x06_ts_get_dt_defaults(client->dev.of_node, tsdata); in edt_ft5x06_ts_probe()
1030 dev_dbg(&client->dev, in edt_ft5x06_ts_probe()
1036 input->dev.parent = &client->dev; in edt_ft5x06_ts_probe()
1053 dev_err(&client->dev, "Unable to init MT slots.\n"); in edt_ft5x06_ts_probe()
1058 i2c_set_clientdata(client, tsdata); in edt_ft5x06_ts_probe()
1060 error = devm_request_threaded_irq(&client->dev, client->irq, NULL, in edt_ft5x06_ts_probe()
1063 client->name, tsdata); in edt_ft5x06_ts_probe()
1065 dev_err(&client->dev, "Unable to request touchscreen IRQ.\n"); in edt_ft5x06_ts_probe()
1069 error = sysfs_create_group(&client->dev.kobj, &edt_ft5x06_attr_group); in edt_ft5x06_ts_probe()
1077 edt_ft5x06_ts_prepare_debugfs(tsdata, dev_driver_string(&client->dev)); in edt_ft5x06_ts_probe()
1078 device_init_wakeup(&client->dev, 1); in edt_ft5x06_ts_probe()
1080 dev_dbg(&client->dev, in edt_ft5x06_ts_probe()
1082 client->irq, tsdata->wake_pin, tsdata->reset_pin); in edt_ft5x06_ts_probe()
1087 sysfs_remove_group(&client->dev.kobj, &edt_ft5x06_attr_group); in edt_ft5x06_ts_probe()
1091 static int edt_ft5x06_ts_remove(struct i2c_client *client) in edt_ft5x06_ts_remove() argument
1093 struct edt_ft5x06_ts_data *tsdata = i2c_get_clientdata(client); in edt_ft5x06_ts_remove()
1096 sysfs_remove_group(&client->dev.kobj, &edt_ft5x06_attr_group); in edt_ft5x06_ts_remove()
1103 struct i2c_client *client = to_i2c_client(dev); in edt_ft5x06_ts_suspend() local
1106 enable_irq_wake(client->irq); in edt_ft5x06_ts_suspend()
1113 struct i2c_client *client = to_i2c_client(dev); in edt_ft5x06_ts_resume() local
1116 disable_irq_wake(client->irq); in edt_ft5x06_ts_resume()