Lines Matching full:sensor
32 struct rmi_2d_sensor sensor; member
69 struct rmi_2d_sensor *sensor = &f12->sensor; in rmi_f12_read_sensor_tuning() local
70 struct rmi_function *fn = sensor->fn; in rmi_f12_read_sensor_tuning()
84 "F12 does not have the sensor tuning control register\n"); in rmi_f12_read_sensor_tuning()
104 sensor->max_x = (buf[offset + 1] << 8) | buf[offset]; in rmi_f12_read_sensor_tuning()
105 sensor->max_y = (buf[offset + 3] << 8) | buf[offset + 2]; in rmi_f12_read_sensor_tuning()
110 sensor->max_x, sensor->max_y); in rmi_f12_read_sensor_tuning()
119 /* Units 1/128 sensor pitch */ in rmi_f12_read_sensor_tuning()
140 sensor->x_mm = (pitch_x * rx_receivers) >> 12; in rmi_f12_read_sensor_tuning()
141 sensor->y_mm = (pitch_y * tx_receivers) >> 12; in rmi_f12_read_sensor_tuning()
144 sensor->x_mm, sensor->y_mm); in rmi_f12_read_sensor_tuning()
152 struct rmi_2d_sensor *sensor = &f12->sensor; in rmi_f12_process_objects() local
159 struct rmi_2d_sensor_abs_object *obj = &sensor->objs[i]; in rmi_f12_process_objects()
187 rmi_2d_sensor_abs_process(sensor, obj, i); in rmi_f12_process_objects()
192 if (sensor->kernel_tracking) in rmi_f12_process_objects()
193 input_mt_assign_slots(sensor->input, in rmi_f12_process_objects()
194 sensor->tracking_slots, in rmi_f12_process_objects()
195 sensor->tracking_pos, in rmi_f12_process_objects()
196 sensor->nbr_fingers, in rmi_f12_process_objects()
197 sensor->dmax); in rmi_f12_process_objects()
200 rmi_2d_sensor_abs_report(sensor, &sensor->objs[i], i); in rmi_f12_process_objects()
210 struct rmi_2d_sensor *sensor = &f12->sensor; in rmi_f12_attention() local
211 int valid_bytes = sensor->pkt_size; in rmi_f12_attention()
214 if (sensor->attn_size > drvdata->attn_data.size) in rmi_f12_attention()
217 valid_bytes = sensor->attn_size; in rmi_f12_attention()
218 memcpy(sensor->data_pkt, drvdata->attn_data.data, in rmi_f12_attention()
224 sensor->data_pkt, sensor->pkt_size); in rmi_f12_attention()
234 &sensor->data_pkt[f12->data1_offset], valid_bytes); in rmi_f12_attention()
236 input_mt_sync_frame(sensor->input); in rmi_f12_attention()
253 && (f12->sensor.dribble != RMI_REG_STATE_DEFAULT)) { in rmi_f12_write_control_regs()
275 switch (f12->sensor.dribble) { in rmi_f12_write_control_regs()
303 struct rmi_2d_sensor *sensor; in rmi_f12_config() local
306 sensor = &f12->sensor; in rmi_f12_config()
308 if (!sensor->report_abs) in rmi_f12_config()
331 struct rmi_2d_sensor *sensor; in rmi_f12_probe() local
408 sensor = &f12->sensor; in rmi_f12_probe()
409 sensor->fn = fn; in rmi_f12_probe()
411 sensor->pkt_size = rmi_register_desc_calc_size(&f12->data_reg_desc); in rmi_f12_probe()
413 sensor->axis_align = in rmi_f12_probe()
416 sensor->x_mm = f12->sensor_pdata.x_mm; in rmi_f12_probe()
417 sensor->y_mm = f12->sensor_pdata.y_mm; in rmi_f12_probe()
418 sensor->dribble = f12->sensor_pdata.dribble; in rmi_f12_probe()
420 if (sensor->sensor_type == rmi_sensor_default) in rmi_f12_probe()
421 sensor->sensor_type = in rmi_f12_probe()
425 sensor->pkt_size); in rmi_f12_probe()
426 sensor->data_pkt = devm_kzalloc(&fn->dev, sensor->pkt_size, GFP_KERNEL); in rmi_f12_probe()
427 if (!sensor->data_pkt) in rmi_f12_probe()
452 sensor->nbr_fingers = item->num_subpackets; in rmi_f12_probe()
453 sensor->report_abs = 1; in rmi_f12_probe()
454 sensor->attn_size += item->reg_size; in rmi_f12_probe()
474 sensor->attn_size += item->reg_size; in rmi_f12_probe()
497 if (!sensor->report_abs) in rmi_f12_probe()
498 sensor->report_rel = 1; in rmi_f12_probe()
529 sensor->tracking_pos = devm_kcalloc(&fn->dev, in rmi_f12_probe()
530 sensor->nbr_fingers, sizeof(struct input_mt_pos), in rmi_f12_probe()
532 sensor->tracking_slots = devm_kcalloc(&fn->dev, in rmi_f12_probe()
533 sensor->nbr_fingers, sizeof(int), GFP_KERNEL); in rmi_f12_probe()
534 sensor->objs = devm_kcalloc(&fn->dev, in rmi_f12_probe()
535 sensor->nbr_fingers, in rmi_f12_probe()
538 if (!sensor->tracking_pos || !sensor->tracking_slots || !sensor->objs) in rmi_f12_probe()
541 ret = rmi_2d_sensor_configure_input(fn, sensor); in rmi_f12_probe()