/kernel/linux/linux-5.10/drivers/input/mouse/ |
H A D | focaltech.c | 54 #define FOC_TOUCH 0x3 /* bitmap of active fingers */ 56 #define FOC_REL 0x9 /* relative position of 1-2 fingers */ 90 * The touchpad tracks the positions of the fingers for us, 94 struct focaltech_finger_state fingers[FOC_MAX_FINGERS]; member 123 struct focaltech_finger_state *finger = &state->fingers[i]; in focaltech_report_state() 154 unsigned char fingers = packet[1]; in focaltech_process_touch_packet() local 159 /* the second byte contains a bitmap of all fingers touching the pad */ in focaltech_process_touch_packet() 161 state->fingers[i].active = fingers & 0x1; in focaltech_process_touch_packet() 162 if (!state->fingers[ in focaltech_process_touch_packet() [all...] |
H A D | appletouch.c | 334 int fact, int *z, int *fingers) in atp_calculate_abs() 348 *fingers = 0; in atp_calculate_abs() 357 * two fingers with no gap will be detected. Also, my in atp_calculate_abs() 372 (*fingers)++; in atp_calculate_abs() 379 if (*fingers < 1) /* No need to continue if no fingers are found. */ in atp_calculate_abs() 432 static inline void atp_report_fingers(struct input_dev *input, int fingers) in atp_report_fingers() argument 434 input_report_key(input, BTN_TOOL_FINGER, fingers == 1); in atp_report_fingers() 435 input_report_key(input, BTN_TOOL_DOUBLETAP, fingers == 2); in atp_report_fingers() 436 input_report_key(input, BTN_TOOL_TRIPLETAP, fingers > in atp_report_fingers() 333 atp_calculate_abs(struct atp *dev, int offset, int nb_sensors, int fact, int *z, int *fingers) atp_calculate_abs() argument 519 int key, fingers; atp_complete_geyser_1_2() local 659 int key, fingers; atp_complete_geyser_3_4() local [all...] |
H A D | elantech.c | 325 int fingers; in elantech_report_absolute_v1() local 332 fingers = ((packet[1] & 0x80) >> 7) + in elantech_report_absolute_v1() 339 fingers = (packet[0] & 0xc0) >> 6; in elantech_report_absolute_v1() 343 if (fingers != 1) { in elantech_report_absolute_v1() 353 input_report_key(dev, BTN_TOUCH, fingers != 0); in elantech_report_absolute_v1() 359 if (fingers) { in elantech_report_absolute_v1() 366 input_report_key(dev, BTN_TOOL_FINGER, fingers == 1); in elantech_report_absolute_v1() 367 input_report_key(dev, BTN_TOOL_DOUBLETAP, fingers == 2); in elantech_report_absolute_v1() 368 input_report_key(dev, BTN_TOOL_TRIPLETAP, fingers == 3); in elantech_report_absolute_v1() 394 /* x1 < x2 and y1 < y2 when two fingers, 413 unsigned int fingers, x1 = 0, y1 = 0, x2 = 0, y2 = 0; elantech_report_absolute_v2() local 564 unsigned int fingers = 0, x1 = 0, y1 = 0, x2 = 0, y2 = 0; elantech_report_absolute_v3() local 657 unsigned fingers; process_packet_status_v4() local [all...] |
H A D | alps.c | 359 int *fingers) in alps_get_bitmap_points() 371 (*fingers)++; in alps_get_bitmap_points() 384 * fingers detected. A return value of 0 means at least one of the 387 * The bitmaps don't have enough data to track fingers, so this function 395 int i, fingers_x = 0, fingers_y = 0, fingers, closest; in alps_process_bitmap() local 407 * Fingers can overlap, so we use the maximum count of fingers in alps_process_bitmap() 410 fingers = max(fingers_x, fingers_y); in alps_process_bitmap() 414 * adjacent fingers. Divide the single contact between the two points. in alps_process_bitmap() 499 return fingers; in alps_process_bitmap() 524 static void alps_report_semi_mt_data(struct psmouse *psmouse, int fingers) in alps_report_semi_mt_data() argument 356 alps_get_bitmap_points(unsigned int map, struct alps_bitmap_point *low, struct alps_bitmap_point *high, int *fingers) alps_get_bitmap_points() argument 731 int fingers = 0; alps_process_touchpad_packet_v3_v5() local 1016 int i, fingers = 0; alps_get_mt_count() local [all...] |
H A D | alps.h | 36 * SS4_PACKET_ID_TWO: There's two or more fingers on touchpad 37 * SS4_PACKET_ID_MULTI: There's three or more fingers on touchpad 151 * V7_PACKET_ID_TWO: There's one or two non-resting fingers on touchpad 153 * V7_PACKET_ID_MULTI: There are at least three non-resting fingers. 219 * @fingers: Number of fingers for MT. 235 unsigned int fingers; member
|
/kernel/linux/linux-6.6/drivers/input/mouse/ |
H A D | focaltech.c | 54 #define FOC_TOUCH 0x3 /* bitmap of active fingers */ 56 #define FOC_REL 0x9 /* relative position of 1-2 fingers */ 90 * The touchpad tracks the positions of the fingers for us, 94 struct focaltech_finger_state fingers[FOC_MAX_FINGERS]; member 123 struct focaltech_finger_state *finger = &state->fingers[i]; in focaltech_report_state() 154 unsigned char fingers = packet[1]; in focaltech_process_touch_packet() local 159 /* the second byte contains a bitmap of all fingers touching the pad */ in focaltech_process_touch_packet() 161 state->fingers[i].active = fingers & 0x1; in focaltech_process_touch_packet() 162 if (!state->fingers[ in focaltech_process_touch_packet() [all...] |
H A D | appletouch.c | 334 int fact, int *z, int *fingers) in atp_calculate_abs() 348 *fingers = 0; in atp_calculate_abs() 357 * two fingers with no gap will be detected. Also, my in atp_calculate_abs() 372 (*fingers)++; in atp_calculate_abs() 379 if (*fingers < 1) /* No need to continue if no fingers are found. */ in atp_calculate_abs() 432 static inline void atp_report_fingers(struct input_dev *input, int fingers) in atp_report_fingers() argument 434 input_report_key(input, BTN_TOOL_FINGER, fingers == 1); in atp_report_fingers() 435 input_report_key(input, BTN_TOOL_DOUBLETAP, fingers == 2); in atp_report_fingers() 436 input_report_key(input, BTN_TOOL_TRIPLETAP, fingers > in atp_report_fingers() 333 atp_calculate_abs(struct atp *dev, int offset, int nb_sensors, int fact, int *z, int *fingers) atp_calculate_abs() argument 519 int key, fingers; atp_complete_geyser_1_2() local 659 int key, fingers; atp_complete_geyser_3_4() local [all...] |
H A D | elantech.c | 325 int fingers; in elantech_report_absolute_v1() local 332 fingers = ((packet[1] & 0x80) >> 7) + in elantech_report_absolute_v1() 339 fingers = (packet[0] & 0xc0) >> 6; in elantech_report_absolute_v1() 343 if (fingers != 1) { in elantech_report_absolute_v1() 353 input_report_key(dev, BTN_TOUCH, fingers != 0); in elantech_report_absolute_v1() 359 if (fingers) { in elantech_report_absolute_v1() 366 input_report_key(dev, BTN_TOOL_FINGER, fingers == 1); in elantech_report_absolute_v1() 367 input_report_key(dev, BTN_TOOL_DOUBLETAP, fingers == 2); in elantech_report_absolute_v1() 368 input_report_key(dev, BTN_TOOL_TRIPLETAP, fingers == 3); in elantech_report_absolute_v1() 394 /* x1 < x2 and y1 < y2 when two fingers, 413 unsigned int fingers, x1 = 0, y1 = 0, x2 = 0, y2 = 0; elantech_report_absolute_v2() local 564 unsigned int fingers = 0, x1 = 0, y1 = 0, x2 = 0, y2 = 0; elantech_report_absolute_v3() local 657 unsigned fingers; process_packet_status_v4() local [all...] |
H A D | alps.c | 359 int *fingers) in alps_get_bitmap_points() 371 (*fingers)++; in alps_get_bitmap_points() 384 * fingers detected. A return value of 0 means at least one of the 387 * The bitmaps don't have enough data to track fingers, so this function 395 int i, fingers_x = 0, fingers_y = 0, fingers, closest; in alps_process_bitmap() local 407 * Fingers can overlap, so we use the maximum count of fingers in alps_process_bitmap() 410 fingers = max(fingers_x, fingers_y); in alps_process_bitmap() 414 * adjacent fingers. Divide the single contact between the two points. in alps_process_bitmap() 499 return fingers; in alps_process_bitmap() 524 static void alps_report_semi_mt_data(struct psmouse *psmouse, int fingers) in alps_report_semi_mt_data() argument 356 alps_get_bitmap_points(unsigned int map, struct alps_bitmap_point *low, struct alps_bitmap_point *high, int *fingers) alps_get_bitmap_points() argument 731 int fingers = 0; alps_process_touchpad_packet_v3_v5() local 1016 int i, fingers = 0; alps_get_mt_count() local [all...] |
H A D | alps.h | 36 * SS4_PACKET_ID_TWO: There's two or more fingers on touchpad 37 * SS4_PACKET_ID_MULTI: There's three or more fingers on touchpad 151 * V7_PACKET_ID_TWO: There's one or two non-resting fingers on touchpad 153 * V7_PACKET_ID_MULTI: There are at least three non-resting fingers. 219 * @fingers: Number of fingers for MT. 235 unsigned int fingers; member
|
/kernel/linux/linux-5.10/drivers/input/touchscreen/ |
H A D | auo-pixcir-ts.c | 178 int fingers = 0; in auo_pixcir_interrupt() local 219 if (fingers == 0) in auo_pixcir_interrupt() 225 fingers++; in auo_pixcir_interrupt() 229 input_report_key(ts->input, BTN_TOUCH, fingers > 0); in auo_pixcir_interrupt()
|
H A D | wdt87xx_i2c.c | 997 int i, fingers; in wdt87xx_ts_interrupt() local 1007 fingers = raw_buf[TOUCH_PK_V1_OFFSET_FNGR_NUM]; in wdt87xx_ts_interrupt() 1008 if (!fingers) in wdt87xx_ts_interrupt()
|
/kernel/linux/linux-6.6/drivers/input/touchscreen/ |
H A D | auo-pixcir-ts.c | 190 int fingers = 0; in auo_pixcir_interrupt() local 231 if (fingers == 0) in auo_pixcir_interrupt() 237 fingers++; in auo_pixcir_interrupt() 241 input_report_key(ts->input, BTN_TOUCH, fingers > 0); in auo_pixcir_interrupt()
|
H A D | wdt87xx_i2c.c | 997 int i, fingers; in wdt87xx_ts_interrupt() local 1007 fingers = raw_buf[TOUCH_PK_V1_OFFSET_FNGR_NUM]; in wdt87xx_ts_interrupt() 1008 if (!fingers) in wdt87xx_ts_interrupt()
|
/kernel/linux/linux-5.10/drivers/input/keyboard/ |
H A D | applespi.c | 149 * @multi: one finger: varies, more fingers: constant 152 * @crc16 field; unknown on all other fingers. 178 * @number_of_fingers: the number of fingers being reported in @fingers 181 * @fingers: the data for each finger 190 struct tp_finger fingers[]; member 316 * fingers pressed) the message is split over multiple packets (see the 1035 f = &t->fingers[i]; in report_tp_state() 1051 &applespi->pos[i], &t->fingers[i]); in report_tp_state() 1506 tp_len = struct_size(tp, fingers, t in applespi_got_data() [all...] |
/kernel/linux/linux-6.6/drivers/input/keyboard/ |
H A D | applespi.c | 149 * @multi: one finger: varies, more fingers: constant 152 * @crc16 field; unknown on all other fingers. 178 * @number_of_fingers: the number of fingers being reported in @fingers 181 * @fingers: the data for each finger 190 struct tp_finger fingers[]; member 325 * fingers pressed) the message is split over multiple packets (see the 1050 f = &t->fingers[i]; in report_tp_state() 1066 &applespi->pos[i], &t->fingers[i]); in report_tp_state() 1521 tp_len = struct_size(tp, fingers, t in applespi_got_data() [all...] |
/kernel/linux/linux-5.10/drivers/hid/ |
H A D | hid-logitech-hidpp.c | 1774 struct hidpp_touchpad_raw_xy_finger fingers[2]; member 1859 hidpp_touchpad_touch_event(&data[2], &raw_xy->fingers[0]); in hidpp_touchpad_raw_xy_event() 1860 hidpp_touchpad_touch_event(&data[9], &raw_xy->fingers[1]); in hidpp_touchpad_raw_xy_event() 2495 wtp_touch_event(hidpp, &(raw->fingers[i])); in wtp_send_raw_xy_event() 2516 .fingers = { in wtp_mouse_raw_xy_event()
|
/kernel/linux/linux-6.6/drivers/hid/ |
H A D | hid-logitech-hidpp.c | 2279 struct hidpp_touchpad_raw_xy_finger fingers[2]; member 2364 hidpp_touchpad_touch_event(&data[2], &raw_xy->fingers[0]); in hidpp_touchpad_raw_xy_event() 2365 hidpp_touchpad_touch_event(&data[9], &raw_xy->fingers[1]); in hidpp_touchpad_raw_xy_event() 3006 wtp_touch_event(hidpp, &(raw->fingers[i])); in wtp_send_raw_xy_event() 3027 .fingers = { in wtp_mouse_raw_xy_event()
|