/linux-4.4.14/drivers/input/mouse/ |
H A D | focaltech.c | 65 #define FOC_ABS 0x6 /* absolute position of one finger */ 71 * Current state of a single finger on the touchpad. 74 /* The touchpad has generated a touch event for the finger */ 78 * The touchpad has sent position data for the finger. The 79 * flag is 0 when the finger is not active, and there is a 80 * time between the first touch event for the finger and the 81 * following absolute position packet for the finger where the 82 * touchpad has declared the finger to be valid, but we do not 89 * finger. 101 * the array indices correspond to the finger indices returned 108 * 15 value stays until the finger is released. 110 * Since hardware reports width only for last touching finger, 111 * there is no need to store width for every specific finger, 133 struct focaltech_finger_state *finger = &state->fingers[i]; focaltech_report_state() local 134 bool active = finger->active && finger->valid; focaltech_report_state() 145 clamped_x = clamp(finger->x, 0U, priv->x_max); focaltech_report_state() 146 clamped_y = clamp(finger->y, 0U, priv->y_max); focaltech_report_state() 174 * Even when the finger becomes active again, we still focaltech_process_touch_packet() 188 unsigned int finger; focaltech_process_abs_packet() local 190 finger = (packet[1] >> 4) - 1; focaltech_process_abs_packet() 191 if (finger >= FOC_MAX_FINGERS) { focaltech_process_abs_packet() 192 psmouse_err(psmouse, "Invalid finger in abs packet: %d\n", focaltech_process_abs_packet() 193 finger); focaltech_process_abs_packet() 199 state->fingers[finger].x = ((packet[1] & 0xf) << 8) | packet[2]; focaltech_process_abs_packet() 200 state->fingers[finger].y = (packet[3] << 8) | packet[4]; focaltech_process_abs_packet() 202 state->fingers[finger].valid = true; focaltech_process_abs_packet() 218 psmouse_err(psmouse, "First finger in rel packet invalid: %d\n", focaltech_process_rel_packet() 224 * packet only contains one finger. In this case, the second focaltech_process_rel_packet() 225 * finger index in the packet is 0 (we subtract 1 in the lines focaltech_process_rel_packet() 226 * above to create array indices, so the finger will overflow focaltech_process_rel_packet()
|
H A D | bcm5974.c | 196 /* trackpad finger data offsets, le16-aligned */ 211 /* trackpad finger data block size */ 217 /* offset from header to finger struct */ 233 /* trackpad finger structure, le16-aligned */ 235 __le16 origin; /* zero when switching track finger */ 247 __le16 multi; /* one finger: varies, more fingers: constant */ 250 /* trackpad finger data size, empirically at least ten fingers */ 272 int tp_fsize; /* bytes in single finger block */ 273 int tp_delta; /* offset from header to finger struct */ 280 struct bcm5974_param p; /* finger pressure limits */ 281 struct bcm5974_param w; /* finger width limits */ 300 const struct tp_finger *index[MAX_FINGERS]; /* finger index data */ 305 /* trackpad finger block data, le16-aligned */ get_tp_finger() 539 /* finger touch area */ setup_events_to_report() 542 /* finger approach area */ setup_events_to_report() 545 /* finger orientation */ setup_events_to_report() 547 /* finger position */ setup_events_to_report()
|
H A D | navpoint.c | 84 int finger; navpoint_packet() local 94 finger = (navpoint->data[1] & 0x01); navpoint_packet() 99 input_report_key(navpoint->input, BTN_TOUCH, finger); navpoint_packet() 103 input_report_key(navpoint->input, BTN_TOOL_FINGER, finger); navpoint_packet()
|
H A D | alps.h | 35 * SS4_PACKET_ID_IDLE: There's no finger and no button activity. 36 * SS4_PACKET_ID_ONE: There's one finger on touchpad 110 * V7_PACKET_ID_IDLE: There's no finger and no button activity. 114 * V7_PACKET_ID_NEW: The finger position in slot is not continues from
|
H A D | elantech.h | 110 * The base position for one finger, v4 hardware
|
H A D | sentelic.h | 119 unsigned int last_mt_fgr; /* Last seen finger(multitouch) */
|
H A D | synaptics.h | 70 * 1 0x60 multifinger mode identifies firmware finger counting 193 unsigned int agm_count; /* finger count reported by agm */
|
H A D | synaptics.c | 58 * uses this value to indicate a finger near the edge of the touchpad 511 /* Advanced gesture mode also sends multi finger data */ synaptics_set_advanced_gesture_mode() 741 * finger on the touchpad, which interferes with synaptics_parse_hw_state() 742 * out multi-finger gestures. synaptics_parse_hw_state() 749 * Single-finger touch with pressure above synaptics_parse_hw_state() 753 * sending data even if finger does not synaptics_parse_hw_state() 806 * is used by some firmware to indicate a finger at the edge of synaptics_parse_hw_state() 964 * Update mt_state using the new finger count and current mt_state. synaptics_image_sensor_process() 1031 ; /* Nothing, treat a pen as a single finger */ synaptics_process_packet() 1205 /* Image sensors can signal 4 and 5 finger clicks */ set_input_params()
|
H A D | elantech.c | 263 /* Discard first 2 reports of one finger, bogus */ elantech_report_absolute_v1() 339 * Same as one finger, except report of more than 3 fingers: elantech_report_absolute_v2() 363 * The coordinate of each finger is reported separately elantech_report_absolute_v2() 364 * with a lower resolution for two finger touches: elantech_report_absolute_v2() 572 /* notify finger state change */ process_packet_status_v4() 721 * packets (1, 2, 3 finger touch) have the same constant bits. With elantech_packet_check_v2() 722 * older ones, 1/3 finger touch packets and 2 finger touch packets elantech_packet_check_v2() 1258 * The firmware reports how many trace lines the finger spans, elantech_set_input_params()
|
H A D | cypress_ps2.c | 383 /* finger position */ cypress_set_input_params() 434 /* HSCROLL gets added on to 0 finger count. */ cypress_get_finger_count() 574 /* call packet process for reporting finger leave. */ cypress_validate_byte()
|
H A D | synaptics_usb.c | 35 * setting 1: one int endpoint for absolute finger position 36 * setting 2 (cPad only): one int endpoint for absolute finger position and 145 case 2: /* pen, pretend its a finger */ synusb_report_touchpad()
|
H A D | cypress_ps2.h | 148 unsigned int tap:1; /* multi-finger tap detected. */
|
H A D | appletouch.c | 221 int fingers_old; /* last reported finger count */ 370 * Makes the finger detection more versatile. For example, atp_calculate_abs() 373 * of multiple finger readings while moving around (scrolling). atp_calculate_abs() 375 * Changes the multiple finger detection to counting humps on atp_calculate_abs() 378 * finger reading) to high sensors (finger above atp_calculate_abs()
|
H A D | sentelic.c | 730 * Ignore coordinate noise when finger leaving the fsp_process_byte() 749 /* 2nd finger */ fsp_process_byte() 754 * the 1st finger is up fsp_process_byte() 763 /* 1st finger */ fsp_process_byte() 768 * the 2nd finger is up fsp_process_byte() 787 /* no multi-finger information */ fsp_process_byte()
|
H A D | hgpk.c | 307 * pen/finger 381 * If this packet says that the finger was removed, reset our position hgpk_process_advanced_packet() 663 * XXX: If a finger is down during this delay, recalibration will hgpk_force_recalibrate() 676 * that a finger was on the touchpad. If so, it's probably hgpk_force_recalibrate()
|
H A D | cyapa_gen5.c | 143 * 0 : standard finger; 145 * 2 : finger hover (defined, but not used yet.) 159 * Bit 4 - 0: An arbitrary ID tag associated with a finger 178 * For standard finger type: 188 * the finger and the panel (ABS_MT_TOUCH_MAJOR). 194 * the finger and the panel (ABS_MT_TOUCH_MINOR). 2566 * these output data may caused by user put finger on cyapa_pip_irq_cmd_handler() 2584 * ready event. Because when there was a finger touch cyapa_pip_irq_cmd_handler() 2785 /* Invalid report data length for finger packet. */ cyapa_pip_irq_handler()
|
H A D | cyapa.h | 76 * bit 7 - 4: Number of touched finger
|
H A D | alps.c | 403 * on either axis as the finger count. alps_process_bitmap() 470 * We only select a corner for the second touch once per 2 finger alps_process_bitmap() 847 /* To prevent the cursor jump when finger lifted */ alps_process_packet_v6() 1040 * NEW packets are send to indicate a discontinuity in the finger alps_decode_packet_v7() 1041 * coordinate reporting. Specifically a finger may have moved from alps_decode_packet_v7() 1050 * the old finger count as that may mismatch with the amount of alps_decode_packet_v7()
|
H A D | elan_i2c_core.c | 816 * To avoid treating large finger as palm, let's reduce the elan_report_contact()
|
/linux-4.4.14/drivers/input/touchscreen/ |
H A D | st1232.c | 53 struct st1232_ts_finger finger[MAX_FINGERS]; member in struct:st1232_ts_data 60 struct st1232_ts_finger *finger = ts->finger; st1232_ts_read_data() local 84 finger[0].is_valid = buf[2] >> 7; st1232_ts_read_data() 85 finger[1].is_valid = buf[5] >> 7; st1232_ts_read_data() 88 if (finger[0].is_valid) { st1232_ts_read_data() 89 finger[0].x = ((buf[2] & 0x0070) << 4) | buf[3]; st1232_ts_read_data() 90 finger[0].y = ((buf[2] & 0x0007) << 8) | buf[4]; st1232_ts_read_data() 91 finger[0].t = buf[8]; st1232_ts_read_data() 94 if (finger[1].is_valid) { st1232_ts_read_data() 95 finger[1].x = ((buf[5] & 0x0070) << 4) | buf[6]; st1232_ts_read_data() 96 finger[1].y = ((buf[5] & 0x0007) << 8) | buf[7]; st1232_ts_read_data() 97 finger[1].t = buf[9]; st1232_ts_read_data() 106 struct st1232_ts_finger *finger = ts->finger; st1232_ts_irq_handler() local 117 if (!finger[i].is_valid) st1232_ts_irq_handler() 120 input_report_abs(input_dev, ABS_MT_TOUCH_MAJOR, finger[i].t); st1232_ts_irq_handler() 121 input_report_abs(input_dev, ABS_MT_POSITION_X, finger[i].x); st1232_ts_irq_handler() 122 input_report_abs(input_dev, ABS_MT_POSITION_Y, finger[i].y); st1232_ts_irq_handler()
|
H A D | ili210x.c | 20 struct finger { struct 29 struct finger finger[MAX_TOUCHES]; member in struct:touchdata 33 struct finger finger_max; 84 const struct finger *finger; ili210x_report_events() local 89 finger = &touchdata->finger[i]; ili210x_report_events() 94 x = finger->x_low | (finger->x_high << 8); ili210x_report_events() 95 y = finger->y_low | (finger->y_high << 8); ili210x_report_events()
|
H A D | chipone_icn8318.c | 36 __u8 pressure; /* Seems more like finger width then pressure really */ 39 #define ICN8318_EVENT_NO_DATA 1 /* No finger seen yet since wakeup */
|
H A D | zforce_ts.c | 247 static int zforce_scan_frequency(struct zforce_ts *ts, u16 idle, u16 finger, zforce_scan_frequency() argument 253 (finger & 0xff), ((finger >> 8) & 0xff), zforce_scan_frequency() 257 "set scan frequency to (idle: %d, finger: %d, stylus: %d)\n", zforce_scan_frequency() 258 idle, finger, stylus); zforce_scan_frequency()
|
H A D | wacom_w8001.c | 158 /* data[5,6] and [11,12] is finger capacity */ parse_multi_touch() 198 /* Early days' single-finger touch models need the following defaults */ parse_touchquery() 340 /* 2 finger touch packet */ w8001_interrupt()
|
H A D | ad7879.c | 195 * touch sequence, which may be incomplete if finger ad7879_report()
|
H A D | auo-pixcir-ts.c | 228 /* use first finger as source for singletouch */ auo_pixcir_interrupt()
|
H A D | pixcir_i2c_ts.c | 179 * Last report with no finger up? pixcir_ts_isr()
|
H A D | elants_i2c.c | 85 /* Header (4 bytes) plus 3 fill 10-finger packets */
|
H A D | sur40.c | 70 __le16 pos_x; /* finger tip position */
|
H A D | wdt87xx_i2c.c | 49 /* the finger definition of the report event */
|
/linux-4.4.14/drivers/staging/ste_rmi4/ |
H A D | synaptics_i2c_rmi4.c | 307 int finger; synpatics_rmi4_touchpad_report() local 324 /* get 2D sensor finger data */ synpatics_rmi4_touchpad_report() 326 * First get the finger status field - the size of the finger status synpatics_rmi4_touchpad_report() 327 * field is determined by the number of finger supporte - 2 bits per synpatics_rmi4_touchpad_report() 328 * finger, so the number of registers to read is: synpatics_rmi4_touchpad_report() 331 * determine if a finger is down: synpatics_rmi4_touchpad_report() 332 * 00 = finger not present, synpatics_rmi4_touchpad_report() 333 * 01 = finger present and data accurate, synpatics_rmi4_touchpad_report() 334 * 10 = finger present but data may not be accurate, synpatics_rmi4_touchpad_report() 347 * For each finger present, read the proper number of registers synpatics_rmi4_touchpad_report() 351 for (finger = 0; finger < fingers_supported; finger++) { synpatics_rmi4_touchpad_report() 352 /* determine which data byte the finger status is in */ synpatics_rmi4_touchpad_report() 353 reg = finger/4; synpatics_rmi4_touchpad_report() 354 /* bit shift to get finger's status */ synpatics_rmi4_touchpad_report() 355 finger_shift = (finger % 4) * 2; synpatics_rmi4_touchpad_report() 358 * if finger status indicates a finger is present then synpatics_rmi4_touchpad_report() 359 * read the finger data and report it synpatics_rmi4_touchpad_report() 361 input_mt_slot(input_dev, finger); synpatics_rmi4_touchpad_report() 366 /* Read the finger data */ synpatics_rmi4_touchpad_report() 368 ((finger * data_reg_blk_size) + synpatics_rmi4_touchpad_report() 582 /* Size of just the absolute data for one finger */ synpatics_rmi4_touchpad_detect() 612 * Size of all data including finger status, absolute data for each synpatics_rmi4_touchpad_detect() 613 * finger, relative data and EGR data synpatics_rmi4_touchpad_detect() 616 /* finger status, four fingers per register */ synpatics_rmi4_touchpad_detect() 618 /* absolute data, per finger times number of fingers */ synpatics_rmi4_touchpad_detect()
|
/linux-4.4.14/include/linux/platform_data/ |
H A D | pixcir_i2c_ts.h | 49 * @has_hw_ids: Hardware supports finger tracking IDs
|
/linux-4.4.14/net/netfilter/ |
H A D | xt_osf.c | 42 struct xt_osf_user_finger finger; member in struct:xt_osf_finger 84 memcpy(&kf->finger, f, sizeof(struct xt_osf_user_finger)); xt_osf_add_callback() 87 if (memcmp(&sf->finger, f, sizeof(struct xt_osf_user_finger))) xt_osf_add_callback() 121 if (memcmp(&sf->finger, f, sizeof(struct xt_osf_user_finger))) xt_osf_remove_callback() 230 f = &kf->finger; xt_osf_match_packet()
|
/linux-4.4.14/drivers/input/misc/ |
H A D | ideapad_slidebar.c | 38 * STD 'heartbeat' lights follow the finger 39 * ONMOV no lights lights follow the finger 40 * LAST at last pos lights follow the finger
|
H A D | ad714x.c | 650 * If only one finger is used to activate the touch pad then only 1 peak will be
|
/linux-4.4.14/include/linux/input/ |
H A D | mt.h | 22 #define INPUT_MT_SEMI_MT 0x0010 /* semi-mt device, finger count handled manually */
|
/linux-4.4.14/drivers/input/ |
H A D | input-mt.c | 28 * @dev: input device supporting MT events and finger tracking 186 * @use_count: report number of active contacts as finger count 189 * ABS_PRESSURE. Touchpad finger count is emulated if use_count is true.
|
/linux-4.4.14/drivers/hid/ |
H A D | hid-logitech-hidpp.c | 707 struct hidpp_touchpad_raw_xy_finger *finger) hidpp_touchpad_touch_event() 712 finger->x = x_m << 6 | data[1]; hidpp_touchpad_touch_event() 713 finger->y = y_m << 6 | data[3]; hidpp_touchpad_touch_event() 715 finger->contact_type = data[0] >> 6; hidpp_touchpad_touch_event() 716 finger->contact_status = data[2] >> 6; hidpp_touchpad_touch_event() 718 finger->z = data[4]; hidpp_touchpad_touch_event() 719 finger->area = data[5]; hidpp_touchpad_touch_event() 720 finger->finger_id = data[6] >> 4; hidpp_touchpad_touch_event() 706 hidpp_touchpad_touch_event(u8 *data, struct hidpp_touchpad_raw_xy_finger *finger) hidpp_touchpad_touch_event() argument
|
H A D | hid-ntrig.c | 454 * - dual pen/finger single touch 455 * - finger multitouch, pen not working 622 * report received in a finger event. We want ntrig_event() 628 * finger in single touch mode. ntrig_event() 672 * finger. ntrig_event() 723 * if there is a finger on the screen or ntrig_event()
|
H A D | wacom_sys.c | 195 bool finger = WACOM_FINGER_FIELD(field); wacom_usage_mapping() local 205 else if (finger) wacom_usage_mapping() 216 if (finger && !features->touch_max) wacom_usage_mapping() 223 if (finger) { wacom_usage_mapping() 234 if (finger) { wacom_usage_mapping()
|
H A D | hid-rmi.c | 90 * @max_fingers: maximum finger count reported by the device 423 "%s %s: Detected incomplete finger report. Finger reports may occasionally get dropped on this platform.\n", rmi_f11_input_event() 426 hid_dbg(hdev, "Incomplete finger report\n"); rmi_f11_input_event()
|
H A D | hid-multitouch.c | 80 bool inrange_state; /* is the finger in proximity of the sensor? */ 635 /* this finger is in proximity of the sensor */ mt_complete_slot()
|
/linux-4.4.14/drivers/pinctrl/ |
H A D | core.h | 134 * @name: a name for the pin, e.g. the name of the pin/pad/finger on a
|
H A D | pinctrl-u300.c | 172 * edges of the silicon, finger by finger. LTCORNER upper left is pad 0.
|
/linux-4.4.14/drivers/scsi/ |
H A D | dtc.c | 257 * reads. So better not enable them until I finger it out. */ dtc_detect()
|
/linux-4.4.14/fs/xfs/libxfs/ |
H A D | xfs_attr.c | 1154 * Tie a string around our finger to remind us where we are. xfs_attr_node_removename()
|