Lines Matching full:sensor
29 struct rmi_2d_sensor sensor; member
66 struct rmi_2d_sensor *sensor = &f12->sensor; in rmi_f12_read_sensor_tuning() local
67 struct rmi_function *fn = sensor->fn; in rmi_f12_read_sensor_tuning()
80 "F12 does not have the sensor tuning control register\n"); in rmi_f12_read_sensor_tuning()
100 sensor->max_x = (buf[offset + 1] << 8) | buf[offset]; in rmi_f12_read_sensor_tuning()
101 sensor->max_y = (buf[offset + 3] << 8) | buf[offset + 2]; in rmi_f12_read_sensor_tuning()
106 sensor->max_x, sensor->max_y); in rmi_f12_read_sensor_tuning()
115 /* Units 1/128 sensor pitch */ in rmi_f12_read_sensor_tuning()
131 /* Skip over sensor flags */ in rmi_f12_read_sensor_tuning()
135 sensor->x_mm = (pitch_x * rx_receivers) >> 12; in rmi_f12_read_sensor_tuning()
136 sensor->y_mm = (pitch_y * tx_receivers) >> 12; in rmi_f12_read_sensor_tuning()
139 sensor->x_mm, sensor->y_mm); in rmi_f12_read_sensor_tuning()
147 struct rmi_2d_sensor *sensor = &f12->sensor; in rmi_f12_process_objects() local
154 struct rmi_2d_sensor_abs_object *obj = &sensor->objs[i]; in rmi_f12_process_objects()
182 rmi_2d_sensor_abs_process(sensor, obj, i); in rmi_f12_process_objects()
187 if (sensor->kernel_tracking) in rmi_f12_process_objects()
188 input_mt_assign_slots(sensor->input, in rmi_f12_process_objects()
189 sensor->tracking_slots, in rmi_f12_process_objects()
190 sensor->tracking_pos, in rmi_f12_process_objects()
191 sensor->nbr_fingers, in rmi_f12_process_objects()
192 sensor->dmax); in rmi_f12_process_objects()
195 rmi_2d_sensor_abs_report(sensor, &sensor->objs[i], i); in rmi_f12_process_objects()
205 struct rmi_2d_sensor *sensor = &f12->sensor; in rmi_f12_attention() local
206 int valid_bytes = sensor->pkt_size; in rmi_f12_attention()
209 if (sensor->attn_size > drvdata->attn_data.size) in rmi_f12_attention()
212 valid_bytes = sensor->attn_size; in rmi_f12_attention()
213 memcpy(sensor->data_pkt, drvdata->attn_data.data, in rmi_f12_attention()
219 sensor->data_pkt, sensor->pkt_size); in rmi_f12_attention()
229 &sensor->data_pkt[f12->data1_offset], valid_bytes); in rmi_f12_attention()
231 input_mt_sync_frame(sensor->input); in rmi_f12_attention()
248 && (f12->sensor.dribble != RMI_REG_STATE_DEFAULT)) { in rmi_f12_write_control_regs()
270 switch (f12->sensor.dribble) { in rmi_f12_write_control_regs()
298 struct rmi_2d_sensor *sensor; in rmi_f12_config() local
301 sensor = &f12->sensor; in rmi_f12_config()
303 if (!sensor->report_abs) in rmi_f12_config()
326 struct rmi_2d_sensor *sensor; in rmi_f12_probe() local
403 sensor = &f12->sensor; in rmi_f12_probe()
404 sensor->fn = fn; in rmi_f12_probe()
406 sensor->pkt_size = rmi_register_desc_calc_size(&f12->data_reg_desc); in rmi_f12_probe()
408 sensor->axis_align = in rmi_f12_probe()
411 sensor->x_mm = f12->sensor_pdata.x_mm; in rmi_f12_probe()
412 sensor->y_mm = f12->sensor_pdata.y_mm; in rmi_f12_probe()
413 sensor->dribble = f12->sensor_pdata.dribble; in rmi_f12_probe()
415 if (sensor->sensor_type == rmi_sensor_default) in rmi_f12_probe()
416 sensor->sensor_type = in rmi_f12_probe()
420 sensor->pkt_size); in rmi_f12_probe()
421 sensor->data_pkt = devm_kzalloc(&fn->dev, sensor->pkt_size, GFP_KERNEL); in rmi_f12_probe()
422 if (!sensor->data_pkt) in rmi_f12_probe()
447 sensor->nbr_fingers = item->num_subpackets; in rmi_f12_probe()
448 sensor->report_abs = 1; in rmi_f12_probe()
449 sensor->attn_size += item->reg_size; in rmi_f12_probe()
469 sensor->attn_size += item->reg_size; in rmi_f12_probe()
492 if (!sensor->report_abs) in rmi_f12_probe()
493 sensor->report_rel = 1; in rmi_f12_probe()
524 sensor->tracking_pos = devm_kcalloc(&fn->dev, in rmi_f12_probe()
525 sensor->nbr_fingers, sizeof(struct input_mt_pos), in rmi_f12_probe()
527 sensor->tracking_slots = devm_kcalloc(&fn->dev, in rmi_f12_probe()
528 sensor->nbr_fingers, sizeof(int), GFP_KERNEL); in rmi_f12_probe()
529 sensor->objs = devm_kcalloc(&fn->dev, in rmi_f12_probe()
530 sensor->nbr_fingers, in rmi_f12_probe()
533 if (!sensor->tracking_pos || !sensor->tracking_slots || !sensor->objs) in rmi_f12_probe()
536 ret = rmi_2d_sensor_configure_input(fn, sensor); in rmi_f12_probe()