tsdata            153 drivers/input/touchscreen/edt-ft5x06.c static bool edt_ft5x06_ts_check_crc(struct edt_ft5x06_ts_data *tsdata,
tsdata            163 drivers/input/touchscreen/edt-ft5x06.c 		dev_err_ratelimited(&tsdata->client->dev,
tsdata            174 drivers/input/touchscreen/edt-ft5x06.c 	struct edt_ft5x06_ts_data *tsdata = dev_id;
tsdata            175 drivers/input/touchscreen/edt-ft5x06.c 	struct device *dev = &tsdata->client->dev;
tsdata            182 drivers/input/touchscreen/edt-ft5x06.c 	switch (tsdata->version) {
tsdata            205 drivers/input/touchscreen/edt-ft5x06.c 	datalen = tplen * tsdata->max_support_points + offset + crclen;
tsdata            207 drivers/input/touchscreen/edt-ft5x06.c 	error = edt_ft5x06_ts_readwrite(tsdata->client,
tsdata            217 drivers/input/touchscreen/edt-ft5x06.c 	if (tsdata->version == EDT_M06) {
tsdata            226 drivers/input/touchscreen/edt-ft5x06.c 		if (!edt_ft5x06_ts_check_crc(tsdata, rdbuf, datalen))
tsdata            230 drivers/input/touchscreen/edt-ft5x06.c 	for (i = 0; i < tsdata->max_support_points; i++) {
tsdata            239 drivers/input/touchscreen/edt-ft5x06.c 		if (tsdata->version == EDT_M06 && type == TOUCH_EVENT_DOWN)
tsdata            245 drivers/input/touchscreen/edt-ft5x06.c 		if (tsdata->version == EV_FT)
tsdata            250 drivers/input/touchscreen/edt-ft5x06.c 		input_mt_slot(tsdata->input, id);
tsdata            251 drivers/input/touchscreen/edt-ft5x06.c 		if (input_mt_report_slot_state(tsdata->input, MT_TOOL_FINGER,
tsdata            253 drivers/input/touchscreen/edt-ft5x06.c 			touchscreen_report_pos(tsdata->input, &tsdata->prop,
tsdata            257 drivers/input/touchscreen/edt-ft5x06.c 	input_mt_report_pointer_emulation(tsdata->input, true);
tsdata            258 drivers/input/touchscreen/edt-ft5x06.c 	input_sync(tsdata->input);
tsdata            264 drivers/input/touchscreen/edt-ft5x06.c static int edt_ft5x06_register_write(struct edt_ft5x06_ts_data *tsdata,
tsdata            269 drivers/input/touchscreen/edt-ft5x06.c 	switch (tsdata->version) {
tsdata            271 drivers/input/touchscreen/edt-ft5x06.c 		wrbuf[0] = tsdata->factory_mode ? 0xf3 : 0xfc;
tsdata            272 drivers/input/touchscreen/edt-ft5x06.c 		wrbuf[1] = tsdata->factory_mode ? addr & 0x7f : addr & 0x3f;
tsdata            275 drivers/input/touchscreen/edt-ft5x06.c 		return edt_ft5x06_ts_readwrite(tsdata->client, 4,
tsdata            285 drivers/input/touchscreen/edt-ft5x06.c 		return edt_ft5x06_ts_readwrite(tsdata->client, 2,
tsdata            293 drivers/input/touchscreen/edt-ft5x06.c static int edt_ft5x06_register_read(struct edt_ft5x06_ts_data *tsdata,
tsdata            299 drivers/input/touchscreen/edt-ft5x06.c 	switch (tsdata->version) {
tsdata            301 drivers/input/touchscreen/edt-ft5x06.c 		wrbuf[0] = tsdata->factory_mode ? 0xf3 : 0xfc;
tsdata            302 drivers/input/touchscreen/edt-ft5x06.c 		wrbuf[1] = tsdata->factory_mode ? addr & 0x7f : addr & 0x3f;
tsdata            303 drivers/input/touchscreen/edt-ft5x06.c 		wrbuf[1] |= tsdata->factory_mode ? 0x80 : 0x40;
tsdata            305 drivers/input/touchscreen/edt-ft5x06.c 		error = edt_ft5x06_ts_readwrite(tsdata->client, 2, wrbuf, 2,
tsdata            311 drivers/input/touchscreen/edt-ft5x06.c 			dev_err(&tsdata->client->dev,
tsdata            325 drivers/input/touchscreen/edt-ft5x06.c 		error = edt_ft5x06_ts_readwrite(tsdata->client, 1,
tsdata            367 drivers/input/touchscreen/edt-ft5x06.c 	struct edt_ft5x06_ts_data *tsdata = i2c_get_clientdata(client);
tsdata            370 drivers/input/touchscreen/edt-ft5x06.c 	u8 *field = (u8 *)tsdata + attr->field_offset;
tsdata            376 drivers/input/touchscreen/edt-ft5x06.c 	mutex_lock(&tsdata->mutex);
tsdata            378 drivers/input/touchscreen/edt-ft5x06.c 	if (tsdata->factory_mode) {
tsdata            383 drivers/input/touchscreen/edt-ft5x06.c 	switch (tsdata->version) {
tsdata            404 drivers/input/touchscreen/edt-ft5x06.c 		val = edt_ft5x06_register_read(tsdata, addr);
tsdata            407 drivers/input/touchscreen/edt-ft5x06.c 			dev_err(&tsdata->client->dev,
tsdata            417 drivers/input/touchscreen/edt-ft5x06.c 		dev_warn(&tsdata->client->dev,
tsdata            425 drivers/input/touchscreen/edt-ft5x06.c 	mutex_unlock(&tsdata->mutex);
tsdata            434 drivers/input/touchscreen/edt-ft5x06.c 	struct edt_ft5x06_ts_data *tsdata = i2c_get_clientdata(client);
tsdata            437 drivers/input/touchscreen/edt-ft5x06.c 	u8 *field = (u8 *)tsdata + attr->field_offset;
tsdata            442 drivers/input/touchscreen/edt-ft5x06.c 	mutex_lock(&tsdata->mutex);
tsdata            444 drivers/input/touchscreen/edt-ft5x06.c 	if (tsdata->factory_mode) {
tsdata            458 drivers/input/touchscreen/edt-ft5x06.c 	switch (tsdata->version) {
tsdata            479 drivers/input/touchscreen/edt-ft5x06.c 		error = edt_ft5x06_register_write(tsdata, addr, val);
tsdata            481 drivers/input/touchscreen/edt-ft5x06.c 			dev_err(&tsdata->client->dev,
tsdata            490 drivers/input/touchscreen/edt-ft5x06.c 	mutex_unlock(&tsdata->mutex);
tsdata            528 drivers/input/touchscreen/edt-ft5x06.c static int edt_ft5x06_factory_mode(struct edt_ft5x06_ts_data *tsdata)
tsdata            530 drivers/input/touchscreen/edt-ft5x06.c 	struct i2c_client *client = tsdata->client;
tsdata            535 drivers/input/touchscreen/edt-ft5x06.c 	if (tsdata->version != EDT_M06) {
tsdata            543 drivers/input/touchscreen/edt-ft5x06.c 	if (!tsdata->raw_buffer) {
tsdata            544 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->raw_bufsize = tsdata->num_x * tsdata->num_y *
tsdata            546 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->raw_buffer = kzalloc(tsdata->raw_bufsize, GFP_KERNEL);
tsdata            547 drivers/input/touchscreen/edt-ft5x06.c 		if (!tsdata->raw_buffer) {
tsdata            554 drivers/input/touchscreen/edt-ft5x06.c 	error = edt_ft5x06_register_write(tsdata, WORK_REGISTER_OPMODE, 0x03);
tsdata            561 drivers/input/touchscreen/edt-ft5x06.c 	tsdata->factory_mode = true;
tsdata            565 drivers/input/touchscreen/edt-ft5x06.c 		ret = edt_ft5x06_register_read(tsdata, FACTORY_REGISTER_OPMODE);
tsdata            580 drivers/input/touchscreen/edt-ft5x06.c 	kfree(tsdata->raw_buffer);
tsdata            581 drivers/input/touchscreen/edt-ft5x06.c 	tsdata->raw_buffer = NULL;
tsdata            582 drivers/input/touchscreen/edt-ft5x06.c 	tsdata->factory_mode = false;
tsdata            588 drivers/input/touchscreen/edt-ft5x06.c static int edt_ft5x06_work_mode(struct edt_ft5x06_ts_data *tsdata)
tsdata            590 drivers/input/touchscreen/edt-ft5x06.c 	struct i2c_client *client = tsdata->client;
tsdata            592 drivers/input/touchscreen/edt-ft5x06.c 	struct edt_reg_addr *reg_addr = &tsdata->reg_addr;
tsdata            597 drivers/input/touchscreen/edt-ft5x06.c 	error = edt_ft5x06_register_write(tsdata, FACTORY_REGISTER_OPMODE, 0x1);
tsdata            604 drivers/input/touchscreen/edt-ft5x06.c 	tsdata->factory_mode = false;
tsdata            609 drivers/input/touchscreen/edt-ft5x06.c 		ret = edt_ft5x06_register_read(tsdata, WORK_REGISTER_OPMODE);
tsdata            617 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->factory_mode = true;
tsdata            621 drivers/input/touchscreen/edt-ft5x06.c 	kfree(tsdata->raw_buffer);
tsdata            622 drivers/input/touchscreen/edt-ft5x06.c 	tsdata->raw_buffer = NULL;
tsdata            625 drivers/input/touchscreen/edt-ft5x06.c 	edt_ft5x06_register_write(tsdata, reg_addr->reg_threshold,
tsdata            626 drivers/input/touchscreen/edt-ft5x06.c 				  tsdata->threshold);
tsdata            627 drivers/input/touchscreen/edt-ft5x06.c 	edt_ft5x06_register_write(tsdata, reg_addr->reg_gain,
tsdata            628 drivers/input/touchscreen/edt-ft5x06.c 				  tsdata->gain);
tsdata            630 drivers/input/touchscreen/edt-ft5x06.c 		edt_ft5x06_register_write(tsdata, reg_addr->reg_offset,
tsdata            631 drivers/input/touchscreen/edt-ft5x06.c 					  tsdata->offset);
tsdata            633 drivers/input/touchscreen/edt-ft5x06.c 		edt_ft5x06_register_write(tsdata, reg_addr->reg_offset_x,
tsdata            634 drivers/input/touchscreen/edt-ft5x06.c 					  tsdata->offset_x);
tsdata            636 drivers/input/touchscreen/edt-ft5x06.c 		edt_ft5x06_register_write(tsdata, reg_addr->reg_offset_y,
tsdata            637 drivers/input/touchscreen/edt-ft5x06.c 					  tsdata->offset_y);
tsdata            639 drivers/input/touchscreen/edt-ft5x06.c 		edt_ft5x06_register_write(tsdata, reg_addr->reg_report_rate,
tsdata            640 drivers/input/touchscreen/edt-ft5x06.c 				  tsdata->report_rate);
tsdata            649 drivers/input/touchscreen/edt-ft5x06.c 	struct edt_ft5x06_ts_data *tsdata = data;
tsdata            651 drivers/input/touchscreen/edt-ft5x06.c 	*mode = tsdata->factory_mode;
tsdata            658 drivers/input/touchscreen/edt-ft5x06.c 	struct edt_ft5x06_ts_data *tsdata = data;
tsdata            664 drivers/input/touchscreen/edt-ft5x06.c 	mutex_lock(&tsdata->mutex);
tsdata            666 drivers/input/touchscreen/edt-ft5x06.c 	if (mode != tsdata->factory_mode) {
tsdata            667 drivers/input/touchscreen/edt-ft5x06.c 		retval = mode ? edt_ft5x06_factory_mode(tsdata) :
tsdata            668 drivers/input/touchscreen/edt-ft5x06.c 				edt_ft5x06_work_mode(tsdata);
tsdata            671 drivers/input/touchscreen/edt-ft5x06.c 	mutex_unlock(&tsdata->mutex);
tsdata            682 drivers/input/touchscreen/edt-ft5x06.c 	struct edt_ft5x06_ts_data *tsdata = file->private_data;
tsdata            683 drivers/input/touchscreen/edt-ft5x06.c 	struct i2c_client *client = tsdata->client;
tsdata            691 drivers/input/touchscreen/edt-ft5x06.c 	if (*off < 0 || *off >= tsdata->raw_bufsize)
tsdata            694 drivers/input/touchscreen/edt-ft5x06.c 	mutex_lock(&tsdata->mutex);
tsdata            696 drivers/input/touchscreen/edt-ft5x06.c 	if (!tsdata->factory_mode || !tsdata->raw_buffer) {
tsdata            701 drivers/input/touchscreen/edt-ft5x06.c 	error = edt_ft5x06_register_write(tsdata, 0x08, 0x01);
tsdata            710 drivers/input/touchscreen/edt-ft5x06.c 		val = edt_ft5x06_register_read(tsdata, 0x08);
tsdata            729 drivers/input/touchscreen/edt-ft5x06.c 	rdbuf = tsdata->raw_buffer;
tsdata            730 drivers/input/touchscreen/edt-ft5x06.c 	colbytes = tsdata->num_y * sizeof(u16);
tsdata            734 drivers/input/touchscreen/edt-ft5x06.c 	for (i = 0; i < tsdata->num_x; i++) {
tsdata            736 drivers/input/touchscreen/edt-ft5x06.c 		error = edt_ft5x06_ts_readwrite(tsdata->client,
tsdata            745 drivers/input/touchscreen/edt-ft5x06.c 	read = min_t(size_t, count, tsdata->raw_bufsize - *off);
tsdata            746 drivers/input/touchscreen/edt-ft5x06.c 	if (copy_to_user(buf, tsdata->raw_buffer + *off, read)) {
tsdata            753 drivers/input/touchscreen/edt-ft5x06.c 	mutex_unlock(&tsdata->mutex);
tsdata            763 drivers/input/touchscreen/edt-ft5x06.c edt_ft5x06_ts_prepare_debugfs(struct edt_ft5x06_ts_data *tsdata,
tsdata            766 drivers/input/touchscreen/edt-ft5x06.c 	tsdata->debug_dir = debugfs_create_dir(debugfs_name, NULL);
tsdata            768 drivers/input/touchscreen/edt-ft5x06.c 	debugfs_create_u16("num_x", S_IRUSR, tsdata->debug_dir, &tsdata->num_x);
tsdata            769 drivers/input/touchscreen/edt-ft5x06.c 	debugfs_create_u16("num_y", S_IRUSR, tsdata->debug_dir, &tsdata->num_y);
tsdata            772 drivers/input/touchscreen/edt-ft5x06.c 			    tsdata->debug_dir, tsdata, &debugfs_mode_fops);
tsdata            774 drivers/input/touchscreen/edt-ft5x06.c 			    tsdata->debug_dir, tsdata, &debugfs_raw_data_fops);
tsdata            778 drivers/input/touchscreen/edt-ft5x06.c edt_ft5x06_ts_teardown_debugfs(struct edt_ft5x06_ts_data *tsdata)
tsdata            780 drivers/input/touchscreen/edt-ft5x06.c 	debugfs_remove_recursive(tsdata->debug_dir);
tsdata            781 drivers/input/touchscreen/edt-ft5x06.c 	kfree(tsdata->raw_buffer);
tsdata            787 drivers/input/touchscreen/edt-ft5x06.c edt_ft5x06_ts_prepare_debugfs(struct edt_ft5x06_ts_data *tsdata,
tsdata            793 drivers/input/touchscreen/edt-ft5x06.c edt_ft5x06_ts_teardown_debugfs(struct edt_ft5x06_ts_data *tsdata)
tsdata            800 drivers/input/touchscreen/edt-ft5x06.c 					struct edt_ft5x06_ts_data *tsdata,
tsdata            806 drivers/input/touchscreen/edt-ft5x06.c 	char *model_name = tsdata->name;
tsdata            823 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->version = EDT_M06;
tsdata            837 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->version = EDT_M12;
tsdata            860 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->version = GENERIC_FT;
tsdata            884 drivers/input/touchscreen/edt-ft5x06.c 			tsdata->version = EDT_M09;
tsdata            889 drivers/input/touchscreen/edt-ft5x06.c 			tsdata->version = EDT_M09;
tsdata            897 drivers/input/touchscreen/edt-ft5x06.c 			tsdata->version = EV_FT;
tsdata            918 drivers/input/touchscreen/edt-ft5x06.c 				       struct edt_ft5x06_ts_data *tsdata)
tsdata            920 drivers/input/touchscreen/edt-ft5x06.c 	struct edt_reg_addr *reg_addr = &tsdata->reg_addr;
tsdata            926 drivers/input/touchscreen/edt-ft5x06.c 		edt_ft5x06_register_write(tsdata, reg_addr->reg_threshold, val);
tsdata            927 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->threshold = val;
tsdata            932 drivers/input/touchscreen/edt-ft5x06.c 		edt_ft5x06_register_write(tsdata, reg_addr->reg_gain, val);
tsdata            933 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->gain = val;
tsdata            938 drivers/input/touchscreen/edt-ft5x06.c 		edt_ft5x06_register_write(tsdata, reg_addr->reg_offset, val);
tsdata            939 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->offset = val;
tsdata            944 drivers/input/touchscreen/edt-ft5x06.c 		edt_ft5x06_register_write(tsdata, reg_addr->reg_offset_x, val);
tsdata            945 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->offset_x = val;
tsdata            950 drivers/input/touchscreen/edt-ft5x06.c 		edt_ft5x06_register_write(tsdata, reg_addr->reg_offset_y, val);
tsdata            951 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->offset_y = val;
tsdata            956 drivers/input/touchscreen/edt-ft5x06.c edt_ft5x06_ts_get_parameters(struct edt_ft5x06_ts_data *tsdata)
tsdata            958 drivers/input/touchscreen/edt-ft5x06.c 	struct edt_reg_addr *reg_addr = &tsdata->reg_addr;
tsdata            960 drivers/input/touchscreen/edt-ft5x06.c 	tsdata->threshold = edt_ft5x06_register_read(tsdata,
tsdata            962 drivers/input/touchscreen/edt-ft5x06.c 	tsdata->gain = edt_ft5x06_register_read(tsdata, reg_addr->reg_gain);
tsdata            964 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->offset =
tsdata            965 drivers/input/touchscreen/edt-ft5x06.c 			edt_ft5x06_register_read(tsdata, reg_addr->reg_offset);
tsdata            967 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->offset_x = edt_ft5x06_register_read(tsdata,
tsdata            970 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->offset_y = edt_ft5x06_register_read(tsdata,
tsdata            973 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->report_rate = edt_ft5x06_register_read(tsdata,
tsdata            975 drivers/input/touchscreen/edt-ft5x06.c 	if (tsdata->version == EDT_M06 ||
tsdata            976 drivers/input/touchscreen/edt-ft5x06.c 	    tsdata->version == EDT_M09 ||
tsdata            977 drivers/input/touchscreen/edt-ft5x06.c 	    tsdata->version == EDT_M12) {
tsdata            978 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->num_x = edt_ft5x06_register_read(tsdata,
tsdata            980 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->num_y = edt_ft5x06_register_read(tsdata,
tsdata            983 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->num_x = -1;
tsdata            984 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->num_y = -1;
tsdata            989 drivers/input/touchscreen/edt-ft5x06.c edt_ft5x06_ts_set_regs(struct edt_ft5x06_ts_data *tsdata)
tsdata            991 drivers/input/touchscreen/edt-ft5x06.c 	struct edt_reg_addr *reg_addr = &tsdata->reg_addr;
tsdata            993 drivers/input/touchscreen/edt-ft5x06.c 	switch (tsdata->version) {
tsdata           1043 drivers/input/touchscreen/edt-ft5x06.c 	struct edt_ft5x06_ts_data *tsdata;
tsdata           1052 drivers/input/touchscreen/edt-ft5x06.c 	tsdata = devm_kzalloc(&client->dev, sizeof(*tsdata), GFP_KERNEL);
tsdata           1053 drivers/input/touchscreen/edt-ft5x06.c 	if (!tsdata) {
tsdata           1066 drivers/input/touchscreen/edt-ft5x06.c 	tsdata->max_support_points = chip_data->max_support_points;
tsdata           1068 drivers/input/touchscreen/edt-ft5x06.c 	tsdata->reset_gpio = devm_gpiod_get_optional(&client->dev,
tsdata           1070 drivers/input/touchscreen/edt-ft5x06.c 	if (IS_ERR(tsdata->reset_gpio)) {
tsdata           1071 drivers/input/touchscreen/edt-ft5x06.c 		error = PTR_ERR(tsdata->reset_gpio);
tsdata           1077 drivers/input/touchscreen/edt-ft5x06.c 	tsdata->wake_gpio = devm_gpiod_get_optional(&client->dev,
tsdata           1079 drivers/input/touchscreen/edt-ft5x06.c 	if (IS_ERR(tsdata->wake_gpio)) {
tsdata           1080 drivers/input/touchscreen/edt-ft5x06.c 		error = PTR_ERR(tsdata->wake_gpio);
tsdata           1086 drivers/input/touchscreen/edt-ft5x06.c 	if (tsdata->wake_gpio) {
tsdata           1088 drivers/input/touchscreen/edt-ft5x06.c 		gpiod_set_value_cansleep(tsdata->wake_gpio, 1);
tsdata           1091 drivers/input/touchscreen/edt-ft5x06.c 	if (tsdata->reset_gpio) {
tsdata           1093 drivers/input/touchscreen/edt-ft5x06.c 		gpiod_set_value_cansleep(tsdata->reset_gpio, 0);
tsdata           1103 drivers/input/touchscreen/edt-ft5x06.c 	mutex_init(&tsdata->mutex);
tsdata           1104 drivers/input/touchscreen/edt-ft5x06.c 	tsdata->client = client;
tsdata           1105 drivers/input/touchscreen/edt-ft5x06.c 	tsdata->input = input;
tsdata           1106 drivers/input/touchscreen/edt-ft5x06.c 	tsdata->factory_mode = false;
tsdata           1108 drivers/input/touchscreen/edt-ft5x06.c 	error = edt_ft5x06_ts_identify(client, tsdata, fw_version);
tsdata           1118 drivers/input/touchscreen/edt-ft5x06.c 	edt_ft5x06_ts_readwrite(tsdata->client, 2, buf, 2, buf);
tsdata           1120 drivers/input/touchscreen/edt-ft5x06.c 	edt_ft5x06_ts_set_regs(tsdata);
tsdata           1121 drivers/input/touchscreen/edt-ft5x06.c 	edt_ft5x06_ts_get_defaults(&client->dev, tsdata);
tsdata           1122 drivers/input/touchscreen/edt-ft5x06.c 	edt_ft5x06_ts_get_parameters(tsdata);
tsdata           1126 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->name, fw_version, tsdata->num_x, tsdata->num_y);
tsdata           1128 drivers/input/touchscreen/edt-ft5x06.c 	input->name = tsdata->name;
tsdata           1132 drivers/input/touchscreen/edt-ft5x06.c 	if (tsdata->version == EDT_M06 ||
tsdata           1133 drivers/input/touchscreen/edt-ft5x06.c 	    tsdata->version == EDT_M09 ||
tsdata           1134 drivers/input/touchscreen/edt-ft5x06.c 	    tsdata->version == EDT_M12) {
tsdata           1136 drivers/input/touchscreen/edt-ft5x06.c 				     0, tsdata->num_x * 64 - 1, 0, 0);
tsdata           1138 drivers/input/touchscreen/edt-ft5x06.c 				     0, tsdata->num_y * 64 - 1, 0, 0);
tsdata           1147 drivers/input/touchscreen/edt-ft5x06.c 	touchscreen_parse_properties(input, true, &tsdata->prop);
tsdata           1149 drivers/input/touchscreen/edt-ft5x06.c 	error = input_mt_init_slots(input, tsdata->max_support_points,
tsdata           1156 drivers/input/touchscreen/edt-ft5x06.c 	i2c_set_clientdata(client, tsdata);
tsdata           1165 drivers/input/touchscreen/edt-ft5x06.c 					client->name, tsdata);
tsdata           1179 drivers/input/touchscreen/edt-ft5x06.c 	edt_ft5x06_ts_prepare_debugfs(tsdata, dev_driver_string(&client->dev));
tsdata           1185 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->wake_gpio ? desc_to_gpio(tsdata->wake_gpio) : -1,
tsdata           1186 drivers/input/touchscreen/edt-ft5x06.c 		tsdata->reset_gpio ? desc_to_gpio(tsdata->reset_gpio) : -1);
tsdata           1193 drivers/input/touchscreen/edt-ft5x06.c 	struct edt_ft5x06_ts_data *tsdata = i2c_get_clientdata(client);
tsdata           1195 drivers/input/touchscreen/edt-ft5x06.c 	edt_ft5x06_ts_teardown_debugfs(tsdata);
tsdata             43 drivers/input/touchscreen/pixcir_i2c_ts.c static void pixcir_ts_parse(struct pixcir_i2c_ts_data *tsdata,
tsdata             52 drivers/input/touchscreen/pixcir_i2c_ts.c 	const struct pixcir_i2c_chip_data *chip = tsdata->chip;
tsdata             57 drivers/input/touchscreen/pixcir_i2c_ts.c 	readsize = 2 + tsdata->max_fingers * (4 + i);
tsdata             61 drivers/input/touchscreen/pixcir_i2c_ts.c 	ret = i2c_master_send(tsdata->client, wrbuf, sizeof(wrbuf));
tsdata             63 drivers/input/touchscreen/pixcir_i2c_ts.c 		dev_err(&tsdata->client->dev,
tsdata             69 drivers/input/touchscreen/pixcir_i2c_ts.c 	ret = i2c_master_recv(tsdata->client, rdbuf, readsize);
tsdata             71 drivers/input/touchscreen/pixcir_i2c_ts.c 		dev_err(&tsdata->client->dev,
tsdata             78 drivers/input/touchscreen/pixcir_i2c_ts.c 	if (touch > tsdata->max_fingers)
tsdata             79 drivers/input/touchscreen/pixcir_i2c_ts.c 		touch = tsdata->max_fingers;
tsdata             85 drivers/input/touchscreen/pixcir_i2c_ts.c 		touchscreen_set_mt_pos(&report->pos[i], &tsdata->prop,
tsdata            143 drivers/input/touchscreen/pixcir_i2c_ts.c 	struct pixcir_i2c_ts_data *tsdata = dev_id;
tsdata            146 drivers/input/touchscreen/pixcir_i2c_ts.c 	while (tsdata->running) {
tsdata            148 drivers/input/touchscreen/pixcir_i2c_ts.c 		pixcir_ts_parse(tsdata, &report);
tsdata            151 drivers/input/touchscreen/pixcir_i2c_ts.c 		pixcir_ts_report(tsdata, &report);
tsdata            153 drivers/input/touchscreen/pixcir_i2c_ts.c 		if (gpiod_get_value_cansleep(tsdata->gpio_attb)) {
tsdata            159 drivers/input/touchscreen/pixcir_i2c_ts.c 				input_mt_sync_frame(tsdata->input);
tsdata            160 drivers/input/touchscreen/pixcir_i2c_ts.c 				input_sync(tsdata->input);
tsdata            171 drivers/input/touchscreen/pixcir_i2c_ts.c static void pixcir_reset(struct pixcir_i2c_ts_data *tsdata)
tsdata            173 drivers/input/touchscreen/pixcir_i2c_ts.c 	if (!IS_ERR_OR_NULL(tsdata->gpio_reset)) {
tsdata            174 drivers/input/touchscreen/pixcir_i2c_ts.c 		gpiod_set_value_cansleep(tsdata->gpio_reset, 1);
tsdata            176 drivers/input/touchscreen/pixcir_i2c_ts.c 		gpiod_set_value_cansleep(tsdata->gpio_reset, 0);
tsdata            419 drivers/input/touchscreen/pixcir_i2c_ts.c 			   struct pixcir_i2c_ts_data *tsdata)
tsdata            421 drivers/input/touchscreen/pixcir_i2c_ts.c 	tsdata->chip = of_device_get_match_data(dev);
tsdata            422 drivers/input/touchscreen/pixcir_i2c_ts.c 	if (!tsdata->chip)
tsdata            429 drivers/input/touchscreen/pixcir_i2c_ts.c 			   struct pixcir_i2c_ts_data *tsdata)
tsdata            441 drivers/input/touchscreen/pixcir_i2c_ts.c 	struct pixcir_i2c_ts_data *tsdata;
tsdata            445 drivers/input/touchscreen/pixcir_i2c_ts.c 	tsdata = devm_kzalloc(dev, sizeof(*tsdata), GFP_KERNEL);
tsdata            446 drivers/input/touchscreen/pixcir_i2c_ts.c 	if (!tsdata)
tsdata            450 drivers/input/touchscreen/pixcir_i2c_ts.c 		tsdata->chip = &pdata->chip;
tsdata            452 drivers/input/touchscreen/pixcir_i2c_ts.c 		error = pixcir_parse_dt(dev, tsdata);
tsdata            460 drivers/input/touchscreen/pixcir_i2c_ts.c 	if (!tsdata->chip->max_fingers) {
tsdata            471 drivers/input/touchscreen/pixcir_i2c_ts.c 	tsdata->client = client;
tsdata            472 drivers/input/touchscreen/pixcir_i2c_ts.c 	tsdata->input = input;
tsdata            486 drivers/input/touchscreen/pixcir_i2c_ts.c 		touchscreen_parse_properties(input, true, &tsdata->prop);
tsdata            494 drivers/input/touchscreen/pixcir_i2c_ts.c 	tsdata->max_fingers = tsdata->chip->max_fingers;
tsdata            495 drivers/input/touchscreen/pixcir_i2c_ts.c 	if (tsdata->max_fingers > PIXCIR_MAX_SLOTS) {
tsdata            496 drivers/input/touchscreen/pixcir_i2c_ts.c 		tsdata->max_fingers = PIXCIR_MAX_SLOTS;
tsdata            498 drivers/input/touchscreen/pixcir_i2c_ts.c 			 tsdata->max_fingers);
tsdata            501 drivers/input/touchscreen/pixcir_i2c_ts.c 	error = input_mt_init_slots(input, tsdata->max_fingers,
tsdata            508 drivers/input/touchscreen/pixcir_i2c_ts.c 	input_set_drvdata(input, tsdata);
tsdata            510 drivers/input/touchscreen/pixcir_i2c_ts.c 	tsdata->gpio_attb = devm_gpiod_get(dev, "attb", GPIOD_IN);
tsdata            511 drivers/input/touchscreen/pixcir_i2c_ts.c 	if (IS_ERR(tsdata->gpio_attb)) {
tsdata            512 drivers/input/touchscreen/pixcir_i2c_ts.c 		error = PTR_ERR(tsdata->gpio_attb);
tsdata            517 drivers/input/touchscreen/pixcir_i2c_ts.c 	tsdata->gpio_reset = devm_gpiod_get_optional(dev, "reset",
tsdata            519 drivers/input/touchscreen/pixcir_i2c_ts.c 	if (IS_ERR(tsdata->gpio_reset)) {
tsdata            520 drivers/input/touchscreen/pixcir_i2c_ts.c 		error = PTR_ERR(tsdata->gpio_reset);
tsdata            525 drivers/input/touchscreen/pixcir_i2c_ts.c 	tsdata->gpio_wake = devm_gpiod_get_optional(dev, "wake",
tsdata            527 drivers/input/touchscreen/pixcir_i2c_ts.c 	if (IS_ERR(tsdata->gpio_wake)) {
tsdata            528 drivers/input/touchscreen/pixcir_i2c_ts.c 		error = PTR_ERR(tsdata->gpio_wake);
tsdata            534 drivers/input/touchscreen/pixcir_i2c_ts.c 	tsdata->gpio_enable = devm_gpiod_get_optional(dev, "enable",
tsdata            536 drivers/input/touchscreen/pixcir_i2c_ts.c 	if (IS_ERR(tsdata->gpio_enable)) {
tsdata            537 drivers/input/touchscreen/pixcir_i2c_ts.c 		error = PTR_ERR(tsdata->gpio_enable);
tsdata            543 drivers/input/touchscreen/pixcir_i2c_ts.c 	if (tsdata->gpio_enable)
tsdata            548 drivers/input/touchscreen/pixcir_i2c_ts.c 					  client->name, tsdata);
tsdata            554 drivers/input/touchscreen/pixcir_i2c_ts.c 	pixcir_reset(tsdata);
tsdata            557 drivers/input/touchscreen/pixcir_i2c_ts.c 	error = pixcir_set_power_mode(tsdata, PIXCIR_POWER_IDLE);
tsdata            564 drivers/input/touchscreen/pixcir_i2c_ts.c 	error = pixcir_stop(tsdata);
tsdata            572 drivers/input/touchscreen/pixcir_i2c_ts.c 	i2c_set_clientdata(client, tsdata);
tsdata            140 drivers/input/touchscreen/tsc200x-core.c 	struct tsc200x_data tsdata;
tsdata            144 drivers/input/touchscreen/tsc200x-core.c 	error = regmap_bulk_read(ts->regmap, TSC200X_REG_X, &tsdata,
tsdata            150 drivers/input/touchscreen/tsc200x-core.c 	if (unlikely(tsdata.x > MAX_12BIT || tsdata.y > MAX_12BIT))
tsdata            154 drivers/input/touchscreen/tsc200x-core.c 	if (unlikely(tsdata.z1 == 0 || tsdata.z2 > MAX_12BIT))
tsdata            156 drivers/input/touchscreen/tsc200x-core.c 	if (unlikely(tsdata.z1 >= tsdata.z2))
tsdata            164 drivers/input/touchscreen/tsc200x-core.c 	    ts->in_x == tsdata.x && ts->in_y == tsdata.y &&
tsdata            165 drivers/input/touchscreen/tsc200x-core.c 	    ts->in_z1 == tsdata.z1 && ts->in_z2 == tsdata.z2) {
tsdata            173 drivers/input/touchscreen/tsc200x-core.c 	ts->in_x = tsdata.x;
tsdata            174 drivers/input/touchscreen/tsc200x-core.c 	ts->in_y = tsdata.y;
tsdata            175 drivers/input/touchscreen/tsc200x-core.c 	ts->in_z1 = tsdata.z1;
tsdata            176 drivers/input/touchscreen/tsc200x-core.c 	ts->in_z2 = tsdata.z2;
tsdata            179 drivers/input/touchscreen/tsc200x-core.c 	pressure = tsdata.x * (tsdata.z2 - tsdata.z1) / tsdata.z1;
tsdata            186 drivers/input/touchscreen/tsc200x-core.c 	tsc200x_update_pen_state(ts, tsdata.x, tsdata.y, pressure);