eeti 44 drivers/input/touchscreen/eeti_ts.c static void eeti_ts_report_event(struct eeti_ts *eeti, u8 *buf) eeti 59 drivers/input/touchscreen/eeti_ts.c input_report_abs(eeti->input, ABS_PRESSURE, buf[5]); eeti 61 drivers/input/touchscreen/eeti_ts.c touchscreen_report_pos(eeti->input, &eeti->props, x, y, false); eeti 62 drivers/input/touchscreen/eeti_ts.c input_report_key(eeti->input, BTN_TOUCH, buf[0] & REPORT_BIT_PRESSED); eeti 63 drivers/input/touchscreen/eeti_ts.c input_sync(eeti->input); eeti 66 drivers/input/touchscreen/eeti_ts.c static int eeti_ts_read(struct eeti_ts *eeti) eeti 71 drivers/input/touchscreen/eeti_ts.c len = i2c_master_recv(eeti->client, buf, sizeof(buf)); eeti 74 drivers/input/touchscreen/eeti_ts.c dev_err(&eeti->client->dev, eeti 82 drivers/input/touchscreen/eeti_ts.c eeti_ts_report_event(eeti, buf); eeti 89 drivers/input/touchscreen/eeti_ts.c struct eeti_ts *eeti = dev_id; eeti 92 drivers/input/touchscreen/eeti_ts.c mutex_lock(&eeti->mutex); eeti 101 drivers/input/touchscreen/eeti_ts.c if (eeti->attn_gpio && eeti 102 drivers/input/touchscreen/eeti_ts.c !gpiod_get_value_cansleep(eeti->attn_gpio)) { eeti 106 drivers/input/touchscreen/eeti_ts.c error = eeti_ts_read(eeti); eeti 110 drivers/input/touchscreen/eeti_ts.c } while (eeti->running && eeti->attn_gpio); eeti 112 drivers/input/touchscreen/eeti_ts.c mutex_unlock(&eeti->mutex); eeti 116 drivers/input/touchscreen/eeti_ts.c static void eeti_ts_start(struct eeti_ts *eeti) eeti 118 drivers/input/touchscreen/eeti_ts.c mutex_lock(&eeti->mutex); eeti 120 drivers/input/touchscreen/eeti_ts.c eeti->running = true; eeti 121 drivers/input/touchscreen/eeti_ts.c enable_irq(eeti->client->irq); eeti 128 drivers/input/touchscreen/eeti_ts.c if (eeti->attn_gpio && gpiod_get_value_cansleep(eeti->attn_gpio)) eeti 129 drivers/input/touchscreen/eeti_ts.c eeti_ts_read(eeti); eeti 131 drivers/input/touchscreen/eeti_ts.c mutex_unlock(&eeti->mutex); eeti 134 drivers/input/touchscreen/eeti_ts.c static void eeti_ts_stop(struct eeti_ts *eeti) eeti 140 drivers/input/touchscreen/eeti_ts.c eeti->running = false; eeti 142 drivers/input/touchscreen/eeti_ts.c disable_irq(eeti->client->irq); eeti 147 drivers/input/touchscreen/eeti_ts.c struct eeti_ts *eeti = input_get_drvdata(dev); eeti 149 drivers/input/touchscreen/eeti_ts.c eeti_ts_start(eeti); eeti 156 drivers/input/touchscreen/eeti_ts.c struct eeti_ts *eeti = input_get_drvdata(dev); eeti 158 drivers/input/touchscreen/eeti_ts.c eeti_ts_stop(eeti); eeti 165 drivers/input/touchscreen/eeti_ts.c struct eeti_ts *eeti; eeti 176 drivers/input/touchscreen/eeti_ts.c eeti = devm_kzalloc(dev, sizeof(*eeti), GFP_KERNEL); eeti 177 drivers/input/touchscreen/eeti_ts.c if (!eeti) { eeti 182 drivers/input/touchscreen/eeti_ts.c mutex_init(&eeti->mutex); eeti 196 drivers/input/touchscreen/eeti_ts.c touchscreen_parse_properties(input, false, &eeti->props); eeti 203 drivers/input/touchscreen/eeti_ts.c eeti->client = client; eeti 204 drivers/input/touchscreen/eeti_ts.c eeti->input = input; eeti 206 drivers/input/touchscreen/eeti_ts.c eeti->attn_gpio = devm_gpiod_get_optional(dev, "attn", GPIOD_IN); eeti 207 drivers/input/touchscreen/eeti_ts.c if (IS_ERR(eeti->attn_gpio)) eeti 208 drivers/input/touchscreen/eeti_ts.c return PTR_ERR(eeti->attn_gpio); eeti 210 drivers/input/touchscreen/eeti_ts.c i2c_set_clientdata(client, eeti); eeti 211 drivers/input/touchscreen/eeti_ts.c input_set_drvdata(input, eeti); eeti 216 drivers/input/touchscreen/eeti_ts.c client->name, eeti); eeti 227 drivers/input/touchscreen/eeti_ts.c eeti_ts_stop(eeti); eeti 239 drivers/input/touchscreen/eeti_ts.c struct eeti_ts *eeti = i2c_get_clientdata(client); eeti 240 drivers/input/touchscreen/eeti_ts.c struct input_dev *input_dev = eeti->input; eeti 245 drivers/input/touchscreen/eeti_ts.c eeti_ts_stop(eeti); eeti 258 drivers/input/touchscreen/eeti_ts.c struct eeti_ts *eeti = i2c_get_clientdata(client); eeti 259 drivers/input/touchscreen/eeti_ts.c struct input_dev *input_dev = eeti->input; eeti 267 drivers/input/touchscreen/eeti_ts.c eeti_ts_start(eeti);