| /kernel/linux/linux-6.6/drivers/input/mouse/ |
| 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[i].active) { in focaltech_process_touch_packet() 167 state->fingers[i].valid = false; in focaltech_process_touch_packet() [all …]
|
| D | appletouch.c | 334 int fact, int *z, int *fingers) in atp_calculate_abs() argument 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 > 2); in atp_report_fingers() 519 int key, fingers; in atp_complete_geyser_1_2() local [all …]
|
| 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, x = y = 0 when not pressed */ [all …]
|
| 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
|
| D | alps.c | 359 int *fingers) in alps_get_bitmap_points() argument 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 [all …]
|
| /kernel/linux/linux-5.10/drivers/input/mouse/ |
| 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[i].active) { in focaltech_process_touch_packet() 167 state->fingers[i].valid = false; in focaltech_process_touch_packet() [all …]
|
| D | appletouch.c | 334 int fact, int *z, int *fingers) in atp_calculate_abs() argument 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 > 2); in atp_report_fingers() 519 int key, fingers; in atp_complete_geyser_1_2() local [all …]
|
| 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, x = y = 0 when not pressed */ [all …]
|
| 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
|
| D | alps.c | 359 int *fingers) in alps_get_bitmap_points() argument 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 [all …]
|
| /kernel/linux/linux-6.6/drivers/platform/x86/ |
| D | touchscreen_dmi.c | 34 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 49 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 79 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 95 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 123 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 139 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 171 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 201 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 227 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 255 PROPERTY_ENTRY_U32("silead,max-fingers", 10), [all …]
|
| /kernel/linux/linux-5.10/drivers/platform/x86/ |
| D | touchscreen_dmi.c | 48 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 64 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 92 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 108 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 134 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 161 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 187 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 215 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 231 PROPERTY_ENTRY_U32("silead,max-fingers", 10), 249 PROPERTY_ENTRY_U32("silead,max-fingers", 10), [all …]
|
| /kernel/linux/linux-6.6/Documentation/input/devices/ |
| D | elantech.rst | 53 per packet, and provides additional features such as position of two fingers, 55 for 2 fingers the concatenation of two 6 bytes packets) and allows tracking 56 of up to 3 fingers. Hardware version 4 uses 6 bytes per packet, and can 58 4 allows tracking up to 5 fingers. 280 n1..n0 = number of fingers on touchpad 302 This counting is reset whenever a different number of fingers is reported. 322 n1..n0 = number of fingers on touchpad 434 n1..n0 = number of fingers on touchpad 453 n4 = set if more than 3 fingers (only in 3 fingers mode) 486 two fingers, but only the pair of the lower-left and upper-right coordinates. [all …]
|
| D | alps.rst | 100 For protocol version 2 devices when the trackpoint is used, and no fingers 322 Clickpads: When > 2 fingers are down, and some fingers 324 are for fingers outside the button area and these report 325 extra fingers being present in the right / left button 326 area. Note these fingers are not added to the F field! 328 3 fingers down, etc. 333 F: Number of fingers - 3, 0 means 3 fingers, 1 means 4 ...
|
| D | ntrig.rst | 30 |activate_slack |number of fingers to ignore before processing events | 35 |min_height, |size threshold below which fingers are ignored | 97 Time is measured in terms of the number of fingers reported, not frames since 136 As of yet, all tested N-Trig firmwares do not track fingers. When multiple
|
| D | sentelic.rst | 165 When both fingers are up, the last two reports have zero valid 190 When both fingers are up, the last two reports have zero valid 224 Bit5~Bit4 => Number of fingers 257 When both fingers are up, the last two reports have zero valid 284 When both fingers are up, the last two reports have zero valid 321 Bit5~Bit4 => Number of fingers 401 When one of the two fingers is up, the device will output four consecutive 404 the 2nd finger is up. On the other hand, if both fingers are up, the device 696 Unlike other devices which sends multiple fingers' coordinates to host, 697 FSP processes multiple fingers' coordinates internally and convert them [all …]
|
| /kernel/linux/linux-5.10/Documentation/input/devices/ |
| D | elantech.rst | 53 per packet, and provides additional features such as position of two fingers, 55 for 2 fingers the concatenation of two 6 bytes packets) and allows tracking 56 of up to 3 fingers. Hardware version 4 uses 6 bytes per packet, and can 58 4 allows tracking up to 5 fingers. 280 n1..n0 = number of fingers on touchpad 302 This counting is reset whenever a different number of fingers is reported. 322 n1..n0 = number of fingers on touchpad 434 n1..n0 = number of fingers on touchpad 453 n4 = set if more than 3 fingers (only in 3 fingers mode) 486 two fingers, but only the pair of the lower-left and upper-right coordinates. [all …]
|
| D | alps.rst | 100 For protocol version 2 devices when the trackpoint is used, and no fingers 322 Clickpads: When > 2 fingers are down, and some fingers 324 are for fingers outside the button area and these report 325 extra fingers being present in the right / left button 326 area. Note these fingers are not added to the F field! 328 3 fingers down, etc. 333 F: Number of fingers - 3, 0 means 3 fingers, 1 means 4 ...
|
| D | ntrig.rst | 30 |activate_slack |number of fingers to ignore before processing events | 35 |min_height, |size threshold bellow which fingers are ignored | 97 Time is measured in terms of the number of fingers reported, not frames since 136 As of yet, all tested N-Trig firmwares do not track fingers. When multiple
|
| D | sentelic.rst | 165 When both fingers are up, the last two reports have zero valid 190 When both fingers are up, the last two reports have zero valid 224 Bit5~Bit4 => Number of fingers 257 When both fingers are up, the last two reports have zero valid 284 When both fingers are up, the last two reports have zero valid 321 Bit5~Bit4 => Number of fingers 401 When one of the two fingers is up, the device will output four consecutive 404 the 2nd finger is up. On the other hand, if both fingers are up, the device 696 Unlike other devices which sends multiple fingers' coordinates to host, 697 FSP processes multiple fingers' coordinates internally and convert them [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/input/touchscreen/ |
| D | silead_gsl1680.txt | 23 - silead,max-fingers : maximum number of fingers the touchscreen can detect 42 silead,max-fingers = <5>;
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/input/touchscreen/ |
| D | silead,gsl1680.yaml | 38 silead,max-fingers: 42 Maximum number of fingers the touchscreen can detect 87 silead,max-fingers = <5>;
|
| /kernel/linux/linux-6.6/drivers/input/rmi4/ |
| D | rmi_2d_sensor.h | 33 * @nbr_fingers - How many fingers can this sensor report? 37 * position when two fingers are on the device. When this is true, we
|
| /kernel/linux/linux-5.10/drivers/input/rmi4/ |
| D | rmi_2d_sensor.h | 33 * @nbr_fingers - How many fingers can this sensor report? 37 * position when two fingers are on the device. When this is true, we
|
| /kernel/linux/linux-5.10/drivers/input/keyboard/ |
| 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, tp->number_of_fingers); in applespi_got_data() 1510 "Received corrupted packet (invalid message length %u - num-fingers %u, tp-len %zu)\n", in applespi_got_data() [all …]
|